Redirect attachment URL

时间:2015-12-14 作者:ManTube

是否有人可以为我重定向以下永久链接URL?

WordPress的URL为:http://example.com/?attachment_id=411

我想将其重定向到新结构I do it,以下代码在旧URL中不适用于我:

/* add new rewrite rule */
function attachment_rewrite( $wp_rewrite ) {
    $rule = array(
        \'media/(.+)\' => \'index.php?attachment=\' . $wp_rewrite->preg_index(1)
    );

    $wp_rewrite->rules = $rule + $wp_rewrite->rules;
}
add_filter( \'generate_rewrite_rules\', \'attachment_rewrite\' );

/* redirect standard wordpress attachments urls to new format */
function redirect_old_attachment() {
    global $wp;

    if( !preg_match( \'/^media\\/(.*)/\', $wp->request ) && isset( $wp->query_vars[\'attachment\'] ) ) {
        wp_redirect( site_url( \'/media/\' . $wp->query_vars[\'attachment\'] ) , 301 );
        exit();
    }
}
add_filter( \'template_redirect\', \'redirect_old_attachment\' );
/**/
function wpd_attachment_link( $link, $post_id ){
    $post = get_post( $post_id );
    return home_url( \'/media/\' . $post->post_name );
}
add_filter( \'attachment_link\', \'wpd_attachment_link\', 20, 2 );
所以我们需要什么时候开门http://example.com/?attachment_id=411 , 将其重定向到http://example.com/media/post-title

1 个回复
最合适的回答,由SO网友:Christopher Eller 整理而成

您可以通过代码、htaccess或使用重定向插件以最快的方式可靠地完成此操作。

以下是WordPress VIP审查的三个重定向插件:

https://vip.wordpress.com/plugins/safe-redirect-manager/

https://vip.wordpress.com/plugins/wpcom-legacy-redirector/

https://vip.wordpress.com/plugins/external-permalinks-redux/

以下是我在网站上使用的链接:

https://wordpress.org/plugins/redirection/

(浏览活动安装数量400000以上)

相关推荐

Redirection problems

请帮助我克服重定向问题。我需要在子域上工作,而不是在主域上工作,但这里两个域是不同的。我所做的是-将所有(website.com)文件复制到另一个子域(demo.websiteA.com),并根据wp配置更改数据库名称。php文件。但每当我尝试打开演示时。网站a。com它重定向到网站。com公司请帮帮我提前感谢