バージョン選択

フォーラム

メニュー

オンライン状況

38 人のユーザが現在オンラインです。 (29 人のユーザが フォーラム を参照しています。)
登録ユーザ: 2
ゲスト: 36
motyy7788 tattsu もっと...

サイト内検索

質問 > フロント機能 > Controllerファイルで取得した外部データを複数のtwigファイルへ渡したい。

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
togaGreen
投稿日時: 2023/5/29 11:03
対応状況: −−−
新米
登録日: 2023/5/19
居住地:
投稿: 10
Controllerファイルで取得した外部データを複数のtwigファイルへ渡したい。
お世話になります。
以下の記事を参考にwordpress取得した値をindex.twigに渡し、TOPページで記事情報を表示しています。
https://amidaike.hatenablog.com/entry/2020/12/04/000827

その中でheadタグに動的な値(wordpressで取得したデータ)を挿入したくdefault_frame.twigにも値を渡したいと考えています。

EC-CUBE上のControllerは複数のtwigに値を渡すことは可能でしょうか?
それとも、一度index.php側で値を受け取ってjsでheadタグに挿入しないと行けないでしょうか?

よろしくお願いします。

【環境】
OS: mac (MAMP)
PHP: 7.4.33
EC-CUBE: 4.2.1
node: 10.24.1
mcontact
投稿日時: 2023/5/29 11:12
対応状況: −−−
登録日: 2022/1/22
居住地:
投稿: 1279
Re: Controllerファイルで取得した外部データを複数のtwigファイルへ渡したい。
> その中でheadタグに動的な値(wordpressで取得したデータ)を挿入したくdefault_frame.twigにも値を渡したいと考えています。
> EC-CUBE上のControllerは複数のtwigに値を渡すことは可能でしょうか?
> それとも、一度index.php側で値を受け取ってjsでheadタグに挿入しないと行けないでしょうか?

どの画面でWordpressの値を取得して、表示するかによると思います。
複数の画面でWordpressの値を取得して値を表示する場合は、各画面のController部に定義が必要になります。
※共通処理を定義した場合も同じように、処理の記述は必要になります。
商品詳細画面であれば、下記のあたりのController部に返す変数を定義すれば良いです。
https://github.com/EC-CUBE/ec-cube/blob/4.2/src/Eccube/Controller/ProductController.php#L249-L255


----------------
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
EC-CUBEインテグレートパートナー【ゴールド】ランク
M&I Works
URL: https://miworks.biz/
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

akako152
投稿日時: 2023/5/29 11:35
対応状況: 解決済
半人前
登録日: 2021/4/7
居住地: 東京都
投稿: 16
Re: Controllerファイルで取得した外部データを複数のtwigファイルへ渡したい。
コントローラーファイルで外部データを取得します。

取得したデータをTwigのレンダリングメソッドにパラメータとして渡します。例えば、render()メソッドを使用してindex.twigファイルに渡す場合、次のようにします:

return $this->render('index.twig', [
'externalData' => $externalData, // 外部データをパラメータとして渡す
]);

index.twigファイル内で、渡されたデータを使用して表示を行います。

default_frame.twigファイル内でも同様に、コントローラーファイルから受け取ったデータを使用できます。index.twigと同じように、パラメータとして渡されたデータを利用することができます。

<!-- default_frame.twig -->
<!DOCTYPE html>
<html>
<head>
<title>My Page</title>
<meta charset="UTF-8">
<meta name="description" content="{{ externalData.description }}">
<!-- 外部データを使用して動的な値を挿入 -->
</head>
<body>
<!-- コンテンツの表示 -->
{{ content }}
</body>
</html>
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,682名です
総投稿数は109,930件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2311
5
umebius
2085
6
yuh
1819
7
h_tanaka
1638
8
red
1569
9
mcontact
1279
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.