いつそれが起こったのかわからないが、私のクライアントのWordpressサイトのページへのカスタムパーマリンクは壊れている。デフォルトのパーマリンクに戻してからカスタムパーマリンクを使用することで修正できますが、クライアントがページを編集するたびにそれらは再び壊れます。ブログ投稿、アーカイブ、タグ、カテゴリ、およびカスタム投稿タイプのパーマリンクはすべてうまく機能します。カスタムパーマリンクを使用すると404ページしか表示されません。
このサイトには、666個のアクセス許可を持つ.htaccessファイルがあり、そのファイルには以下が含まれています。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
また、mod_rewriteも有効になっています。
Wordpress 3.1.3を使う
私はそれらすべてを無効にしているので、それはプラグインではありません、そしてページのパーマリンクはまだうまくいきません。
助けてください。
私は カスタムポストタイプUIプラグイン を使用していて、プラグインを通してカスタム分類のために以下のコード(関数ファイルに追加しました)を生成しました。
register_taxonomy( 'video_type',
array ( 0 => 'video' ),
array(
'hierarchical' => true,
'label' => 'Type',
'show_ui' => true,
'query_var' => true,
'rewrite' => array( 'slug' => '' ),
'singular_label' => 'video_type'
どういうわけかそのコードはテーマを壊しました。カスタム投稿タイプUIでは、カスタム投稿タイプと分類法を作成してプラグインをアクティブにしておくか、ベータ機能を使用して生成コードをコピーして関数ファイルに貼り付けることができます。だから私はそのコードを削除してプラグインをアクティブにしておくことになった。
カスタム投稿タイプはありますか?これはまさにあなたがあなたのページのスラッグにマッチするスラッグを持つカスタム投稿タイプを持つことからあなたが見るであろう行動の種類です。たとえば、 "portfolio"というページと "portfolio"という投稿の種類があり、両方に "portfolio"というスラッグがある場合、これらの一部に対して404がスローされます。
これは、悪意のある攻撃の後にクライアントのWordpressがインストールされたために起こりました。 .htaccessファイルは改ざんされていて、テーマのfunctions.phpはファイルの先頭に新しい難読化された関数を持っていました。
標準の.htaccessファイルに戻って問題のある関数を削除することで問題は解決しました。
(もちろん、他のファイルが危険にさらされていないとは限りません。)