我想对不同的类别使用相同的post slug。因为我将有不同的项目使用相同的slug。我已经有了post slugemail
. 第二个弹头email
成为email-2
, 但我不想那样。
例如,我将有不同的电子邮件项目:
www.example.com/category-one/email
www.example.com/category-two/email
www.example.com/category-three/email
我想对不同的类别使用相同的post slug。因为我将有不同的项目使用相同的slug。我已经有了post slugemail
. 第二个弹头email
成为email-2
, 但我不想那样。
例如,我将有不同的电子邮件项目:
www.example.com/category-one/email
www.example.com/category-two/email
www.example.com/category-three/email
例如,假设您有三个页面,如:
www.example.com/category-one/
www.example.com/category-two/
www.example.com/category-three/
现在,您可以使用slug为上述页面创建子页面email
, e、 g。www.example.com/category-one/email
www.example.com/category-two/email
www.example.com/category-three/email
这是可能的,因为WordPress认为页面(或任何其他层次结构帖子类型)的整个父子组合slug是唯一的。当然,所有这些子页面email
slug是不同的页面,只是具有相同的URL slug结尾。
/%category%/%postname%/
作为您当前的permalink结构,但如果将来需要更改,该怎么办?然后你会有冲突。此外,由于WordPress内部不支持这一点,因此您可能会遇到其他插件(例如定制permalink插件、SEO插件等)无法预料的问题。
这可以使用wp_unique_post_slug
过滤器挂钩。例如,以下示例插件将允许多次出现email
段塞:
<?php
/*
Plugin Name: WPSE non-unique post slug
Plugin URI: https://wordpress.stackexchange.com/a/313422/110572
Description: WPSE non-unique post slug
Version: 1.0.0
Author: Fayaz Ahmed
Author URI: https://www.fayazmiraz.com/
*/
add_filter( \'wp_unique_post_slug\', \'wpse313422_non_unique_post_slug\', 10, 6 );
function wpse313422_non_unique_post_slug( $slug, $post_ID, $post_status, $post_type, $post_parent, $original_slug ) {
if( $post_type === \'post\' && $original_slug === \'email\' ) {
// Perform category conflict, permalink structure
// and other necessary checks.
// Don\'t just use it as it is.
return $original_slug;
}
return $slug;
}
我想通过当前帖子的id为我的帖子分配一个值,该变量是什么。最初我想使用自定义的post\\u meta来实现这一点,我认为这是很好的,但是当我使用这个post\\u meta运行查询时,我的页面加载速度会非常慢(基本时间的4-5倍),因为sql查询(我在数据库中为这个post\\u meta创建了自己的索引,但这对我没有帮助)。。。因此,我读到,如果我创建一个自定义分类法,什么具有相同的值,这将很快,就像标记查询一样。但如果这种自定义分类法创建页面(域(.)tld/taxonomy\\u name/tax