1

テーマのアクティベーション時にスクリプトを介してパーマリンクを設定している新しいワードプレス ブログの作成で問題が発生しています。ただし、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 に答える