据我所知,如果数据库中已经存在具有相同名称的帖子,WordPress会在永久链接(帖子名称)的末尾自动添加后缀。
但不会在Meta标题的末尾添加后缀,因为它取决于主题。
无论如何我使用论文主题,没有重复的档案元标题元标题,
HOEMPAGE
mydomainname.com =在第1页中,标题为<title>My Homepage Title</title>
mydomainname.com/page/ 2 =在第2页中,标题为<title>My Homepage Title — Page 2</title>
CATEGORY
mydomainname.com/category/category-title =在第1页中,标题为<title>My Category Title</title>
mydomainname.com/category/category-title/page/ 2 =在第2页中,标题为<title>My Category Title — Page 2</title>
代码 它一样,总是动态独特。
越来越多的第3,4,5 ++页标题仍然是唯一的(不重复)自动。
我在博客上使用Thesis主题(公共用户可以在Fropnt End上更新帖子),用户只在前端创建帖子,作者无法访问我的wp-admin CMS和论文“详细信息和附加样式”字段。那么,帖子条目标题怎么样?如何在用户创建具有相同标题的新帖子时获得此功能?
例如,即时尝试如下:
webresepi.com/sambal-udang =首个帖子元标题为<title>Sambal Udang</title>
webresepi.com/sambal-udang-2 =这个帖子标题已存在于我的数据库中,所以我想要这个帖子元标题,如<title>Sambal Udang — 2</title>
当数据库中已存在帖子标题时,从该永久链接中获取数字。
答案 0 :(得分:-1)
这与faa使用相同的想法,但他的解决方案中有很多很多东西会阻止它工作。使用FTP在文件夹/ wp-content / themes /中找到你的主题,然后把这段代码放在functions.php中:
add_action( 'template_redirect', function() {
if( is_single() ) { // Is a single post
$slug = basename( $_SERVER['REQUEST_URI'] ); // The slug e.g. sambal-udang-2
$slug = ucwords( str_replace( '-', ' ', $slug ) );
add_filter( 'wp_title', function( $title ) use( $slug ) {
return $slug;
}); // This filter overrides wp_title which is used to print the meta title. It replaces whatever would we written normally with our edited version of the slug.
}
});
上面的代码假设您的服务器使用PHP 5.3或更高版本。为了支持旧系统,我们需要取消匿名函数:
add_action( 'template_redirect', 'xyz_tmplt_redirect' );
function xyz_tmplt_redirect() {
if( is_single() ) {
add_filter( 'wp_title', 'xyz_change_title' );
}
}
function xyz_change_title( $title ) {
$slug = basename( $_SERVER['REQUEST_URI'] ); // The slug e.g. sambal-udang-2
$slug = ucwords( str_replace( '-', ' ', $slug ) );
return $slug;
}