Docomoの個体識別情報取得パラメータ『NULLGWDOCOMO』をSmartyで付ける
Smartyのポストフィルタ(postfilter)を利用して、出力されるHTMLに『 uid=NULLGWDOCOMO 』を付ける方法です。
キャリアごとにテンプレートを分けるのが楽になります。
これをドコモの場合だけ適用するようにします。
『utn』をSmartyで付ける方法
『guid=on』をSmartyで付ける方法
個体識別情報の取得方法
<?php /* ================================ * relativeOabsolutePathNULLGW * pathAddNULLGW * * @create 2009-01-12 * @author pentan * @url http://pentan.info/ * * Copyright (c) 2009 pentan.info All Rights Reserved. * 著作権表示部分の変更削除は禁止です * ================================ */ function relativeOabsolutePathNULLGW($str,$tag){ $str=stripslashes($str); if(strtolower($tag)=="a"){ if(preg_match("/href=¥"(https?|ftp):¥/¥//i",$str)){ return $str.">"; }elseif(preg_match("/href=¥"#/i",$str)){ return $str.">"; }elseif(preg_match("/href=¥"(mailto|tel|fax|news):/i",$str)){ return $str.">"; }elseif(preg_match("/href=¥"([^¥"]+)¥"/i",$str,$match)){ if(preg_match("/¥?$/i",$match[1]) || preg_match("/&$/i",$match[1])){ return preg_replace("/href=¥"([^¥"]+)¥"/i", "href=¥"$1uid=NULLGWDOCOMO¥"".">",$str); }elseif(preg_match("/¥?/i",$match[1])){ return preg_replace("/href=¥"([^¥"]+)¥"/i", "href=¥"$1&uid=NULLGWDOCOMO¥"".">",$str); }else{ return preg_replace("/href=¥"([^¥"]+)¥"/i", "href=¥"$1?uid=NULLGWDOCOMO¥"".">",$str); } }else{ return $str.">"; } }else{ if(preg_match("/action=¥"(https?|ftp):¥/¥//i",$str)){ return $str.">"; }elseif(preg_match("/action=¥"#/i",$str)){ return $str.">"; }elseif(preg_match("/action=¥"(mailto|tel|fax|news):/i",$str)){ return $str.">"; }elseif(preg_match("/action=/i",$str)){ return $str."><input type=¥"hidden¥" name=¥"uid¥" value=¥"NULLGWDOCOMO¥" />"; }else{ return $str.">"; } } } function pathAddNULLGW($body){ return preg_replace("/<(a|form) ([^>]+)>/ie", "'<$1 '.relativeOabsolutePathNULLGW('$2','$1')",$body); } $smarty->register_outputfilter("pathAddNULLGW"); ?>
関連記事
- Smarty2をPHP7に対応させる方法(The /e modifier is no longer supported Smarty_Compiler.class.php, line 270)
- Smarty error unrecognized tag 'assign' 組み込み関数が使えない
- 各フィルターの動作するタイミング
- 3桁づつカンマ区切りにする拡張モディファー
- 値が空だったら、 を入れるモディファー
- 携帯表示用に文字を全角から半角にする
- Docomoの個体識別情報iモードID(guid)取得パラメータ『guid=on』をSmartyで付ける
- Docomoの個体識別情報取得属性『utn』をSmartyで付ける
- コンパイルファイル(compile)を削除できない
- 読み込まれているテンプレ名を取得
- env , server を読み込む
- クッキーを読み込む
- GET,POSTなどのパラメータを読み出す
- 連想配列でパラメータを渡す方法
- オブジェクトのメンバ変数を読み込む
- 配列を読み込む
- Smarty
スポンサーリンク