ホーム > Wordpress | 技術系 > WordPressのカスタムパーマリンクのURL末尾の1が消える現象に対処

WordPressのカスタムパーマリンクのURL末尾の1が消える現象に対処

WordPressで、カスタムパーマリンクを使っていて、以下のようなことを実現しようとしていました。

パーマリンクを使ってURLを作成し、以下のようなURLのページがあったとします。

http://example.com/test/

このページに /test/ ディレクトリ以下に、数字の /1/というURLを付加し、パラメータとして処理をしようとしました。

http://example.com/test/1

上記のようなURLにして、数字の1を取り出して、プログラム内で処理しようとしていました。

しかし、いざ実行してみると・・・

http://example.com/test/1

とアドレスバーに入力すると

http://example.com/test/  

にリダイレクトされてしまうという現象が・・・・

何故?

ちなみに

http://example.com/test/2

とアドレスバーに入力すると、問題なく表示される。

何で2は通るのに1が駄目・・・?

ということで、問題に対処するために、

WordPressのソースコードに

echo $_SERVER[‘REQUEST_URI’];

を処理開始部分から追記していって、URLがどこで変化しているかを調べてみました。

すると、最初の段階では

http://example.com/test/1

と画面上に出力されていました。

それが、どこで変化しているのか・・・

結論としては

/wp-includes/template-loader.php内の

do_action( ‘template_redirect’ );

この処理の後で、

http://example.com/test/1 → http://example.com/test/

にURLが変化していました。

そして、上記の処理(do_action( ‘template_redirect’ );)をコメントアウトしてみたところ、

http://example.com/test/1

きちんと処理されるようになりました。

この処理を飛ばすとサイトの表示に問題が起きるわけでもなく。

というわけで、調査の結果としては以上となりました。

コメント:0

コメントフォーム
入力した情報を記憶する

トラックバック:0

この記事のトラックバック URL
https://www.itblog.jp/wp-trackback.php?p=9629
トラックバックの送信元リスト
WordPressのカスタムパーマリンクのURL末尾の1が消える現象に対処 - ITblog より

ホーム > Wordpress | 技術系 > WordPressのカスタムパーマリンクのURL末尾の1が消える現象に対処

フィード
リンク集

ページの上部に戻る