在‘CATEGORY_NAME’参数中输入变量

时间:2014-10-01 作者:minimographite

是否可以将变量用于\'category_name\' 参数

我有三页:红色、黄色和蓝色。我有多个帖子,分为三类:红色、黄色和蓝色。在红色页面上,我希望显示红色类别中帖子的信息;黄色和蓝色也是一样。

如果我用这些创建三个不同的页面模板,我可以很容易地做到这一点$args 在循环的开头:

$args = array(
    \'category_name\' => \'red\'
);  

$the_query = new WP_Query( $args );

\'category_name\' => \'yellow\'

\'category_name\' => \'blue\'
与其制作三个单独的页面模板,是否可以创建一个,其中\'category_name\' 参数设置为页面标题(因此“红色”页面将导致“红色”动态设置为\'category_name\' 参数)?

虽然这不起作用,但希望它能说明我正在尝试做什么:

$title = the_title()

$args = array(
    \'category_name\' => $title
);  
谢谢你花时间看这个!

1 个回复
最合适的回答,由SO网友:Robert hue 整理而成

是的,您可以传入变量category_name. 但我想应该是get_the_title() 而不是the_title().

$title = get_the_title();

$args = array(
    \'category_name\' => $title
);
试试这个。但请记住category_name 只接受类别slug,不接受类别名称。

如果页面标题/段标不同,也可以使用以下方法。我觉得这样更好。

if ( is_page( \'Page Name One\' ) ) {

    $cat_title = \'red\'; // should be category slug

} elseif ( is_page( \'Page Name Two\' ) ) {

    $cat_title = \'yellow\'; // should be category slug

} elseif ( is_page( \'Page Name Three\' ) ) {

    $cat_title = \'blue\'; // should be category slug

}

$args = array(
    \'category_name\' => $cat_title
);

结束

相关推荐

Split loop into columns

我正在尝试将循环拆分为4列。我的逻辑有很大的缺陷,我的布局也有问题。这么简单的问题,但我正在努力解决。我基本上需要将每组四根柱子包装在一个容器“行”分区中。当然,剩下的任何柱子,即使少于四根,也要进行包装。<div class=\"twelve columns\"> <?php $i = 0; if (have_posts() ) : while ( have_posts() ) : the_post();