bugfix> php > 投稿

Archive-product.phpに表示する製品カテゴリのエコーの画像にACF PRO get_fieldを追加するのに苦労しています

<?php
$orderby = 'name';
$order = 'asc';
$hide_empty = true ;
$cat_args = array(
'orderby'    => $orderby,
'order'      => $order,
'hide_empty' => $hide_empty,
);
$product_categories = get_terms( 'product_category', $cat_args );
if( !empty($product_categories) ){
echo '<div class="container">';
echo '<div class="row">';
foreach ($product_categories as $key => $category) {
    $image = get_field('product_category' . $term_id );
    echo '<div class="col-lg-4">';
    echo '<a href="'.get_term_link($category).'" >';
    echo $category->name;
    echo '<img src="' . $image['url'] . '" alt="' . $image['alt'] .'">';
    echo '</a>';
    echo '</div>';
}
echo '</div>';
echo '</div>';
}
else {
// no posts found
echo wpautop( 'Sorry, no posts were found' );
}
?>

誰もこれについて知っていますか?

おかげで、

ショーン。

回答 1 件
  • RE:カテゴリに画像がない場合、img srcのプレースホルダ画像はどのようになりますか?

    これは私のために働く:

    <?php
    $orderby = 'name';
    $order = 'asc';
    $hide_empty = true ;
    $cat_args = array(
    'orderby'    => $orderby,
    'order'      => $order,
    'hide_empty' => $hide_empty,
    );
    $product_categories = get_terms( 'product_category', $cat_args );
    if( !empty($product_categories) ){
        echo '<div class="container">';
        echo '<div class="row">';
        foreach ($product_categories as $key => $category) {
            echo '<div class="col-lg-4">';
            echo '<a href="'.get_term_link($category).'" >';
            echo $category->name;
            $image = get_field('product_category', $category );
            if($image) {
            echo '<img src="' . $image['url'] . '" alt="' . $image['alt'] .'">';
            } else {
                echo '<img src="/wp-content/uploads/2018/04/placeholder.png">';
            }
            echo '</a>';
            echo $category->description;
            echo '</div>';
        }
        echo '</div>';
        echo '</div>';
    }
    else {
        // no posts found
        echo wpautop( 'Sorry, no posts were found' );
    }
    ?>
    
    

あなたの答え