具有父页面的自定义帖子类型 - 最佳实践

时间:2017-04-26 21:30:13

标签: wordpress custom-post-type

我正在开发一个网站,其产品类别和个别产品的组织方式如下:

产品类别1

  • 产品
  • 产品
  • 产品

产品类别2

  • 产品

等...

有人向我建议,组织单个产品的最佳方法是为产品创建自定义帖子类型。产品类别目前是页面。

所以现在我试图找出将产品自定义帖子类型与其特定产品类别页面连接起来的最佳方式(以便url结构可以是" / product_category / product /")。

我确信有一种聪明有效的方法可以做到这一点,但我没有看到它。我想我可以在页面和CPT中添加类别 - 但这并不是我想要的效果,因为我不希望它们只能作为存档页面访问。这真的是个问题吗?

很抱歉,这是一个如此广泛的问题 - 我可以让它工作,但我确信我的第一次尝试不是最好的方式,所以我只是寻找一些指针或示例来自之前做过这些的人引导我朝着正确的方向前进。

提前致谢,任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:1)

您可以使用Custom Taxonomies

function product_categories_init() {
    register_taxonomy(
        'product-category',
        'product', // Or 'post', whatever the custom post type is
        array(
            'label'              => __( 'Product Categories' ),
            'rewrite'            => array( 'slug' => 'product-categories' ),
            'hierarchical'       => false,
            'show_ui'            => true,
            'show_admin_column'  => true,
            'query_var'          => true,
        )
    );
}
add_action( 'init', 'product_categories_init' );

这是一个简单的例子。您必须查看参考链接中的选项。但它本质上是你自己的一种类型的帖子类型(或一组帖子类型)。

答案 1 :(得分:0)

最后我确实做对了。我的部分问题是由于对如何在wordpress中使用类别的误解。

我最终做的是使用Austin Winstanely的答案所示的自定义分类法,然后稍微重构我的页面组织,以便产品类别不是页面类型,而是显示类别使用类别模板。这使得它非常方便,因为自定义帖子类型中的各个产品可以非常容易地与他们的产品类别相关联。当我问这个问题时,我不明白类别可以有自己的模板和功能作为网页。

感谢您的帮助! -Alyssa