也许下次再为每个主题创建一个问题;)
1) Menu Item for Custom Post Type archive
我这里没有自动解决方案。但在我看来,应该可以在菜单管理页面中创建一个类似的小部件,以显示带有存档的所有PostType,并生成一个指向它的链接,您可以拖动该链接&;下拉至所需菜单。
2) Post Template for Custom Taxonomy
如果显示自定义分类法的术语,则默认
archive.php
使用模板。您可以使用一些条件语句来显示基于分类法或帖子类型的内容,例如。
if(is_tax(\'YOUR_TAX\') || is_post_type_archive(\'YOUR_POSTTYPE\'))
. 也可以使用
archive-{tax}.php
对于静态模板文件,但尚未使用post类型存档对其进行测试。
3) Permalink for Custom Taxonomy
在注册期间,您可以设置rewrite参数。所以基本上可以生成如下内容:
http://yourblog.tld/parent/cpt/<post>
http://yourblog.tld/parent/cpt/taxonomy/<post>
要做到这一点,您必须首先使用特殊的
rewrite
参数然后向注册新的分类法对象
register_taxonomy_for_object_type
用于自定义帖子类型
before 您可以注册自定义分类法。正如Jan Fabry在SE的回答中所述,这对于生成的重写规则的正确顺序是必要的。
Custom Post Type
$args = array(
// your arguments
\'rewrite\' => array(\'slug\' => \'parent/cpt\', \'with_front\' => false)
);
register_post_type(\'YOUR_POSTTYPE\', $args);
register_taxonomy_for_object_type(\'YOUR_TAXONOMY\', \'YOUR_POSTTYPE\');
Custom Taxonomy
$args = array(
// your arguments
\'rewrite\' => array(\'slug\' => \'parent/cpt/taxonomy\', \'with_front\' => false)
)
register_taxonomy(\'YOUR_TAXONOMY\', array(), $args);