$(function(){ var pattern ={ // /products/list.php の変換マスタ // "カテゴリID":"変換後ファイル名" "category_list":{ "27" :"english", "87" :"stream/english" }, "products_category_list":{ "54" :"english", "55" :"english", "397" :"english", "398" :"english", "399" :"english", "400" :"english", "401" :"english", "402" :"english", "403" :"english", "404" :"english", "405" :"english", "954" :"english", "955" :"english", "956" :"english", "957" :"english", "958" :"english", "959" :"english", "960" :"english", "961" :"english", "962" :"english", "963" :"english", "964" :"english", "2439" :"stream/english", "2440" :"stream/english", "2441" :"stream/english", "2442" :"stream/english", "2443" :"stream/english", "2444" :"stream/english", "2445" :"stream/english", "2446" :"stream/english", "2447" :"stream/english", "2448" :"stream/english", "2449" :"stream/english" } }; /* リンクURL書き換え */ $('a').each(function() { var ret = $(this).attr('href'); if(ret){ var res_data = null; var cat_res = ret.match(/\/products\/list\.php\?(.*)category_id=(\d{1,})(.*)/); // カテゴリ別商品ページ var detail_res = ret.match(/\/products\/detail\.php\?(.*)product_id=(\d{1,})(.*)/); // 商品詳細ページ // 初期化 var rep_url = null; var rep_param = ''; if(cat_res){ // カテゴリ別商品ページ用URL変換処理 res_data = cat_res; if((typeof res_data[2] != "undefined") && res_data[2] && (typeof pattern['category_list'][res_data[2]] != "undefined") && pattern['category_list'][res_data[2]]){ rep_url = window.location.protocol + '//' + window.location.host + '/' + pattern['category_list'][res_data[2]] + '.php'; } } else if(detail_res){ // 商品詳細ページ用URL変換処理 res_data = detail_res; if((typeof res_data[2] != "undefined") && res_data[2] && (typeof pattern['products_category_list'][res_data[2]] != "undefined") && pattern['products_category_list'][res_data[2]]){ rep_url = window.location.protocol + '//' + window.location.host + '/' + pattern['products_category_list'][res_data[2]] + '_' + res_data[2] + '.php'; } } if(res_data && rep_url){ if((typeof res_data[1] != "undefined") && res_data[1]){ rep_param = '?' + res_data[1].slice(0, -1); } if((typeof res_data[3] != "undefined") && res_data[3]){ if(rep_param){ rep_param = rep_param + res_data[3]; }else{ rep_param = '?' + res_data[3]; } } if(rep_param){ rep_param = rep_param.replace('??','?'); rep_param = rep_param.replace('?&','?'); rep_param = rep_param.replace('&&','&'); } $(this).attr('href', rep_url + rep_param); } } }); });