1

"http://www.mysite.com/?p=123" のような標準的な書き換えルールでワードプレスを使用する必要がありますが、"http://www.mysite.com/store" のようなコンテンツを書き換えたいのですが、 「http://www.mysite.com/postname」のようなwordpressの内部機能は使いたくないので、.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');

これによりエラーが発生しますが、いくつかの助けを歓迎します。

ありがとう !!

4

1 に答える 1

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>
于 2012-05-20T15:03:12.363 に答える