zencart メーカーimg 静的URL
がとらぼさんの 静的URLを導入しているが メーカー名一覧は静的になっていないので静的にする。
尚、当ページはサイドボックスメーカー画像一覧を使用しているのを前提にしている途中のめもめも。
(既存のメーカー名ドロップリストでは一部動的のまま)
includes/functions/html_output.php
-----------変更前--------------
if (!$static) {
if (zen_not_null($parameters)) {
if ((USER_FRIENDLY_URLS_REWRITE == 'true') &&
(!ereg('language', $parameters)) &&
(!ereg('manufacturers_id', $parameters)) &&
(!ereg('contact_us', $page)) &&
(!ereg('review', $page)) &&
(!ereg('review', $parameters))
) {
-----------変更後----赤字をコメントアウト----------
if (!$static) {
if (zen_not_null($parameters)) {
if ((USER_FRIENDLY_URLS_REWRITE == 'true') &&
(!ereg('language', $parameters)) &&
// (!ereg('manufacturers_id', $parameters)) &&
(!ereg('contact_us', $page)) &&
(!ereg('review', $page)) &&
(!ereg('review', $parameters))
) {
---さらに-次を追加-----------
elseif (($page == "index") && (ereg('manufacturers_id', $parameters))){
$parameters = str_replace('manufacturers_id=', 'manufacturers/', $parameters);
$link .= $parameters . '.html';
}
//その他の manufacturers_id に関しては未処理の為、現時点では 使いものにならないw
------------------
.htaccessに次を追加(\は¥マークの半角)
RewriteRule ^manufacturers/(.*)\.html /index.php?main_page=index&manufacturers_id=$1 [L]
----例えば-------
http://★★.●●/index.php?main_page=index&manufacturers_id=3
でアクセスした場合次のように表示される。
http://★★.●●/manufacturers/3.html
次の問題はw その他のmanufacturers_id を変更する。
画像メーカー一覧でアクセスした場合の次の処理をみつける。ここから先は 後日。
-------後日・・・以下のように修正してみた。これで おkかな?-------------
elseif (($page == "product_info") && (ereg('products_id', $parameters))){
の下に次の1行をたす。
$parameters = ereg_replace('manufacturers_id=[0-9_]{1,}&', '', $parameters);
------変更後-----------
elseif (($page == "product_info") && (ereg('products_id', $parameters))){
$pnum = str_replace('products_id=', 'pid', $parameters);
$pnum = ereg_replace('cPath=[0-9_]{1,}&', '', $pnum);
$parameters = str_replace("products_id=", "products/", $parameters);
$parameters = ereg_replace('cPath=([0-9_]{1,})&', '', $parameters);
$parameters = str_replace('action=notify&','notify', $parameters);
$parameters = str_replace('action=add_product&','add', $parameters);
$parameters = str_replace('&reviews_id=','review/', $parameters);
$parameters = str_replace('&action=notify_remove','notify_remove', $parameters);
$parameters = str_replace('&action=notify','notify', $parameters);
/////////////////////下の1行を追加
$parameters = ereg_replace('manufacturers_id=[0-9_]{1,}&', '', $parameters);
/////////////////////
$parameters = str_replace("products_id=", "products/", $parameters);
$link .= $parameters . '.html';
require("url_data.php");
if ($urlrpl[$pnum] != NULL) {
$link = ereg_replace("products/[0-9]{1,}", "products/$urlrpl[$pnum]", $link);
}
}
/////////////////////次を追加
elseif (($page == "index") && (ereg('manufacturers_id', $parameters))){
$parameters = str_replace('manufacturers_id=', 'manufacturers/', $parameters);
$link .= $parameters . '.html';
/////////////////////
---------------------------------
関連記事