概要
add_rewrite_rule 関数は、WordPress のカスタムリライトルールを追加するために使用されます。この関数を使うことで、通常の URL 構造では異なる動作をするように URL を変更することができます。これにより、検索エンジン最適化(SEO)やユーザー体験を向上させるための柔軟な URL 構造を実現できます。この関数は、以下のようなシナリオでよく使われます。
- カスタム投稿タイプのためのリライトルールの追加
- カスタムフィルターやアクションの実行をするための URL のマッピング
- ページネーションのカスタマイズ
- ショートコードやエンドポイントを持つ特定のページの作成
- SEO に配慮したクリーンな URLs の生成
- API エンドポイントの作成
- 多言語サイトのための特定のルールの追加
- 特定のクエリパラメーターを持つリダイレクト用のルールの追加
構文
add_rewrite_rule( $regex, $query, $position );
パラメータ
- $regex (string): どの URL にマッチさせるかを示す正規表現。
- $query (string): マッチした URL に対してどのクエリを実行するかを示す文字列。
- $position (string): 追加するルールの位置。
'top'もしくは'bottom'。
戻り値
この関数は、リライトルールを追加したかどうかにかかわらず、常に null を返します。
関連する関数
使用可能なバージョン
add_rewrite_rule 関数は、WordPress 2.1.0 で導入されました。
コアファイルのパス
wp-includes/rewrite.php
この関数のアクションでの使用可能性
| アクション | 使用例 |
|---|---|
| mu_plugin_loaded | 〇 |
| registered_post_type | 〇 |
| plugins_loaded | 〇 |
| wp_roles_init | |
| setup_theme | 〇 |
| after_setup_theme | |
| set_current_user | |
| init | 〇 |
| register_sidebar | |
| wp_loaded | 〇 |
| send_headers | |
| parse_query | 〇 |
| pre_get_posts | 〇 |
| wp | |
| template_redirect | 〇 |
| get_header | |
| wp_head |
この関数は現在のバージョンで非推奨または削除されていません。