我正在修改WP Store Locations插件,以尝试获取所需的永久链接结构。这是我在网站上安装的唯一插件。
我想要的链接结构示例: example.com/wpsl_store_category/wpsl_store_category [subcategory] / wpsl_store_id
我可以使用以下简单代码将URL结构更改为wpsl_store_category分类:
CHANGE: $rewrite = array( 'slug' => $wpsl_settings['category_slug'] );
TO: $rewrite = array( 'slug' => $wpsl_settings['category_slug'], 'hierarchical' => true );
所以我尝试使用帖子类型wpsl_stores进行相同的代码,但是我很快发现页面类型并不是那么简单。
因此,我尝试了把'page-attributes'添加到'supports'并将'hierarchical'=> true添加到apply_filters的技巧,但这对我不起作用。 (有关我遵循的指南的示例,请参见this link)
我的参数代码:
$args = apply_filters( 'wpsl_post_type_args', array(
'labels' => $labels,
'public' => $public,
'exclude_from_search' => $exclude_from_search,
'show_ui' => true,
'menu_position' => apply_filters( 'wpsl_post_type_menu_position', null ),
'capability_type' => 'store',
'map_meta_cap' => true,
'rewrite' => $rewrite,
'query_var' => 'wpsl_stores',
'hierarchical' => true,
'supports' => array( 'page-attributes', 'title', 'editor', 'author', 'excerpt', 'revisions', 'thumbnail' )
)
);
我对Wordpress的内部运作方式了解不多,但是似乎这是一种广为接受的制作方式,我似乎缺少了一些基本知识。
我还尝试使用重写函数来替换%catrgory%并按如下所示更改重写变量:
CHANGE: $rewrite = array( 'slug' => $wpsl_settings['category_slug'] );
TO: $rewrite = array( 'slug' => '%category%' . $wpsl_settings['category_slug'] );
这对我也不起作用。