MODx Revolution用のShopkeeperモジュールの開発は 進行中です。 このモジュール(およびスニペット)はすでに多くの人に知られており、 MODx Evolutionでオンラインストアを作成するために使用されています。
ShopkiperをRevoに移行することに加えて、得られた経験を考慮して完全なコードリファクタリングを計画しています。 ただし、バージョンbeta1を使用して簡単なストアを作成できます。
すでに準備ができているもの:
- 制御システムからの完全自動インストール。
- バスケットに製品を追加します。
- 店長と注文管理モジュールにメールで注文を送信する。
- 注文ステータスを設定する機能。
- ステータスとその色を編集する機能。
- 個別のMODXコンテキストに商品を配置する可能性(個別のカタログのカスタマイズに便利);
- 登録ユーザーへの注文のリンク。
パッケージのインストールは非常に簡単です。
- shopkeeper-2.0-beat1.transport.zipアーカイブをサイトのcore / packages /フォルダーにダウンロードします。
- コントロールパネルで、[ システム] -> [ パッケージ管理] -> [ 新しいパッケージを追加] -> [ ローカルでパッケージを検索] -> [ 次へ]に移動します。
- パッケージ「ショップキーパー」がパッケージテーブルに表示されます。 [インストール]ボタンをクリックします。
- インストールを完了します。
前と同じように、MODX用の既製のアドオンが最大限まで使用されます。 商品を表示するには、 getResourcesスニペットが使用されます。 注文を郵便で注文管理システムに送信するには、 FormItスニペットが使用されます。 登録と承認には、 ログインスニペットを使用できます。 このキットには、 FormItのフックとして使用されるshk_fihookスニペットと、コンテキストを切り替えるためのcontextSwitchプラグインも含まれています。
個別のコンテキストで商品を配置する必要はありませんが、多くの製品が計画されている場合(2000以上)に推奨されます。 これにより、ディレクトリで個別の設定が可能になります。たとえば、必要に応じて、フレンドリーURL(friendly_urls)を無効にします。
一般に、個別のコンテキストは、Evolutionの個別のデータベーステーブルとほぼ同じです。 大量の商品(MODXリソース)で作業速度をテストしたことはありませんが、friendly_urlsを(一時的な解決策として)無効にしても問題はありません。
製品のコンテキストの作成:
- メニューの[システム]-> [コンテキスト]に移動し、[新規作成]ボタンをクリックします。 [コンテキストキー]フィールドに、「カタログ」と入力します。 次に、リスト内のコンテキスト行を右クリックして、「コンテキストの更新」を選択します。
- コンテキスト設定:
site_start:20
error_page:21
無許可ページ:22
20はディレクトリドキュメントID、21はページ404、22はページ403です(アクセスは拒否されます)。
- 「カタログ」のコンテキストでコンテナドキュメント「カタログ」を作成します。 内部にディレクトリ構造を作成します。
- 「web」コンテキストで、ドキュメントリンク「Catalog」を作成し、フィールド「Link」に「catalog /」と入力します。
- わかりやすいURLとApacheサーバーを使用する場合は、.htaccessを文字列に置き換えます
にRewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
RewriteRule ^(catalog)?(\/)?(.*)$ index.php?c=$1&q=$1$2$3 [L,QSA]
- contextSwitchプラグインがインストールされていることを確認します(コア/コンポーネント/ショップキーパー/要素/プラグイン/ context_switch.php)。
ショップキーパースニペットを呼び出す例:
[[!Shopkeeper? &cartType=`full`&flyToCart=`image`&orderFormPage=`12`]]
カタログコンテキストからの商品の結論:
[[!getResources? &context=`catalog` &tplPath=`[[++core_path]]components/shopkeeper/elements/chunks/ru/` &tpl=`@FILE chunk_shopStuff.tpl` &includeTVs=`1` &parents=`9` ]]
更新しました
beta3バージョンはすでに利用可能です(コントロールパネルからダウンロードできます)。