WordPressのiframe経由でURL変数を受け渡す方法

1.プラグイン「iframe」をインストール

2.iframe.phpを編集しますが、その前に、URL変数の受け渡しの仕組みのサンプルコードは以下の通りです。
(今回のソースコードではなく、ショートコードでの受け渡し例です)

 
// get_param_val関数の定義
function get_param_val($atts2) {
// デフォルトの配列
$atts1 = array(
// デフォルト値の設定(ここではデフォルトは値なし)
'name' => ''
);

// デフォルトの配列に引数で受け取った配列をマージ
extract(shortcode_atts($atts1, $atts2));

// パラメーターの値を取得
$val = (isset($_GET[$name]) && $_GET[$name] != '') ? $_GET[$name] : '';
// エスケープ処理
$val = htmlspecialchars($val, ENT_QUOTES);

// $valを戻り値として設定(ショートコードの値となる)
return $val;
}

// ショートコード[param]にget_param_val関数をセット add_shortcode('param', 'get_param_val');

3.記述例

http://example.com/?id=001でURLパラメーターを渡した場合、
 
IDの値は[param name="id"]です。=> IDの値は001です。

4.次に、iframe 側のphpコードに一部追記します。77行目~

if ( strtolower($attr) == 'src' ) { // sanitize url
// url.id変数を取得して、
$val_id = (isset($_GET['id']) && $_GET['id'] != '') ? $_GET["id"] : '';
$val_rid = htmlspecialchars($val_rid, ENT_QUOTES);
if (isset($_GET['id']) && $_GET['id'] != ''){
$value = esc_url( $value ) . '?id=' . $val_id;
}else{
$value = esc_url( $value );
}
// $value = esc_url( $value ) オリジナルコードコメントアウト
5.通常通り、[iframe src=”https://hoge.com/”] とショートコードで記述すると、URLパラメータが存在した場合は、https://hoge.com?id=001とURLがパラメータが付加され、iframe先にURL変数を渡すことができる。
Share on facebook
Facebook
Share on google
Google+
Share on twitter
Twitter
Share on linkedin
LinkedIn
Share on pinterest
Pinterest

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

ten − ten =