ホームページ >バックエンド開発 >PHPチュートリアル >WordPress URL で追加の変数を渡すにはどうすればよいですか?

WordPress URL で追加の変数を渡すにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-12 08:03:01997ブラウズ

How to Pass Extra Variables in WordPress URLs?

WordPress URL で追加の変数を渡す

WordPress URL で追加の変数を渡そうとすると、URL がルート ドメインの後に追加情報が含まれます。これを解決するには、次のアプローチを採用します:

1. WordPress 関数の利用

スーパーグローバルと対話する代わりに、次の WordPress 関数を利用します:

  • add_query_arg(): カスタムの URL を作成します。クエリ変数。
  • query_vars: WordPress で認識されるクエリ変数を変更します (フロントエンドにのみ適用可能)。
  • get_query_var(): を取得します。カスタム クエリ変数の値。

2.実装例

リンクを作成しているページ:

  • ページに戻るリンクにクエリ変数を追加します:

    <a href="<?php echo esc_url(add_query_arg('c', $my_value_for_c)); ?>"></a>
  • 別のページへのリンク:

    <a href="<?php echo esc_url(add_query_arg('c', $my_value_for_c, site_url('/some_other_page/'))); ?>"></a>

functions.php またはプラグイン ファイル (フロントエンドのみ):

function add_custom_query_var( $vars ) {
  $vars[] = "c";
  return $vars;
}
add_filter( 'query_vars', 'add_custom_query_var' );

クエリ変数を取得して処理するページ:

$my_c = get_query_var('c');

3.バックエンドの考慮事項

バックエンドでは、wp() 関数は実行されないため、WP クエリに依存することはできません。代わりに、$_GET スーパーグローバルを調べてください:

$my_c = filter_input(INPUT_GET, "c", FILTER_SANITIZE_STRING);

これらの推奨事項に従うことで、フロントエンドとバックエンドの両方で WordPress URL に追加の変数を効果的に渡すことができます。

以上がWordPress URL で追加の変数を渡すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。