用静态页面替换Wordpress类别?
我正在重新讨论一个四年前的Wordpress问题,这个问题的答案是经过批准的,但是这个解决方案在当前版本的Wordpress中不再有效。原问题: 背景(从最初批准的答案复制): example.com是域 我有一个名为“foobar”的WP页面,内容丰富 我有一个名为“foobar”的WP帖子类别 我有一篇题为“foobar有趣的事情”的WP帖子,类别设置为“foobar” 期望值 当我转到example.com/foobar时,我希望看到关于foobar的页面,而不是一个WP category页面,该页面显示所有具有该类别的博客文章 当我去看关于有趣事物的博客文章时,URL是example.com/foobar/fun-things-to-do-with-foobars/ 当时的解决方案 似乎有一个自定义永久链接结构的变通方法,并使用“.”(无引号)作为类别基础。该解决方案不适用于当前版本的Wordpress用静态页面替换Wordpress类别?,wordpress,permalinks,Wordpress,Permalinks,我正在重新讨论一个四年前的Wordpress问题,这个问题的答案是经过批准的,但是这个解决方案在当前版本的Wordpress中不再有效。原问题: 背景(从最初批准的答案复制): example.com是域 我有一个名为“foobar”的WP页面,内容丰富 我有一个名为“foobar”的WP帖子类别 我有一篇题为“foobar有趣的事情”的WP帖子,类别设置为“foobar” 期望值 当我转到example.com/foobar时,我希望看到关于foobar的页面,而不是一个WP category
还有一些答案建议使用各种插件。我并不公开反对这种做法,但当时建议的插件似乎受到了否定公认答案的相同更新的影响。要加载与类别名称相同的slug的页面,可以使用以下代码段将类别替换为页面
function wpa_alter_cat_links( $termlink, $term, $taxonomy ){
if( 'category' != $taxonomy ) return $termlink;
return str_replace( '/category', '', $termlink );
}
add_filter( 'term_link', 'wpa_alter_cat_links', 10, 3 );
注意代码。你应该有你的所有类别的网页,否则你会得到404为那些没有创建网页的类别
将上述代码添加到激活主题的functons.php文件后,请刷新永久链接。您可以通过访问设置->永久链接->单击保存更改来完成此操作
希望它对你有用