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バージョンはすでに利用可能です(コントロールパネルからダウンロードできます)。