是否可以基于meta_Query过滤器在Single.php中加载不同的侧边栏?

时间:2014-02-25 作者:hnnnng

我有一个自定义的帖子类型“演讲者”,我有一个复选框自定义字段(meta\\u查询),用于将我的会议演讲者与我的研讨会演讲者分开。

我可以用这个meta\\u查询过滤我的演讲者,一切正常。但是,如何根据会议或研讨会发言人meta\\u查询使用不同的侧栏?

当我单击扬声器查看其详细信息时(无论是会议还是研讨会扬声器),详细信息页面将加载我的单个扬声器。php和在我的单个扬声器中获取侧栏的代码。php是:

<?php get_sidebar(); ?>
如何指定不同的侧栏,例如get\\u侧栏(“workshop”)?我可以根据speakers meta\\u查询编写条件代码来加载不同的侧栏吗?这有意义吗?

谢谢

2 个回复
SO网友:Douglas Radburn

如果以变量$answer中的类型结束。。。

if($answer == "conference") {
    get_sidebar(\'conference\');
} else {
    get_sidebar(\'workshop\');
}
或者可能:

get_sidebar($answer);

SO网友:Steven Jones

首先,听起来你实际上可以通过使用分类法更好地区分你的说话人类型。

分类法用于将事物分组在一起,WordPress运行的查询,例如:获取会议发言人比使用元查询更快。

此外,您还可以使用分类法归档,这意味着编写条件更容易。

因此,对于这个示例,我有一个称为“speaker\\u type”的分类法。然后可以使用模板taxonomy-speaker_type.php 设置输出样式(这可能与用于后期归档的大致相同archive-speakers.php)

然后可以在侧栏中使用条件:

is_tax( \'speaker_type\', \'conference\' );
希望这有帮助。

结束

相关推荐