カスタム属性をいくつか定義し、Opencart管理パネルを介して製品に割り当てました。送料を調整するために、チェックアウト時にこれらの属性を取得しようとしています。
catalog/model/shipping/ups.php
現在、関数内のファイルで作業していますgetQuote
。私はこれに近づいています:
print_r($this->cart->getProducts());
これにより、次の製品データが得られます。
Array
(
[59] => Array
(
[key] => 59
[product_id] => 59
[name] => My Product Name
[model] => ABC
[shipping] => 1
[image] => data/myproduct.jpg
[option] => Array
(
)
[download] => Array
(
)
[quantity] => 1
[minimum] => 1
[subtract] => 1
[stock] => 1
[price] => 29.99
[total] => 29.99
[reward] => 0
[points] => 0
[tax_class_id] => 0
[weight] => 3.75
[weight_class_id] => 5
[length] => 0.00
[width] => 0.00
[height] => 0.00
[length_class_id] => 3
)
)
ただし、カスタム属性は返されません。製品 ID を属性取得関数に渡す良い方法があると確信していますが、それが見つかりません。Opencart のドキュメントは、開発側にとっては少し不足しており、Google ではうまくいきません。
通常grep
、探しているものを見つけるためにディレクトリ構造全体を調べますが、この特定の Web ホストではシェル アクセスが無効になっています :(.
編集
属性は、Opencart に組み込まれている新しい機能だと思います。カスタムフィールドのようなものです。
とにかく、管理者側では、[カタログ] > [属性] に移動し、"配送ボックスの種類" というカスタム属性を作成しました。次に、特定の製品の下に属性を設定できます。スクリーンショットを参照してください。私の目標は、「配送ボックスの種類」の値を取得することです。それはあなたの質問@Cleverbotに答えていますか?カスタム db クエリを実行してそれを取得できると確信していますが、属性を取得するための組み込み関数が必要ですか?