繁体   English   中英

WordPress 自定义帖子类型的永久链接结构

[英]WordPress Permalink Structure for Custom Post Type

我正在构建一个站点,但无法弄清楚如何仅为我的自定义帖子类型更改永久链接结构!

我现在有一个名为“产品”的自定义帖子类型,它具有这样的 URL 结构

/products/continental-rack/

我的自定义帖子类型的完整代码如下:

function cpt_products() {
  $labels = array(
    'name'               => 'Products',
    'singular_name'      => 'Product',
    'menu_name'          => 'Products',
    'name_admin_bar'     => 'Product',
    'add_new'            => 'Add New',
    'add_new_item'       => 'Add New Product',
    'new_item'           => 'New Product',
    'edit_item'          => 'Edit Product',
    'view_item'          => 'View Product',
    'all_items'          => 'All Products',
    'search_items'       => 'Search Products',
    'parent_item_colon'  => 'Parent Product',
    'not_found'          => 'No Products Found',
    'not_found_in_trash' => 'No Products Found in Trash'
  );

  $args = array(
    'labels'              => $labels,
    'public'              => true,
    'exclude_from_search' => false,
    'publicly_queryable'  => true,
    'show_ui'             => true,
    'show_in_nav_menus'   => true,
    'show_in_menu'        => true,
    'show_in_admin_bar'   => true,
    'menu_position'       => 5,
    'menu_icon'           => 'dashicons-tag',
    'capability_type'     => 'post',
    'taxonomies'          => array( 'category' ),
    'hierarchical'        => false,
    'supports'            => array( 'title', 'author', 'thumbnail' ),
    'has_archive'         => true,
    'rewrite'             => array( 'slug' => 'products' ),
    'query_var'           => true
  );

  register_post_type( 'products', $args );
}
add_action( 'init', 'cpt_products' );

我已经启用了右侧的类别部分,所以我可以 select 一个类别,但是当一个被选中时我无法让该类别出现在永久链接结构中。

所以我想要的永久链接结构本质上是这样的:

/%category-name%/products/continental-rack/

只是找不到办法去做。 任何帮助,将不胜感激!

Go 到设置 -> 永久链接向下滚动到产品永久链接和 select 通用设置并将其添加到自定义结构 /%taxonomyname%/posttypename/

在此处输入图像描述

您可以将过滤器添加到post_type_link

这是正确的方法: https://wordpress.stackexchange.com/a/22490

Возможно это будет кому-то полезно。

upodipousuphiphous Каждый может переписать его под себя。

Пример для услуги/записи:

http://wp.test/services/cat1/cat2/cat3/cat4/post-name/

Пример для категории:

http://wp.test/services/cat1/cat2/cat3/cat

Пример для тега:

http://wp.test/services-tag/tag-name/

После активации: Плагин регистрирует новый тип записи «Услуги» и две таксономии «Категории услуг» и «Теги услу» Обратите внимание, что slug для типа записи cpt_services и таксономии cpt_services_cat одинаковый。 Ниже, описаны правила перезаписи для типа записи и таксономии。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM