リンクやフォームの遷移先URLを変換するには?

スマートフォンサイトをPCサイトとは別のドメインで構築する場合、a要素のhref属性やform要素のaction属性に絶対URLが指定されているとPCサイトに画面遷移してしまうことがあります。

こういったケースでは遷移先のURLを書き換える必要があります。
URLを書き換える方法は、テンプレートの変換処理で行う方法とApacheの設定で行う方法の2種類があります。

1.テンプレートの変換処理でURLを書き換える方法

<gc-script>内のJavaScriptコードで、a要素のhref属性やform要素のaction属性を書き換える処理を記述します。

記述例:

 // a要素のhref属性を書き換える
var $links = $('.foo > a');
$links.each(function(){
var $this = $(this);
var href = $this.attr('href');
$this.attr('href', href.replace('http://www.site.co.jp', 'http://m.site.co.jp'));
});


2.Apacheの設定でURLを書き換える方法

GCHtmlConvertUrlディレクティブを指定することで、a要素のhref属性やform要素のaction属性を一括で置換することができます。

GCHtmlConvertUrl http://www.example.com/ http://sp.example.com/

 

GCHtmlConvertUrlディレクティブの詳細はApache設定マニュアルをご覧ください。
http://developer.genecode.jp/manuals/gcruntime/latest/gc2_apache_conf.pdf