从wordpress主题/插件更改自定义帖子的永久链接

时间:2018-03-16 18:08:23

标签: php mysql wordpress

我购买了一个带有自定义插件的wordpress主题,允许自定义帖子,标题为“游览”。

目前查看自定义帖子的永久链接是site.com/tour/post-name

我正在尝试更改/ tour /所以我更新了插件文件夹中的所有代码来自' tour'到签证'。

我也访问了我的数据库并更改了wp_posts中的所有帖子,并将post_type从tour更新为visa

现在自定义帖子应该在我的帖子部分显示,但是当我访问mysite.com/visa/post-name时,它会转到我的404页面。

我错过了什么吗?我需要改变其他什么吗?

感谢

2 个答案:

答案 0 :(得分:0)

检查插件和站点根目录中的.htaccess文件。主题可能有重写规则需要更改。

答案 1 :(得分:0)

如果插件在参数中使用rewrite具有内置帖子类型,我建议不要在插件文件中覆盖它,因为如果他们推出更新,它会覆盖您的更改

最好的办法是用register_post_type_args过滤器覆盖帖子类型参数。请注意,您可能需要调整10的优先级,但这应该可以帮助您开始:

add_filter( 'register_post_type_args', 'scotty_tour_to_visa', 10, 2 );
function scotty_tour_to_visa( $args, $post_type ){
    if( $post_type == 'tour' ){
        $args['rewrite']['slug'] = 'visa';
    }

    return $args;
}

另请注意,我建议您回滚所做的更改,并使用上面的过滤器,或add_rewrite_rule(),因为您所做的事情并非面向未来,如果有& #39;针对主题/插件发布的安全更新 - 您必须重做所有/大部分已完成的操作。