3

これについて多くの記事で使用されている専門用語はTemplate Variablesです。Shopware 5 フロント エンドの特定のフィールド (例: 製品名) のコントローラーで指定された変数名を見つける方法を理解しようとしています。

たとえば、記事名のテンプレート変数が として指定されていることがわかります$sArticle.articleName。ソースコードを手動で確認したところ、これを見つけました。

特定の製品に与えられた割引値を見つけたいとしましょう。これを自分のテーマに印刷するにはどうすればよいですか? どの変数を使用する必要があり、それを見つける簡単な方法は何ですか。

バックエンドからすべての変数に値を割り当てることができますが、私の質問は、技術開発側に関してテーマを更新するときに、テーマ ファイルでそれらにアクセスする方法です。

注意してください: 私は、shopware5 の技術的な側面を理解しようとしています。

4

2 に答える 2

3

{debug} 関数を使用すると、通常、割り当てられたすべての変数のリストが表示されます。$Controllerこのリストには、現在関連しているコントローラーへのヒントを与える変数も含まれている必要があります。

残念ながら、割り当てられた変数がどこから来たのかを特定することはできません。Shopware のイベント ドリブン アーキテクチャにより、リクエストが関連するコントローラにディスパッチされた後、変数をビューに割り当てることができます。これは、サード パーティのプラグインや特定のイベント リスナー、ストア フロント デコレーター (Shopware 5) を介して変数を割り当てた可能性があることを意味します。

敬具!

于 2016-02-12T12:36:38.220 に答える
2

テンプレート内で変数を使用したい場合は、プラグインを作成してコントローラー変数をビューに割り当てる必要があります。

ショップウェアのドキュメントでGlobale Variablen im Template verwendenをチェックしてください。

どの変数がすでに割り当てられているかを確認したい場合{debug}は、テンプレートで使用できます。また{$sArticle|var_dump}、特定の変数をデバッグする場合にも非常に役立ちます ($sArticle}この例では)。

ショップウェアがオブジェクトのメンバーをビューに割り当てることを知っておく必要があります。

于 2016-02-11T19:06:33.677 に答える