ITOBEN STYLE > EC-CUBE2.12:GoogleMapを商品詳細ページに表示する 2012年10月6日カテゴリー:未分類 EC-CUBE2.12:GoogleMapを商品詳細ページに表示する ▼管理画面での登録 クリックすると、本サイトでカスタマイズした「colorbox」で開きます。 サンプルはこちら (1)データベース(dtb_products)にカラムを追加 [php] ALTER TABLE dtb_products ADD map_url text [/php] (2)ファイルに追加 ■data/class/pages/admin/products/LC_Page_Admin_Products_Product.php(3カ所) ① function lfInitFormParam(&$objFormParam, $arrPost)内の「$objFormParam->addParam(“メーカーURL”・・・」の次に [php] $objFormParam->addParam(“地図 URL”, “map_url”, STEXT_LEN, ‘KVna’, array(“SPTAB_CHECK”, “MAX_LENGTH_CHECK”)); // ■GoogleMap ①/③ [/php] ② 986行目あたりの「// 配列の添字を定義」の箇所に、’map_url’を追加する。 [php] ‘sale_limit’, ‘deliv_date_id’, ‘maker_id’, ‘note’); ↓(変更) ‘sale_limit’, ‘deliv_date_id’, ‘maker_id’, ‘note’, ‘map_url’); // ■GoogleMap②/③ [/php] ③ 上記の下「// INSERTする値を作成する。」の箇所 $sqlval[‘creator_id’] = $_SESSION[‘member_id’];の次に [php] $sqlval[‘map_url’] = $arrList[‘map_url’]; // ■GoogleMap ③/③ [/php] ■data/Smarty/templates/admin/products/product.tpl 「メーカーURL」の行の下に追加 [php] 地図 URL(緯度・経度を入力) ① Googleマップにアクセスします。 http://maps.google.co.jp/ ② 表示したい場所を検索します。 ③ 地図上の目的の場所で右クリックして,メニューから「この場所について」を選択して緯度と経度を取得します。 入力例) 34.683652,135.491531 ■data/Smarty/templates/admin/products/confirm.tpl 「メーカーURL」の行の下に追加 [php] 地図 URL [/php] ■class/SC_Product.php 621行目あたりの「,dtb_products.note」の次に追加 [php] ,dtb_products.map_url [/php] ■data/Smarty/templates/default/products/detail.tpl ★class=”cbox_map”は、ColorBoxが適用されていることを前提にした記述。ColorBoxを適用しない場合は、target=”_blank”に変更すると新しいウィンドウでマップが表示される。 または、下記のように記述すれば、ポップアップウィンドウで開くこともできる。 ■data/Smarty/templates/default/site_frame.tpl ColorBoxが適用されている場合は下記を追加。(地図表示にColorBoxを利用) $(“.cbox_map”).colorbox({width:”650″, height:”500″, iframe:true}); ←スクリプトに追加する行 [php] [/php] (3)html/productsフォルダに、新たに「g_map.php」を作成する。 ■g_map.php [php] GoogleMap ‘); print(‘‘); } else { print(‘‘); print(‘‘); } ?> [/php]
▼管理画面での登録
クリックすると、本サイトでカスタマイズした「colorbox」で開きます。
サンプルはこちら
(1)データベース(dtb_products)にカラムを追加
[php]
ALTER TABLE dtb_products ADD map_url text
[/php]
(2)ファイルに追加
■data/class/pages/admin/products/LC_Page_Admin_Products_Product.php(3カ所)
① function lfInitFormParam(&$objFormParam, $arrPost)内の「$objFormParam->addParam(“メーカーURL”・・・」の次に
[php]
$objFormParam->addParam(“地図 URL”, “map_url”, STEXT_LEN, ‘KVna’, array(“SPTAB_CHECK”, “MAX_LENGTH_CHECK”)); // ■GoogleMap ①/③
[/php]
② 986行目あたりの「// 配列の添字を定義」の箇所に、’map_url’を追加する。
[php]
‘sale_limit’, ‘deliv_date_id’, ‘maker_id’, ‘note’);
↓(変更)
‘sale_limit’, ‘deliv_date_id’, ‘maker_id’, ‘note’, ‘map_url’); // ■GoogleMap②/③
[/php]
③ 上記の下「// INSERTする値を作成する。」の箇所
$sqlval[‘creator_id’] = $_SESSION[‘member_id’];の次に
[php]
$sqlval[‘map_url’] = $arrList[‘map_url’]; // ■GoogleMap ③/③
[/php]
■data/Smarty/templates/admin/products/product.tpl 「メーカーURL」の行の下に追加
[php]
(緯度・経度を入力)
② 表示したい場所を検索します。
③ 地図上の目的の場所で右クリックして,メニューから「この場所について」を選択して緯度と経度を取得します。
入力例) 34.683652,135.491531
■data/Smarty/templates/admin/products/confirm.tpl 「メーカーURL」の行の下に追加
[php]
[/php]
■class/SC_Product.php 621行目あたりの「,dtb_products.note」の次に追加
[php]
,dtb_products.map_url
[/php]
■data/Smarty/templates/default/products/detail.tpl
★class=”cbox_map”は、ColorBoxが適用されていることを前提にした記述。ColorBoxを適用しない場合は、target=”_blank”に変更すると新しいウィンドウでマップが表示される。
または、下記のように記述すれば、ポップアップウィンドウで開くこともできる。
ColorBoxが適用されている場合は下記を追加。(地図表示にColorBoxを利用)
$(“.cbox_map”).colorbox({width:”650″, height:”500″, iframe:true}); ←スクリプトに追加する行
[php]
[/php]
(3)html/productsフォルダに、新たに「g_map.php」を作成する。
■g_map.php
[php]
‘);
print(‘‘);
}
else {
print(‘‘);
print(‘‘);
}
?>
[/php]
アーカイブ
カテゴリー