web-dev-qa-db-ja.com

Ubercartカートページの属性の順序を変更する方法

スクリーンショットでは、この製品の属性がランダムに表示されているように見えます。実際には、属性IDで並べられているようです。この順序を変更する方法はありますか?各属性には「リストの位置」プロパティがありますが、これは商品ページのみのようで、カートには影響しません。

enter image description here

8
T Nguyen

Ubdercartの theme_uc_attribute_add_to_cart 関数と、それが属性を含む出力のテーマをどのように設定しているかを見ると、hook_form_alterを実装することで目的を達成できるようです。最初にform_idを見つけることから始めます。おそらく、関数にデバッグ文を追加することから始めます。次に、hook_form_alterを実装し、属性の順序を希望する順序に変更します。
これで期待どおりの結果が得られた場合は、ロジックに従って、属性のテーマ設定や構築が行われている場所を確認してください。次に、そのメカニズム(form_alterまたは前処理関数)にフックします。そうすれば、あなたが望むことを達成できると確信しています。お役に立てれば。

1
awm