更改固定链接结构后,如何将附件URL重定向到旧的父帖子URL

时间:2013-02-13 作者:livewireworld

我成功地更改了永久链接结构。

/%年份%/%monthnum%/%postname%/-->/%类别%/%postname%/%PostU id%/

但现在我面临一个问题。在更改永久链接之前,我通过Yoast seo插件将附件url重定向到父帖子url,效果很好。但在更改permalink结构后,它不起作用,并且显示了太多未发现的错误。

附件重定向仅适用于我的新permalink结构,但不适用于旧permalink sturcutre,

我也遵循这一步骤,而且效果很好。但我的问题有点不同。2013年1月21日之前,我的permalink结构是/%年%/%月%/%postname%/。我通过Yoast的seo插件将附件url重定向到了父贴子url,而且效果很好。但在2013年1月21日之后,我改变了我的permalink结构。/%类别%/%postname%/%post\\u id%/我将旧的永久链接结构重定向到新的永久链接结构。(使用Simple 301重定向插件)

我在Yoast的seo插件中取消选中了附件url到父帖子url,然后再次选中附件url到父帖子url的复选框。所以,刷新Yoast的seo插件,它就能正常工作。但它只适用于新的permalink结构(/%类别%/%postname%/%post\\u id%/),而不适用于旧的permalink结构(/%年份%/%monthnum%/%postname%/)。因此,它会导致大量404错误。

父帖子url的附件url仅适用于我在2013年1月21日之后发布的帖子。在此之前,我发布了近594篇文章,对于所有这些文章,父帖子url的附件url不起作用。

所以恳请您,请建议我,如何解决这个问题。如何将附件url重定向到旧的父帖子url?

2 个回复
SO网友:Matt

更改永久链接结构后,需要刷新Yoast插件中的设置。

更改Wordpress永久链接设置后,返回Yoast的永久链接部分(Yoast SEO=>永久链接)这将重置Yoast插件标识的permalink结构,您的附件页现在应该正确重定向。

SO网友:celilcan.com

请添加到主题的功能中。php:

add_action( \'template_redirect\', \'wpsites_attachment_redirect\' );
function wpsites_attachment_redirect() {
    global $post;
    if ( is_attachment() && isset($post->post_parent) && is_numeric($post->post_parent) && ($post->post_parent != 0) ) :
        wp_redirect( get_permalink( $post->post_parent ), 301 );
        exit();
    endif;
}

结束

相关推荐

how to edit attachments?

在将例如文件附加到帖子时,如何在事后编辑/删除它们?在帖子编辑器中找不到任何内容。谢谢