使用WP设置重写的正确方法

时间:2015-04-21 作者:1Up

这似乎改变了我的想法。htaccess与每个页面视图。设置重写的标准方法是什么?这就是我目前的情况:

if(!function_exists(\'some_rewrite\')){
    add_action( \'init\', \'replacement_rewrite\' );
    function replacement_rewrite( )
    {    
        global $wp_rewrite;
        $wp_rewrite->add_permastruct(\'typename\',\'typename/%year%%postname%/\' , true , 1);
        add_rewrite_rule(\'typename/([0-9]{4})/(.+)/?$\',\'index.php?typename=$matches[2]\', \'top\');
        $wp_rewrite->flush_rules();
    }
}

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

看见flush_rules 在法典中:

因为此功能在性能方面可能会非常昂贵,所以应该尽可能少地使用它,例如在插件或主题的激活或停用期间。应尽一切努力避免在每次页面加载时执行的挂钩(如init)中使用它。

仅在规则更改时刷新规则,而不是在每次页面加载时刷新规则。

结束

相关推荐

固定链接不起作用(.htaccess可写)

我最近刚刚在基于Debian的VPS上建立了一个新的Wordpress站点。除了permalinks,我已经设法让一切都正常工作了。除默认选项外,所有选项均无效。我的htaccess文件当前如下所示-# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\\.php$ - [L] RewriteCond %{REQUEST_F