微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Wordpress:自定义固定链接结构 - /%custom-post-type%/%custom-taxonomy%/%post-name%/

如何解决Wordpress:自定义固定链接结构 - /%custom-post-type%/%custom-taxonomy%/%post-name%/

我想创建自定义帖子类型“产品”及其分类“类型”。
我需要产品存档页面(所有产品)和存档分类页面(所有产品类型)。

必需的固定链接

  • /products - 所有产品
  • /products/fish - 所有鱼类产品
  • /products/fish/fish-can - 产品详情

我正在使用名为 CPT UI插件来创建自定义帖子类型和自定义分类法。

插件生成代码如下:


<?PHP 
function cptui_register_my_cpts_products() {

/**
 * Post Type: Products.
 */

$labels = [
    "name" => __( "Produkty","custom-post-type-ui" ),"singular_name" => __( "Produkt","menu_name" => __( "Produkty","all_items" => __( "Všechny produkty","add_new" => __( "Přidat produkt","add_new_item" => __( "Přidat nový produkt","edit_item" => __( "Upravit produkt","new_item" => __( "Nový produkt","view_item" => __( "Zobrazit produkt","view_items" => __( "Zobrazit produkty","search_items" => __( "Hledat produkt","not_found" => __( "Nenalezen žádný produkt","not_found_in_trash" => __( "Nenalezen žádný produkt v koši","featured_image" => __( "Obrázek produktu","set_featured_image" => __( "Nastavit obrázek produktu","remove_featured_image" => __( "Odstranit obrázek produktu","use_featured_image" => __( "Použít obrázek produktu","archives" => __( "Produkty","insert_into_item" => __( "Vložit na stránku","uploaded_to_this_item" => __( "Uploadnout této položce","filter_items_list" => __( "Filtrování produktů","items_list_navigation" => __( "Navigace seznamem produtků","items_list" => __( "Seznam produktů","attributes" => __( "Atributy produktu","name_admin_bar" => __( "Produkt",];

$args = [
    "label" => __( "Produkty","labels" => $labels,"description" => "","public" => true,"publicly_queryable" => true,"show_ui" => true,"show_in_rest" => false,"rest_base" => "","rest_controller_class" => "WP_REST_Posts_Controller","has_archive" => true,"show_in_menu" => true,"show_in_nav_menus" => true,"delete_with_user" => false,"exclude_from_search" => false,"capability_type" => "post","map_Meta_cap" => true,"hierarchical" => false,"rewrite" => [ "slug" => "products","with_front" => true ],"query_var" => true,"supports" => [ "title","thumbnail","custom-fields" ],"taxonomies" => [ "type" ],"show_in_graphql" => false,];

register_post_type( "products",$args );
}

add_action( 'init','cptui_register_my_cpts_products' );


function cptui_register_my_taxes_type() {

    /**
     * Taxonomy: Type.
     */

    $labels = [
        "name" => __( "Kategorie","singular_name" => __( "Kategorie","menu_name" => __( "Kategorie","all_items" => __( "Všechny kategorie","edit_item" => __( "Upravit kategorii","view_item" => __( "Zobrazit kategorii","update_item" => __( "Upravit jméno kategorie","add_new_item" => __( "Přidat novou kategorii","new_item_name" => __( "Nové jméno kategorie","parent_item" => __( "Nadřazená kategorie","parent_item_colon" => __( "Nadřazená kategorie","search_items" => __( "Hledané kategorie","popular_items" => __( "Oblíbené kategorie","separate_items_with_commas" => __( "Oddělte kategorie čárkou","add_or_remove_items" => __( "Přidat nebo odebrat kategorii","choose_from_most_used" => __( "Vyberte z nejpoužívanějších","not_found" => __( "Kategorie nenalezena","no_terms" => __( "Žádné kategorie","items_list_navigation" => __( "Navigace seznamu kategorií","items_list" => __( "Seznam kategorií","back_to_items" => __( "Zpátky na kategorii",];

    
    $args = [
        "label" => __( "Kategorie","hierarchical" => true,"rewrite" => [ 'slug' => 'type','with_front' => true,],"show_admin_column" => false,"rest_base" => "type","rest_controller_class" => "WP_REST_Terms_Controller","show_in_quick_edit" => false,];
    register_taxonomy( "type",[ "products" ],$args );
}
add_action( 'init','cptui_register_my_taxes_type' );
?>

在创建“产品”和“类型”后生成这些永久链接

  • /products - 所有产品(模板 archive-products.PHP
  • /type/fishes - 所有鱼类产品(模板 taxonomy-type.PHP
  • /products/fish-can - 产品详细信息(模板 single-products.PHP

我做错了什么?如何将永久链接重写为我需要的形状?

谢谢你的建议。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。