カタログ画面トップページにニュースを表示させる
【Newsbox on default.php 2.1J】を導入
掲載日などを指定して表示させることが出来るので、あらかじめニュースを作成し、期日になれば表示するといった利用が可能。
ダブルクォーテーションの取り扱いなど、標準ではバグが残っているので、数箇所のバグ修正を行った。
ニュースの表示数の切替は最大値から設定を可能に。
管理画面より、テンプレートを選択することで、ニュースの表示形式を自由に切り替えられるように変更。
ニュースに限らず、トップページのコンテンツとして、利用出来る。
Simple Template System (STS)を導入しました。
osCommerceの画面構成では
| header.php | ||
| column_left.php | いろいろ(笑) |
column_right.php |
| footer.php | ||
と、見た目は普通の画面でも、実は5つのファイルから構成されており、しかもPHPのコードの記述の中から、htmlタグを見つけ出して、デザインを変更しなければいけないので、とても大変です。
それを解決したのが、グリニッジ有限会社 の田中さまが提供されているAlterなんですね。
Smartyというテンプレートエンジンを使用して、htmlの部分だけを抽出し、デザインを
変更しやすくされています。
ですが、このAlterでも
header.html
column_left.html
column_right.html
footer.html
と、各ファイルにあわせて抽出されているので、全体像を把握しにくいのと、
例えば、column_leftにあるカテゴリをcolumn_rightに持っていくことや、
headerのパン屑リストをfooterに配置させるなど、別の場所へ移動させるには
大元のPHPファイルを対応できるように加工しなければなりません。
デザインの部分はデザイナーに、プログラムの部分はプログラマーにという感じで、
お互いが意識しなくても構成できるようにする為に、osCommerce本家の
Contributions で公開されている、Simple Template System (STS) を導入することにしました。
これにより、Alterでは、
header.html
column_left.html
column_right.html
footer.html
で構成されていたデザインが、
sts_template.html
の1つのファイルでデザインが行えるようになり、なおかつ、
header.php
column_php
column_php
footer.php
のそれぞれの機能が、画面内に自由に配置できるようになります。
対応しているバージョンは、残念ながらMS2(Milestone2)からとなっており、私の
MS1(Milestone1)では、無理かと思いましたが、ダメ元で導入!(笑)
以外や以外、動くもんです(笑)
MS2かどうかのチェックを行っているところと、MS2独自の部分を数箇所修正すれば、
問題なく動作しました。
STSのバージョンは、
STS 1.0
全体のサイトデザインのみをレイアウト出来る。
STS 2.0
全体のサイトデザインと、商品詳細ページのレイアウトが出来る。
STS 3.0
全体のサイトデザインと、トップページ、商品詳細ページ(商品ごとにレイアウト変更可能)の
レイアウト出来る。
STS 4.1 (STS PLUSと統合)
全体のサイトデザインと、トップページ、商品詳細ページ(商品ごとにレイアウト変更可能)の
レイアウト出来る。
管理画面よりテンプレートの切替や、STSの有効/無効を切替られるようになった。
と、たくさんあるのですが、当方のosCommerceには、STS 3.0を導入しました。
理由としては、STS 4.1は現時点で解決されていないバグがあり、商品詳細ページ(product_info)の
レイアウトが、2つのhtmlを編集する形となっていることが好ましくなかった為です。
そのバグも、初めはMS1に導入したことによる不具合かと思ったのですが、別途MS2を導入し、
STS 4.1を適用しても同じ症状が発生した為、STS 3.0を採用しました。
STS4.1フォーラムでは、バグについて絶えず情報交換されており、すぐに修正モジュールが公開されるでしょうから、これから導入を検討される方は、STS4.1がいいかもしれません。
STS3.0は打ち止めですので。
STS 3.0はどれもBetaと書いてあったので、大丈夫かな~と思ったのですが、STS 2.0を
受け継いでいたので、とても安定していると思います。
(テスト時は、ひとつのosCommerceに、STSの全バージョンが入ってました・・・切り替ながら見比べてた・・)
STS4.1のように、テンプレートを管理画面より切り替えるのは、そんなに難しいことではないので、
別途実装しました。
たくさん機能をつけた後の搭載なので、STSに対応させる必要があるものや、
バグなどありますが少しずつ直していきます~
MS2を見習って
catalog/includes/application_top.php にて
define('FILENAME__
と定義されているものを、filenames.phpに、
define('TABLE_
と定義されているものを、database_tables.phpに分けました。
これで、application_top.phpがすっきり見やすくなりました。
いいっすよ、osCommerce。
初めて触れたきっかけは、ショップを運営する知り合いが、オンラインショップを始めたいと相談されたことです。
たまたまosCommerceの存在を知っていた私は、そのまま友人に薦めたのですが、パソコン音痴の友人が導入出来るはずもなく、初心者ながらも私が導入する羽目に・・・
初めは普通のosCommerceR6を導入したのですが、すごく良いタイミングで、グリニッジ有限会社 の田中さまが提供されているAlterを発見!
大変高機能でしたので、導入させていただきました。
素人だったので、ショップ公開まで、2ヶ月はかかったと思います。
店長の要望にこたえて、いろいろカスタマイズしました。
ちょっとのことでも調べるのが大変で、もちろんosCommerceの本も買いました!
本当に苦労したなあ。
そのAlterも、現在はAlter2へ移行中のようです。
Souceforgeにも申請されており、とても期待しているのですが、お忙しそうで次のリリースがなかなか出てこないですね。
残念(><)
今はAlterを使用せず、普通のosCommerceR6をカスタマイズしています。
osCommerceを機会に、PHPを勉強していきます~
