$(function(){ var pattern ={ // /products/list.php の変換マスタ // "カテゴリID":"変換後ファイル名" "category_list":{ "44" :"mentaltraining", "70" :"stream/mentaltraining" }, "products_category_list":{ "998" :"mentaltraining", "999" :"mentaltraining", "1000" :"mentaltraining", "1270" :"mentaltraining", "1271" :"mentaltraining", "1272" :"mentaltraining", "1273" :"mentaltraining", "1274" :"mentaltraining", "1388" :"mentaltraining", "1389" :"mentaltraining", "1390" :"mentaltraining", "1391" :"mentaltraining", "2482" :"stream/mentaltraining", "2483" :"stream/mentaltraining", "2484" :"stream/mentaltraining", "2748" :"stream/mentaltraining", "2749" :"stream/mentaltraining", "2750" :"stream/mentaltraining", "2751" :"stream/mentaltraining", "2752" :"stream/mentaltraining", "2864" :"stream/mentaltraining", "2865" :"stream/mentaltraining", "2866" :"stream/mentaltraining", "2867" :"stream/mentaltraining", "3054" :"stream/mentaltraining" } }; /* リンク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); } } }); });