質問 > フロント機能 > ブロック設定で作成した「tpl」ファイルに変数を渡したい |
フロント機能
スレッド表示 | 古いものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
non888 |
投稿日時: 2019/3/6 13:43
対応状況: 解決済
|
常連 登録日: 2019/2/4 居住地: 投稿: 65 |
Re: ブロック設定で作成した「tpl」ファイルに変数を渡したい data/class/pages/frontparts/bloc/LC_Page_FrontParts_Bloc_News.php
data/class_extends/page_extends/frontparts/bloc/LC_Page_FrontParts_Bloc_News_Ex.php 上記を参考に作成したところうまくいきました。 ありがとうございます。 |
468 |
投稿日時: 2019/3/6 12:21
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: ブロック設定で作成した「tpl」ファイルに変数を渡したい ブロックが表示されなくなったのは指定したphpでエラーが発生しているのではないでしょうか?
新しく追加されたPHPは、 LC_Page_FrontParts_Bloc_Exを継承したクラスになっていますか? actionメソッドに実現したい内容を記載すれば良いかと思います。 連想配列を$this->変数に格納すればtpl側で取得できるかと思います。 本当はSQLの発行等は、ECCUBE内のルールに合わせて記載されたほうが統一性があって良いのではないかと思いますが、 (SC_Query_Exクラスを利用する方法) 絶対ではないので、実装しやすい形の対応でも問題ないと思います。
|
yuh |
投稿日時: 2019/3/6 12:16
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1819 |
Re: ブロック設定で作成した「tpl」ファイルに変数を渡したい data/class/pages/frontparts/bloc/LC_Page_FrontParts_Bloc_News.php
data/class_extends/page_extends/frontparts/bloc/LC_Page_FrontParts_Bloc_News_Ex.php とかを参考に作成してみてください。
|
non888 |
投稿日時: 2019/3/6 12:03
対応状況: −−−
|
常連 登録日: 2019/2/4 居住地: 投稿: 65 |
Re: ブロック設定で作成した「tpl」ファイルに変数を渡したい ご返答ありがとうございます。
php_pathを変更してみましたが、ブロックが表示されなくなってしましました。 やりたい事としては、下記プログラムでDBから取得した配列を、tpl側でforeachを使用し、画像のパスなどを出力したく思っております。 ========================================= <?php require_once('common.php'); /** * 登録済みスライド画像取得 **/ $sql = 'SELECT COUNT(*) FROM slide_img'; $arr = []; $arr[':id'] = $s_id; $rows = select($sql, $arr); $row = reset($rows); if($row["COUNT(*)"] != 0){ // データベースからレコードを取得 $sql = 'SELECT * FROM slide_img'; $pdo = connect_db(); $stmt = $pdo->query($sql); //連想配列で取得 while($date = $stmt->fetch(PDO::FETCH_ASSOC)){ $dates[] = $date; } } ==================================== この場合どのように設定したらいいのでしょうか。 |
468 |
投稿日時: 2019/3/6 11:36
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: ブロック設定で作成した「tpl」ファイルに変数を渡したい 管理画面のブロック設定で追加したブロックのtplには、そのままでは変数を渡す事が出来ません。
データベースの値を変更し、ご自身でphpファイルを追加する必要があります。 具体的には、 dtb_blocテーブルのphp_pathカラムにphpファイルのパスを設定し(phpmyadmin等で直接DBを操作します)、 上記php_pathカラムに指定したファイルをサーバに設置します。 (/data/class/pages/frontparts/bloc/以下にファイルを追加していく形になるかと思います。) dtb_blocテーブルにある他のブロックを参考にしてみてください。 /data/class/pages/frontparts/bloc/以下にあるphpファイルも参考になるかと思います。
|
non888 |
投稿日時: 2019/3/6 11:22
対応状況: −−−
|
常連 登録日: 2019/2/4 居住地: 投稿: 65 |
ブロック設定で作成した「tpl」ファイルに変数を渡したい EC-CUBE:2.13.5
管理画面よりブロック設定で新規に作成したブロックの「tpl」ファイルに、phpの変数に格納したデータを渡したいのですが、この「tpl」ファイルがClassのどのPHPファイルから読み込まれているか分からない状態です。 ブロック設定で作成した、「tpl」ファイルに変数を渡す場合どのphpファイルを編集したらいいのでしょうか。 よろしくお願いいたします。 |
スレッド表示 | 古いものから | 前のトピック | 次のトピック | トップ |