我正在努力正确设置wordpress站点的结构,以便slug能够正常工作。
&页面;自定义post设置工作正常,如下所示:
Archive for fruits (page):
- site.com/fruits
Singular fruits (custom post)
---- site.com/fruit/apple
---- site.com/fruit/pear
Archive for Veg (page):
- site.com/vegtables
Singular fruits (custom post)
---- site.com/vegtable/spud
---- site.com/vegtable/carrot
我想包括一个自定义的分类法,比如颜色,使用复数有以下permalink:
Archive page for fruits by colour
- site.com/fruits/colour/green
- site.com/fruits/colour/red
我一直在兜圈子试图弄明白这一点,但我相信正确的方法是:
Create a page template for the custom post custom taxonomy archive, e.g
page-fruit-color.php
and create a page for the above.
Set permalinks so all request for
- site.com/fruits/colour/%colour%
go to the above page
如果他们对我如何真正做到这一点有什么建议,能否请一些人澄清一下,这将是最好的方法?如果不是,请有人建议首选方法。
如有任何帮助,我们将不胜感激。
谢谢
诺埃尔
最合适的回答,由SO网友:Milo 整理而成
您描述的所有案例都由post类型存档、post类型单一和分类术语存档页面处理,这些页面在您注册post类型和分类时都会自动生成(取决于参数)。
function wpd_add_custom_types() {
// register fruit post type
$args = array(
\'public\' => true,
\'label\' => \'Fruit\',
\'has_archive\' => \'fruits\', // all posts of type fruit
\'rewrite\' => array( \'slug\' => \'fruit\' ) // single fruit
);
register_post_type( \'fruit\', $args );
// register colour taxonomy
$args = array(
\'label\' => \'Colour\',
\'rewrite\' => array( \'slug\' => \'fruits/colour\' ) // all fruits of colour
);
register_taxonomy( \'colour\', \'fruit\', $args );
}
add_action( \'init\', \'wpd_add_custom_types\' );