Echo Category In Loop

时间:2016-08-17 作者:Scarlet Soza

<?php
$args = array(
    \'post_type\' => \'product\',
    \'stock\' => 1,
    \'posts_per_page\' => 4,
    \'product_cat\' => \'<?php echo get_theme_mod(\'vatname\', \'Clothing\'); ?>\',
    \'orderby\' =>\'date\',
    \'order\' => \'ASC\'
);

$loop = new WP_Query( $args );

while ( $loop->have_posts() ) : $loop->the_post();
global $product;
?>

<p><?php the_title(); ?></p>

<?php endwhile; wp_reset_query(); ?>
我试图呼应产品类别名称。自定义循环工作正常,但当我回显函数时:

<?php echo get_theme_mod( \'vatname\', \'Clothing\' ); ?>
循环停止。有人能帮我吗?我正在尝试使用wordpress cutomization api在loopexamole\'product\\u cat\'=>“clothing”中输入类别名称,

所以我做了一个文本函数,我想把product\\u cat buy中的值生态化,我给sybtax错误

2 个回复
最合适的回答,由SO网友:Howdy_McGee 整理而成

功能get_theme_mod() 返回信息。由于您希望分配它,而不是将其回显到屏幕上,因此我们可以删除echo和PHP标记:

$args = array(
    \'post_type\'      => \'product\',
    \'stock\'          => 1,
    \'posts_per_page\' => 4,
    \'product_cat\'    => get_theme_mod( \'vatname\', \'Clothing\' ),
    \'orderby\'        =>\'date\',
    \'order\'          => \'ASC\'
);
这应该可以修复您的查询。现在,查询将返回帖子(本例中为产品),因此如果需要类别,则需要使用以下函数wp_get_post_terms() 它返回一组帖子(产品)类别。

<?php
    while ( $loop->have_posts() ) :
        $loop->the_post();
        global $product;
        $category_array = wp_get_post_terms( $post->ID, \'product_cat\' );
?>

        <p><?php the_title(); ?></p>
        <?php print_r( $category_array ); ?>

<?php
    endwhile;
wp_reset_query();
?>

SO网友:brandozz

product\\u cat arg的开始和结束php标记是否会终止该语句?这是否可行:

$clothing = get_theme_mod(\'vatname\', \'Clothing\');
$args = array(
    \'post_type\' => \'product\',
    \'stock\' => 1,
    \'posts_per_page\' => 4,
    \'product_cat\' => $clothing,
    \'orderby\' =>\'date\',
    \'order\' => \'ASC\'
);

相关推荐

按ASC或DESC对wp_Dropdown_Categories进行排序

我有一个在标题中搜索的网站(anunciaya.es)。我想按名称ASC/DESC订购wp\\U下拉列表\\U类别,但它不适合我。\'排序依据\'=>;\'“名称”和“顺序”=>;\'DESC不适合我。有什么解决方案吗?以下是PHP代码:wp_dropdown_categories( array( \'show_option_none\' => $cat_text, \'option_none_value\' => \'\', \'ta