Wordpress - 如果声明在变量中

时间:2015-03-20 01:37:28

标签: php wordpress variables if-statement

我试图在帖子中显示3个随机类别。

我使用Advanced Custom Fieds插件来显示类别图片。 if语句是:

 if ( get_field( 'portada', 'category_' . $cats->term_id ) ) {
echo '<a class="cover margin-ultimos" href="' . get_category_link( $cats->term_id ) . '">';
    echo '<div id="cover-home" class="gray-shadow">';
        echo '<img src="'. get_field( 'portada', 'category_'.$cats->term_id ). '" alt="Portada'. get_cat_name ( $cats->term_id ) . '" />';
    echo '</div>';

并且,我试图使用wp_list_categories显示此内容,因此我在 functions.php 文件中添加了这一行:

 add_filter ( 'wp_list_categories', 'img_before_link_list_categories' );

function img_before_link_list_categories( $list ) {
  $cats = get_categories();
    foreach($cats as $cat) {

        $find = $cat->name.'</a>';
        $replace = '//Here the If Statement to show the image';
        $list = str_replace( $find, $replace, $list );

        $list = preg_replace('%<li class=".*">|</?ul>%U', '<h2>', $list);
        $list = str_replace('</li>', '</h2>', $list);
    }
 return $list;
}

如何在$replace变量中保存if语句?

1 个答案:

答案 0 :(得分:1)

$replace = '';
if( get_field( 'portada', 'category_' . $cats->term_id ) ) 
{
    $replace .= '<a class="cover margin-ultimos" href="' . get_category_link( $cats->term_id ) . '">';
    $replace .= '<div id="cover-home" class="gray-shadow">';
    $replace .= '<img src="'. get_field( 'portada', 'category_'.$cats->term_id ). '" alt="Portada'. get_cat_name ( $cats->term_id ) . '" />';
    $replace .= '</div>';
    $replace .= '</a>';
}