Wordpress 从自定义帖子中删除永久链接但保留存档
Wordpress remove permalink from custom posts but retain archive
我有一个 Wordpress 站点,我在其中跟踪出版物,其中包含一个名为 "publications" 的自定义 post 类型的存档。每个出版物 post 不应该有自己的页面,它只需要出现在存档页面中。现在,当我创建一个名为 "test publication" 的出版物时,会在 www.mysite.com/publications/test-publication
上创建一个页面。我看到了将 post 选项 public
更改为 false
、 的建议,但我无法访问存档本身、它只是重定向到主页。如果除了 public => false
之外我还添加 publicly_queryable => true
然后我可以到达存档页面,但是每个出版物的专用页面再次出现。如果我尝试访问 www.mysite.com/publications/test-publication
但仍允许我访问存档,我需要它给我一个 404。求助,我是不是遗漏了什么明显的东西?
您可以添加模板重定向,以便单数 link 如果访问重定向到存档页面:
add_action( 'template_redirect', 'disable_singular_publications' );
function disable_singular_publications()
{
if ( ! is_singular( 'publications' ) )
return;
wp_redirect( get_post_type_archive_link( 'publications' ), 301 );
exit;
}
您可以在 functions.php 中添加上述功能,代码未经过测试,因此您可能需要检查是否有拼写错误或语法错误。
我有一个 Wordpress 站点,我在其中跟踪出版物,其中包含一个名为 "publications" 的自定义 post 类型的存档。每个出版物 post 不应该有自己的页面,它只需要出现在存档页面中。现在,当我创建一个名为 "test publication" 的出版物时,会在 www.mysite.com/publications/test-publication
上创建一个页面。我看到了将 post 选项 public
更改为 false
、 的建议,但我无法访问存档本身、它只是重定向到主页。如果除了 public => false
之外我还添加 publicly_queryable => true
然后我可以到达存档页面,但是每个出版物的专用页面再次出现。如果我尝试访问 www.mysite.com/publications/test-publication
但仍允许我访问存档,我需要它给我一个 404。求助,我是不是遗漏了什么明显的东西?
您可以添加模板重定向,以便单数 link 如果访问重定向到存档页面:
add_action( 'template_redirect', 'disable_singular_publications' );
function disable_singular_publications()
{
if ( ! is_singular( 'publications' ) )
return;
wp_redirect( get_post_type_archive_link( 'publications' ), 301 );
exit;
}
您可以在 functions.php 中添加上述功能,代码未经过测试,因此您可能需要检查是否有拼写错误或语法错误。