6月
12
12
zen-cartには、インフォメーションサイドボックスに「定番ページ」という空白ページがある。管理画面からHTMLコードを入力したり、表示の制御もできるため、ショップや商品の情報を掲載するにはとても便利な機能である。
ただ、page2~page4の3ページしかなく、これだけでは足らなくなる状況もままあるため、定番ページは増やしておきたい。
この方法・話題については、Zen-Cartコミュニティ掲示板において、『新しい自由編集ページの作成』というトピックがあるが、情報が足りない部分や一部に間違いもあったようなので、このトピックを参考にしながらまとめてみた。
[spoiler]
【注意】
- うちの環境がv1.2なので、v1.3な方は若干異なる場合があるかもしれません。ツッコミ入れてください
- オーバーライドを実施している場合は、間違いなくオーバーライドファイル側で作業すること。特にlanguagesフォルダ。
- 以下のphpやSQLのコード中で、シングルクォートが全角になっている箇所がありますので、そこはすべて半角に変換して使用してください。
- incluedes/filenames.phpファイル内(75行目および116行目付近)に、次の行を追加。
define(’FILENAME_DEFINE_PAGE_5′, ’define_page_5′);
define(’FILENAME_PAGE_5′, ’page_5′); - incluedes/languages/japanese.phpファイル内(167行目付近)に、次の行を追加。
define(’BOX_INFORMATION_PAGE_5′, ’ページ5′);
- incluedes/modules/sideboxes/more_information.phpファイル内(30行目付近)に、次の行を追加。
$more_information[] = ’<a href="http://blog.eggrice.com/wp-admin/%27%20.%20zen_href_link%28FILENAME_PAGE_5%29%20.%20%27">’ . BOX_INFORMATION_PAGE_5 . ’</a>’;
- incluedes/languages/japanese/page_4.phpファイルをコピーして、同一フォルダ内に貼り付け、page_5.phpにリネームする。
- incluedes/languages/japanese/html_includes/difine_page_5.phpファイルをコピーして、同一フォルダ内に貼り付け、difine_page_5.phpにリネームする。
- incluedes/modules/pagesフォルダ内に、page_5フォルダを新規作成。
- incluedes/modules/pages/page_4/header_php.phpをコピーして、(6)で作成したincluedes/modules/pages/page_5フォルダ内にheader_php.phpファイルを貼り付ける。
- incluedes/modules/pages/page_5/header_php.phpファイル内(27行目付近)の、
$define_page_4 = zen_get_file_directory(DIR_WS_LANGUAGES . $_SESSION[’language’] . ’/html_includes/’, FILENAME_DEFINE_PAGE_4, ’false’);
上の行を、下の行のように変更。
$define_page_5 = zen_get_file_directory(DIR_WS_LANGUAGES . $_SESSION[’language’] . ’/html_includes/’, FILENAME_DEFINE_PAGE_5, ’false’); - includes/templates/テンプレートフォルダ/templates/tpl_page_4_default.phpファイルをコピーして、同一フォルダ内に貼り付け、tpl_page_5_default.phpにリネームする。
- includes/templates/テンプレートフォルダ/templates/tpl_page_5_default.phpファイル内(35行目付近)の、
上のコードを、下のコードのように変更。
- ウェブアプリケーションの『phpMyAdmin』を使って、以下のSQLを実行する。
phpMyAdminの具体的な操作方法:
サイドバーからzen-cartのデータベースを選択したら、メイン画面上のSQLタブをクリック。
メイン画面の「データベース ●●●● にSQL 照会を実行する:」のテキストフォーム内に、以下のSQLコードをコピー・貼り付けして「実行する」ボタンを押す。insert into zen_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function) values (’Define Page 5′, ’DEFINE_PAGE_5_STATUS’, ’1′, ’Enable the Defined Page 5 text?
0= OFF
1= ON’, ’25′, ’85′, now(), now(), NULL, ’zen_cfg_select_option(array(\’0\’, \’1\’),’);UPDATE zen_configuration SET configuration_title = ’自由編集ページ(Define Page) 5′, configuration_description = ’自由編集ページ(Define Page) 5を表示しますか?
\r\n・0= OFF
\r\n・1= ON’ WHERE configuration_key = ’DEFINE_PAGE_5_STATUS’;※ただし、上記SQL中のプレフィックスである「zen_」の箇所は、各自異なる場合があるので注意。(zen-cartのインストール時にプレフィックスを変更していなければ、デフォルトである「zen_」となっているはず)
以上です。お疲れさまでした~
[/spoiler]
手順.3
> incluedes/modules/sideboxes/infomation.php
は「incluedes/modules/sideboxes/more_infomation.php」かと、しばし考えてみた。v1.3だけかもしれませんが・・・
しかし、すばらしい記事です。ありがとうございます。
ちなみにv1.3ならSQLを
ここから—————————–
insert into configuration
(
configuration_title,
configuration_key,
configuration_value,
configuration_description,
configuration_group_id,
sort_order,
last_modified,
date_added,
use_function,
set_function
)
values
(
‘Define Page 5′,
‘DEFINE_PAGE_5_STATUS’,
‘1′,
‘Enable the Defined Page 5 text?0= リンク:表示 編集領域:非表示1= リンク:表示 編集領域:表示2= リンク:非表示 編集領域:表示3= リンク:非表示 編集領域:非表示’,
‘25′,
‘85′,
now(),
now(),
NULL,
‘zen_cfg_select_option(array(\’0\’, \’1\’, \’2\’, \’3\’),’
);
UPDATE configuration
SET
configuration_title = ‘自由編集ページ (Define Page) 5′,
configuration_description = ‘自由編集ページ(Define Page) 5を表示しますか?\r\n0= リンク:表示 編集領域:非表示1= リンク:表示 編集領域:表示2= リンク:非表示 編集領域:表示3= リンク:非表示 編集領域:非表示’ WHERE configuration_key = ‘DEFINE_PAGE_5_STATUS’;
ここまで—————————–
にすれば、おk♪
mokaさん
ご指摘ありがとうございます!
私の記事が間違っておりました。mokaさんのご指摘通り、3で修正するファイルは「more_information.php」が正解です。
ご迷惑をおかけしました。記事は修正しておきます。
また、v1.3用のSQLクエリまで載せていただいて、重ね重ねありがとうございます。
v1.3な皆様、ぜひお試しください。
[…] 参考にしたのは、『新しい自由編集ページの作成』と『定番ページ(自由編集ページ)を追加する』。どちらもかなり詳しく書かれているので、順を追って作業を進める。以下、覚書。 […]