自定义帖子类型类别固定链接和归档页面

时间:2013-02-23 作者:Yev

我知道这个问题以前提过,但我似乎无法使用任何建议的解决方案来解决问题。这是我如何设置自定义帖子类型和类别的:

Custom Post Type: Buildings
-Buildings Categories:
--Medical
--Industrial
--Educational
--Recreational

-Buildings Regions (custom taxonomy):
--USA
---Connecticut
---New Jersey
---New York
--Canada
---Quebec
---Ontario
每个建筑将被分配到1个建筑类别(医疗、工业等)和1个建筑区域(美国->纽约、加拿大->安大略省等)。这一切都很好,除了内部建筑页面的永久链接是站点。com/buildings/postname,并且自定义帖子类型类别没有类别存档。以下是我努力实现的目标:

例如,永久链接到内部建筑页面。com/建筑物/类别/postname

以所有建筑页面的存档为例。com/建筑

始终链接到每个建筑类别示例的档案。com/建筑/类别

最后,我希望能够按地区显示建筑档案。所以举个例子。com/buildings/region/usa将显示美国的所有建筑,而示例。com/buildings/region/canada/quebec将只显示加拿大魁北克的建筑。

我尝试了许多解决方案,但最接近的解决方案是使用WP Permastructure plugin 发布为对的答复this similar thread. 我能够正确生成内部构建页面的永久链接,但当访问时,它们返回404。

非常感谢您的帮助!

1 个回复
SO网友:Christopher Ross

是的,如果没有代码示例,我不确定自己能帮上多少忙,但我会给你我用来创建带有存档页的自定义帖子类型的代码。此示例将帮助您开始常见问题解答(易于修改)。

请注意重写行和刷新,这是为自定义Post类型创建永久链接结构的原因(并刷新缓存以激活它)。我怀疑这将使您非常接近您的期望,但如果不是,请提交您的代码,我将尽力提供帮助。

if ( ! function_exists( \'new_cpt_faq\' ) ) {
    function new_cpt_faq() {
        register_post_type( \'new_cpt_faq\',
            array(
                \'labels\' => array(
                    \'name\' => __( \'FAQs\', \'name_space\'  ),
                    \'singular_name\' => __( \'FAQ\', \'name_space\'  ),
                    \'add_new\' => __( \'Add New FAQ\', \'name_space\'  ),
                    \'add_new_item\' => __( \'Add New FAQ\', \'name_space\'  ),
                    \'edit_item\' => __( \'Edit FAQ\', \'name_space\'  ),
                    \'new_item\' => __( \'New FAQ\', \'name_space\'  ),
                    \'all_items\' => __( \'All FAQs\', \'name_space\'  ),
                    \'view_item\' => __( \'View FAQ\', \'name_space\'  ),
                    \'search_items\' => __( \'Search FAQs\', \'name_space\'  ),
                    \'not_found\' =>  __( \'No FAQs found\', \'name_space\'  ),
                    \'not_found_in_trash\' => __( \'No FAQs found in Trash\', \'name_space\'  ),
                    \'parent_item_colon\' => \'\',
                    \'menu_name\' => __( \'FAQs\', \'name_space\'  )
                ),
            \'public\' => true,
            \'has_archive\' => true,
            \'supports\' => array( \'title\', \'editor\' ),
            \'rewrite\' => array(
                            \'slug\'=>\'faqs\',
                            \'with_front\'=> false,
                            \'feed\'=> true,
                            \'pages\'=> true
                        )
            )
        );

        flush_rewrite_rules();
    }
}
add_action( \'init\', \'new_cpt_faq\' );

if ( ! function_exists( \'new_cpt_faq_taxonomy_categories\' ) ) {
    function new_cpt_faq_taxonomy_categories() {
        register_taxonomy(
        \'new_cpt_faq\',
        \'new_cpt_faq\',
        array(
            \'labels\' => array(
            \'name\' => __( \'FAQ Category\', \'name_space\'  ),
            \'add_new_item\' => __( \'Add New FAQ Category\', \'name_space\'  ),
            \'new_item_name\' => __( \'New FAQ Category\', \'name_space\' )
            ),
            \'show_ui\' => true,
            \'show_tagcloud\' => true,
            \'hierarchical\' => true
        )
        );
    }
}
add_action( \'init\', \'new_cpt_faq_taxonomy_categories\' );

http://codex.wordpress.org/Function_Reference/register_post_type

结束
自定义帖子类型类别固定链接和归档页面 - 小码农CODE - 行之有效找到问题解决它

自定义帖子类型类别固定链接和归档页面

时间:2013-02-23 作者:Yev

我知道这个问题以前提过,但我似乎无法使用任何建议的解决方案来解决问题。这是我如何设置自定义帖子类型和类别的:

Custom Post Type: Buildings
-Buildings Categories:
--Medical
--Industrial
--Educational
--Recreational

-Buildings Regions (custom taxonomy):
--USA
---Connecticut
---New Jersey
---New York
--Canada
---Quebec
---Ontario
每个建筑将被分配到1个建筑类别(医疗、工业等)和1个建筑区域(美国->纽约、加拿大->安大略省等)。这一切都很好,除了内部建筑页面的永久链接是站点。com/buildings/postname,并且自定义帖子类型类别没有类别存档。以下是我努力实现的目标:

例如,永久链接到内部建筑页面。com/建筑物/类别/postname

以所有建筑页面的存档为例。com/建筑

始终链接到每个建筑类别示例的档案。com/建筑/类别

最后,我希望能够按地区显示建筑档案。所以举个例子。com/buildings/region/usa将显示美国的所有建筑,而示例。com/buildings/region/canada/quebec将只显示加拿大魁北克的建筑。

我尝试了许多解决方案,但最接近的解决方案是使用WP Permastructure plugin 发布为对的答复this similar thread. 我能够正确生成内部构建页面的永久链接,但当访问时,它们返回404。

非常感谢您的帮助!

1 个回复
SO网友:Christopher Ross

是的,如果没有代码示例,我不确定自己能帮上多少忙,但我会给你我用来创建带有存档页的自定义帖子类型的代码。此示例将帮助您开始常见问题解答(易于修改)。

请注意重写行和刷新,这是为自定义Post类型创建永久链接结构的原因(并刷新缓存以激活它)。我怀疑这将使您非常接近您的期望,但如果不是,请提交您的代码,我将尽力提供帮助。

if ( ! function_exists( \'new_cpt_faq\' ) ) {
    function new_cpt_faq() {
        register_post_type( \'new_cpt_faq\',
            array(
                \'labels\' => array(
                    \'name\' => __( \'FAQs\', \'name_space\'  ),
                    \'singular_name\' => __( \'FAQ\', \'name_space\'  ),
                    \'add_new\' => __( \'Add New FAQ\', \'name_space\'  ),
                    \'add_new_item\' => __( \'Add New FAQ\', \'name_space\'  ),
                    \'edit_item\' => __( \'Edit FAQ\', \'name_space\'  ),
                    \'new_item\' => __( \'New FAQ\', \'name_space\'  ),
                    \'all_items\' => __( \'All FAQs\', \'name_space\'  ),
                    \'view_item\' => __( \'View FAQ\', \'name_space\'  ),
                    \'search_items\' => __( \'Search FAQs\', \'name_space\'  ),
                    \'not_found\' =>  __( \'No FAQs found\', \'name_space\'  ),
                    \'not_found_in_trash\' => __( \'No FAQs found in Trash\', \'name_space\'  ),
                    \'parent_item_colon\' => \'\',
                    \'menu_name\' => __( \'FAQs\', \'name_space\'  )
                ),
            \'public\' => true,
            \'has_archive\' => true,
            \'supports\' => array( \'title\', \'editor\' ),
            \'rewrite\' => array(
                            \'slug\'=>\'faqs\',
                            \'with_front\'=> false,
                            \'feed\'=> true,
                            \'pages\'=> true
                        )
            )
        );

        flush_rewrite_rules();
    }
}
add_action( \'init\', \'new_cpt_faq\' );

if ( ! function_exists( \'new_cpt_faq_taxonomy_categories\' ) ) {
    function new_cpt_faq_taxonomy_categories() {
        register_taxonomy(
        \'new_cpt_faq\',
        \'new_cpt_faq\',
        array(
            \'labels\' => array(
            \'name\' => __( \'FAQ Category\', \'name_space\'  ),
            \'add_new_item\' => __( \'Add New FAQ Category\', \'name_space\'  ),
            \'new_item_name\' => __( \'New FAQ Category\', \'name_space\' )
            ),
            \'show_ui\' => true,
            \'show_tagcloud\' => true,
            \'hierarchical\' => true
        )
        );
    }
}
add_action( \'init\', \'new_cpt_faq_taxonomy_categories\' );

http://codex.wordpress.org/Function_Reference/register_post_type

相关推荐

WP_DROPDOWN_CATEGORIES-如何在Widget中保存?

我想用wp_dropdown_categories 在自定义小部件中。所有内容都显示得很好,但由于某些原因,无法正确保存。这是form() 和update() 小部件的功能-我做错什么了吗?public function form( $instance ) { /* Set up some default widget settings. */ $defaults = array( \'title\' => \'Classes by Category\' );&#x