Wordpress FORCE更新永久链接设置

Sco*_*t B 1 wordpress permalinks

我一直在创建新的wordpress博客的问题,我通过主题激活脚本设置永久链接.但是,即使在我检查WP中的固定链接设置时它们看起来是正确的,我的新页面也会丢失404错误.

我发现的唯一修复是我必须回到永久链接选项并单击"保存更改",即使根据显示,我没有做任何更改需要保存...

我将永久链接设置为/%postname%/

这就是我在做的方式.

if(get_option('permalink_structure')==""){update_option('permalink_structure', '/%postname%/');}
Run Code Online (Sandbox Code Playgroud)

当我的主题被激活时,该脚本会运行.

任何想法为什么它只能部分完成这项工作?

Ric*_*d M 6

当您在Wordpress设置面板中设置永久链接结构时,它将调用该set_permalink_structure函数wp_includes/rewrite.php.除了设置permalink_structure选项之外,此功能还会重新初始化WordPress重写组件并运行permalink_structure_changed操作.

你应该调用这个函数而不是直接设置选项,这样的东西应该工作:

if (get_option('permalink_structure') == '') {
    global $wp_rewrite;
    $wp_rewrite->set_permalink_structure('/%postname%/');
}
Run Code Online (Sandbox Code Playgroud)