0

これが私が得たコードです。

<?php
function category_image () {
    if (function_exists('z_taxonomy_image_url')) {
        foreach (get_the_category() as $cat) :
        ?>
            <a href="<?php echo get_category_link($cat->term_id); ?>" alt="<?php echo $cat->cat_name; ?>"><img src="<?php echo z_taxonomy_image_url($cat->term_id); ?>" /></a>
        <?
        endforeach;
    }
}
?>

したがって、 IF が空白になるようにしたいのでz_taxonomy_image_url、コードを実行しないでください。現在、機能があるため、画像の有無にかかわらず画像を表示しています。

助けてくれてありがとう!

4

4 に答える 4

2

if(!z_taxonomy_image_url($cat->term_id)) continue;エコーする前にコードにを追加するだけです。このようなもの:

<?php
function category_image () {
    if (function_exists('z_taxonomy_image_url')) {
        foreach (get_the_category() as $cat) :
        if(!z_taxonomy_image_url($cat->term_id)) continue;
        ?>
            <a href="<?php echo get_category_link($cat->term_id); ?>" alt="<?php echo $cat->cat_name; ?>"><img src="<?php echo z_taxonomy_image_url($cat->term_id); ?>" /></a>
        <?
        endforeach;
    }
}
?>
于 2012-08-16T20:01:42.153 に答える
1

関数が存在するかどうかを確認する必要があります。また、関数を適用しても空白の文字列が表示されない場合は、次のようになります。

<?php
function category_image () {
    if (function_exists('z_taxonomy_image_url') && trim(z_taxonomy_image_url($cat->term_id)) !="") {
        foreach (get_the_category() as $cat) :
        ?>
            <a href="<?php echo get_category_link($cat->term_id); ?>" alt="<?php echo $cat->cat_name; ?>"><img src="<?php echo z_taxonomy_image_url($cat->term_id); ?>" /></a>
        <?
        endforeach;
    }
}
?>
于 2012-08-16T19:40:50.197 に答える
1

これは、ここで誰かを助けるための私の最初の試みです。:-)関数"z_taxonomy_image_url()"が空の文字列を返すかどうかを確認したい場合は、ここで説明したように行うことができます。strlen()関数を使用して文字をカウントすることもできます。

お役に立てば幸いです。:-)

<?
function category_image () {
    if (z_taxonomy_image_url() = "") {
        $output '';
        foreach (get_the_category() as $cat){
            $ouput += '<a href="'.get_category_link($cat->term_id).'" alt="'.$cat->cat_name.'"><img src="'.z_taxonomy_image_url($cat->term_id).'" /></a>';
        }
        echo $output;
    }
}
?>
于 2012-08-16T19:49:55.580 に答える
0

関数が存在するかどうかを確認しているだけですが、関数が存在するかどうかを確認してからループを実行しますか、それとも実際に「z_taxonomy_image_url」関数を実行し、結果に応じて関数がループを開始しますか?

于 2012-08-16T19:39:06.337 に答える