$(function(){ var pattern ={ // /products/list.php の変換マスタ // "カテゴリID":"変換後ファイル名" "category_list":{ "23" :"training", "54" :"stream/training" }, "products_category_list":{ "48" :"training", "158" :"training", "382" :"training", "383" :"training", "998" :"training", "999" :"training", "1000" :"training", "1332" :"training", "1333" :"training", "1334" :"training", "1335" :"training", "1742" :"stream/training", "1952" :"stream/training", "1953" :"stream/training", "2482" :"stream/training", "2483" :"stream/training", "2484" :"stream/training", "2810" :"stream/training", "2811" :"stream/training", "2812" :"stream/training", "2813" :"stream/training" } }; /* リンク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); } } }); });