ブロックは管理画面から設置できる便利な機能ですが、管理画面からは#headerや#main_bottomなどいくつか決められた場所にしかブロックを設置できません。

ではブロックを任意の場所で呼び出し表示したい場合はどうすれば良いのでしょうか?

ブロックを管理画面以外から設置する場合はページのテンプレートファイル(Twig)に直接ブロック呼び出しの記述を書くことで実現可能です。

静的ブロックの場合

(例)ギャラリー、ロゴ, etc

いつも同じコンテンツが表示される静的ブロックの場合はブロックのテンプレートファイルをincludeすることで表示されます。’Block/xxxxxxx.twig’の部分にテンプレート名を入力してください。

動的ブロックの場合

(例)カゴの中、カテゴリ, etc

動的ブロックの場合は対応するコントローラを呼び出し処理を行う必要があるため、上のようなコードで呼び出します。block_xxxxxxxの部分にはブロックのrouteを記述し、ブロックに対応するURLをリクエストすることで返ってきたコンテンツを挿入します。サーバーでiframeを実行しているようなものとお考えください。

関連するカスタマイズ

3.0.15でtwigキャッシュが溜まりすぎて操作できなくなる不具合の修正... Twigのバージョン1.33にはキャッシュファイルが大量増殖するバグがあることが明らかになっています。 https://github.com/twigphp/Twig/issues/2485 場合によってはキャッシュが何GBになることもあり、サーバーを停止してしまう可能性もある不具合です。 ...
商品に何日間か自動で「新着」タグを表示する方法... 新規商品に自動で新着タグを表示したいというご要望を良くお聞きします。 管理画面のタグ機能を利用する方法もありますが、やはり自動で表示される方が便利ですよね。 この機能はdate関数によってTwigテンプレートを少し修正するだけで実現することができます。 登録から3日以内の商品に「新...
Twigテンプレート内で数値をゼロ埋めする方法... IDや金額、年月日といった数値をゼロ埋めして表示したいという場面に出会うことがあります。 phpでいうsprintf('%07d', 1)というような記述をTwigテンプレートの変数に対して行いたい時はどう書けばいいのでしょうか? EC-CUBEでは画面上に数字を頻繁に表示します...
動的ブロックの作成方法 動的ブロックとは何か? 動的ブロックとはユーザー、時間帯、表示するページなどによって内容を変えることができるブロックです。EC-CUBE3の場合は独立したURIを持った1つの「ページ」だと考えれば本質に近いと思います。 Twigには別のページをテンプレート内に読み込む仕組みがあり、それを応用...

弊社はEC-CUBE公式インテグレートパートナーです。