我需要将wordpress与标准重写规则一起使用,例如“http://www.mysite.com/?p=123” ,但我想重写像“http://www.mysite.com/store”这样的内容,但我不想使用wordpress的内部功能,如“http://www.mysite.com/postname” ,我将重写.htacess,所以我写了,所以内容得到重写,
function replace_mycontent($string){
$pattern = '/?page_id=([^/]+)/'; // urls like http://www.mysite.com/?p=123
$replacement = '/$1/'; // gets replaced by http://www.mysite/store
return preg_replace($pattern, $replacement, $string);
}
add_filter('the_content', 'replace_mycontent');
这会产生错误,一些帮助欢迎,
谢谢!
答案 0 :(得分:0)
替换此行代码:$pattern = '/?page_id=([^/]+)/';
:$pattern = '/?p=([^/]+)/';
编辑1:
在.htaccess中,这可以作为完成(考虑到,Wordpress安装在站点的根目录中):
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# RewriteCond %{REQUEST_FILENAME} !-f
# RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/?$ index.php?p=$1 [L]
<IfModule>