Prestashop 1.4.9 の Appixia
BasicCategoryListActivity を使用して、ストアにカテゴリを表示しています。特定の ID に従ってカテゴリ リストをフィルタリングしようとしています。同じフィルターの下に 2 つの CategoryId を追加するにはどうすればよいですか? これは可能ですか?
Prestashop 1.4.9 の Appixia
BasicCategoryListActivity を使用して、ストアにカテゴリを表示しています。特定の ID に従ってカテゴリ リストをフィルタリングしようとしています。同じフィルターの下に 2 つの CategoryId を追加するにはどうすればよいですか? これは可能ですか?
この回答は、Prestashopモジュール1.0.4を搭載したAppixia MobileEngine5用に更新されています。
現在使用しているモジュールは、主に単一のカテゴリIDフィルタで動作することを目的としています。Appixiaの場合と同じように、通常、ほとんどの制限を回避して、好きなことを行うことができます。ここに2つのアイデアがあります:
回避策1:プラグインオーバーライドを使用してこれを実装する
このアプローチでは、アプリで何も変更する必要はありません。既存のモジュールをそのまま使用して、単一のカテゴリIDフィルターを使用できます。単一のカテゴリIDにフィルタを設定し、存在しない大きな数値(1001など)を作成します。
実際に行うことは、カテゴリ1001が要求されたときに、サーバーが両方のカテゴリの製品で同時に応答するようにすることです。
ここでプラグインオーバーライドの例をいくつか見ることができます。
必要なオーバーライドはにありますItems.php
。関数を見てくださいoverrideItemListFilters
、それはあなたのニーズにぴったりになるでしょう。Equal
値付きのフィルタータイプを見つけて1001
、オーバーライドでInGroup
2つのカテゴリIDを持つフィルターに変更するだけです。
回避策2:アプリでより高度なアイテムリストモジュールに切り替える
別の代替アプローチは、アプリを変更するだけで、サーバーに触れることはありません。基本的なアイテムリストのアクティビティはかなり制限されています。アプリでより強力なアイテムリストモジュールに移動すると、フィルターをより細かく制御できるようになります。このチュートリアルをご覧ください。のようなアイテムリストはItemGridView
、必要なフィルターをサポートしているため、直接指定できますInGroup
。