【问题标题】:Custom rewrite slug break permalinks to taxonomy archive自定义重写 slug break 到分类档案的永久链接
【发布时间】:2020-08-25 19:12:37
【问题描述】:

我有一个名为 datacenter_news 的自定义帖子类型和一个名为 dc_news_tax 的分类。帖子类型档案和分类档案都可以正常工作。但是,当我尝试在帖子中添加一个名为 datacenter-news 的自定义重写 slug 时,我的分类术语的 URL 停止工作并给我 404 页面。

现在永久链接结构如下所示。

datacenter_news/dc_news_tax/term

这是我想要的样子

datacenter-news/dc_news_tax/term

这是注册的帖子类型。

function cptui_register_my_cpts_datacenter_news() {

    $labels = array(
        "name" => __( "Data Center News", "custom-post-type-ui" ),
        "singular_name" => __( "Data Center News", "custom-post-type-ui" ),
    );

    $args = array(
        "label" => __( "Data Center News", "custom-post-type-ui" ),
        "labels" => $labels,
        "description" => "",
        "public" => true,
        "publicly_queryable" => true,
        "show_in_rest" => true,
        "rest_base" => "",
        "rest_controller_class" => "WP_REST_Posts_Controller",
        "has_archive" => true,
        "capability_type" => "post",
        "map_meta_cap" => true,
        "hierarchical" => false,
        "rewrite" => array( "slug" => "datacenter-news", "with_front" => false ),
        "query_var" => true,
        "supports" => array( "title", "editor", "thumbnail" ),
        "taxonomies" => array( "news_tag", "dc_news_tax" ),
    );

    register_post_type( "datacenter_news", $args );
}

add_action( 'init', 'cptui_register_my_cpts_datacenter_news' );

这是注册的分类法

function cptui_register_my_taxes_dc_news_tax() {

    $labels = array(
        "name" => __( "News Category", "custom-post-type-ui" ),
        "singular_name" => __( "News Category", "custom-post-type-ui" ),
    );

    $args = array(
        "label" => __( "News Category", "custom-post-type-ui" ),
        "labels" => $labels,
        "public" => true,
        "publicly_queryable" => true,
        "hierarchical" => true,
        "query_var" => true,
        "rewrite" => array( 'slug' => 'dc_news_tax', 'with_front' => true,  'hierarchical' => true, ),
        "show_admin_column" => false,
        "show_in_rest" => true,
        "rest_base" => "dc_news_tax",
        "rest_controller_class" => "WP_REST_Terms_Controller",
        "show_in_quick_edit" => false,
        );
    register_taxonomy( "dc_news_tax", array( "datacenter_news" ), $args );
}
add_action( 'init', 'cptui_register_my_taxes_dc_news_tax' );

我的帖子类型的永久链接设置如下/%dc_news_tax%/%postname%/

我需要更改哪些内容才能让自定义重写 slug 与我的分类术语的 URL 一起使用?

提前致谢。

【问题讨论】:

    标签: php wordpress custom-post-type permalinks custom-taxonomy


    【解决方案1】:

    有几件事可能会导致这种情况。我会参考有关创建自定义帖子类型的文档。首先,我会尝试在您的代码中更改它。然后刷新永久链接

    https://www.smashingmagazine.com/2012/11/complete-guide-custom-post-types/

    来自

    register_post_type( "datacenter_news", $args );
    

    register_post_type( "datacenter-news", $args );
    

    来自

    register_taxonomy( "dc_news_tax", array( "datacenter_news" ), $args )
    

    register_taxonomy( "dc_news_tax", array( "datacenter-news" ), $args )
    

    【讨论】:

      猜你喜欢
      • 2017-06-09
      • 2014-08-28
      • 2011-12-05
      • 1970-01-01
      • 1970-01-01
      • 2013-04-18
      • 2019-10-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多