我注册了2种分类法:festival_year
和art_genre
. 我希望用户搜索特定年份和流派,但不确定最好的方法。我尝试了各种插件,但都没有成功。我可以创建单独的文件,比如taxonomy-art_genre-consumable-crafts.php
使用以下代码:
<?php
$festivalquery = wp_parse_args($query_string);
$festivalquery[\'tax_query\'] = array(
\'showposts\' => 10 ,
\'orderby\' => \'title\',
\'order\' => \'ASC\',
\'paged\' => $paged,
\'relation\' => \'AND\',
array(
\'taxonomy\' => \'festival_year\',
\'terms\' => array(\'2010-artists\'),
\'field\' => \'slug\',
),
array(
\'taxonomy\' => \'art_genre\',
\'terms\' => array(\'consumable-crafts\'),
\'field\' => \'slug\',
),
);
query_posts($festivalquery);
?>
这给了我一个我正在寻找的问题。然而,共有11种类型(当然会有多年的时间)。
与其创建单独的页面模板,实现这一点的最佳方法是什么?
试验地点:http://www.beta.cornhillartsfestival.com/artists/
非常感谢你!
SO网友:Jonathan Wold
首先,为了确保我理解一般前提,您是否想知道如何避免为每个流派和年份制作单独的模板?
例如,我单击一个链接来查看“消耗品工艺品”类型。它装载了所有的消耗品。
现在,如果您只想制作一个“流派”模板,例如“taxonomy-art\\u-genre.php”,那么您需要创建该文件,拉入查询并替换:
\'terms\' => array(\'consumable-crafts\'),
使用:
\'terms\' => get_query_var( \'term\' )
这将根据他们观看的术语加载术语,作为slug。因此
http://www.beta.cornhillartsfestival.com/art_genre/consumable-crafts/ 将加载taxonomy-art\\u流派。php和
get_query_var 将返回的是“消耗品工艺品”。
这有意义吗?
现在,您是否希望有一个页面显示特定年份的特定流派?这是一种不同的动物,但它也可以解决。
如果这是你想要的答案,请告诉我。