1

我在创建新的 wordpress 博客时遇到问题,我在主题激活时通过脚本设置永久链接。然而,即使当我检查 WP 中的永久链接设置时它们看起来是正确的,我的新页面仍然抛出 404 错误。

我发现的唯一解决方法是我必须返回永久链接选项并单击“保存更改”,尽管根据显示,我没有进行任何需要保存的更改...

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

这就是我的做法。

if(get_option('permalink_structure')==""){update_option('permalink_structure', '/%postname%/');}

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

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

4

1 回答 1

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%/');
}
于 2010-03-08T14:20:08.937 回答