バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > 【2.11.0】新規ページにレビューを掲載

フロント機能

新規スレッドを追加する

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
viper
投稿日時: 2011/8/10 14:33
対応状況: −−−
新米
登録日: 2011/7/30
居住地:
投稿: 10
Re: 【2.11.0】新規ページにレビューを掲載
fukap様

失礼致しました。
個人サイト先の方へお問い合わせをさせて頂きます。
fukap
投稿日時: 2011/8/10 13:46
対応状況: −−−
仙人
登録日: 2009/7/7
居住地: 滋賀県
投稿: 907
Re: 【2.11.0】新規ページにレビューを掲載
私が提示したコードの途中に、不要な改行コードが入っており、エラーが発生していたようです。
申し訳ありませんが、情報元を再度ご参照いただき、
data/Smarty/templates/default/user_data/review_list.tpl のコードを差替えてください。

なお、私が個人サイトで紹介した内容に関しては、そちらへお問い合わせいただきますよう、お願いします。
viper
投稿日時: 2011/8/10 13:22
対応状況: −−−
新米
登録日: 2011/7/30
居住地:
投稿: 10
Re: 【2.11.0】新規ページにレビューを掲載
fukap様

私も全レビュー表示が希望だったので、記事をコピペさせて頂きました。
記事1の画像とリンク無しレビューに関しては問題なく表示されたのですが
記事2の画像とリンク有りレビューにすると下記システムエラーになってしまいます。

FATAL Error(256) /var/home/hoge/data/module/Smarty/libs/Smarty.class.php:1093 Smarty error: [in /var/home/hoge/shop/../../data/Smarty/templates/plate01/user_data/review_list.tpl line 15]: syntax error: unrecognized tag: else}
--><!--{$arrReview[cnt].reviewer_name|h (Smarty_Compiler.class.php, line 446)

記述エラーだと思うのですが、何処に不具合があるのでしょうか?
後、新規レイアウトではなくブロック表示させたい場合には
どの様にすればよろしいでしょうか?

2.11.1を使用しています。
kobakura
投稿日時: 2011/8/6 11:11
対応状況: −−−
一人前
登録日: 2011/6/10
居住地:
投稿: 106
Re: 【2.11.0】新規ページにレビューを掲載
fukap様

本当に丁寧に教えていただき、ありがとうございました。
おかげさまで自分が思う以上の出来栄えでした。
これでお客様によりアピールすることが可能になりました。
御礼申し上げます。

あとは件数とページングです。
件数はわかりそうなのですが、ページングが。。
どの辺から引っ張るのかよくわかりません。
これから勉強です。。
fukap
投稿日時: 2011/8/6 10:36
対応状況: −−−
仙人
登録日: 2009/7/7
居住地: 滋賀県
投稿: 907
Re: 【2.11.0】新規ページにレビューを掲載
コードをコピペするときに1行漏れてましたね、すいません。
以下のコードでどうですか?

$col = "t1.create_date, t1.reviewer_url, t1.reviewer_name, t1.recommend_level, t1.title, t1.comment, t2.product_id, t2.name";
$from = "dtb_review as t1 left join dtb_products as t2 using (product_id)";
$where = "t1.del_flg = 0 AND t1.status = 1 ORDER BY t1.create_date DESC";

一応、記事を書いたのでそちらもご参考下さい。
http://ec-cube.nakweb.com/blog/447.html
kobakura
投稿日時: 2011/8/6 10:23
対応状況: −−−
一人前
登録日: 2011/6/10
居住地:
投稿: 106
Re: 【2.11.0】新規ページにレビューを掲載
fukap様に書いていただいた
http://ec-cube.nakweb.com/blog/408.html
をそのまま新規ページphpに記入し、商品名表示の
引用:
$col = "t1.create_date, t1.reviewer_url, t1.reviewer_name, t1.recommend_level, t1.title, t1.comment, t2.product_id, t2.name";
$from = "dtb_review as t1 left join dtb_products as t2 using (product_id)";

に修正したところ、システムエラーになりました。
下記がエラーログ?だと思います。
お忙しいとは思いますが、ご教示ください。

SERVER_ADDR: 211.125.86.15
REMOTE_ADDR: 220.104.247.153
USER_AGENT: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; YTB730; GTB7.1; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; Tablet PC 2.0; OfficeLiveConnector.1.3; OfficeLivePatch.0.0)

SQL: SELECT t1.create_date, t1.reviewer_url, t1.reviewer_name, t1.recommend_level, t1.title, t1.comment, t2.product_id, t2.name FROM dtb_review as t1 left join dtb_products as t2 using (product_id) WHERE del_flg = 0 AND status = 1 ORDER BY create_date DESC

MDB2 Error: syntax error

prepare: [Error message: Unable to create prepared statement handle]
[Last executed query: SELECT * FROM dtb_baseinfo ]
[Native message: ERROR: column reference "del_flg" is ambiguous]


/var/www/vhosts/※URL※/httpdocs/user_data/voice/index.php 74:LC_Page_User->process
/var/www/vhosts/※URL※/httpdocs/user_data/voice/index.php 35:LC_Page_User->action
/var/www/vhosts/※URL※/httpdocs/user_data/voice/index.php 47:LC_Page_User->lfGetReviewData
/var/www/vhosts/※URL※/httpdocs/user_data/voice/index.php 66:SC_Query->select
/var/www/vhosts/※URL※/httpdocs/data/class/SC_Query.php 153:SC_Query->getAll
/var/www/vhosts/※URL※/httpdocs/data/class/SC_Query.php 265:SC_Query->prepare
/var/www/vhosts/※URL※/httpdocs/data/class/SC_Query.php 867:MDB2_Driver_pgsql->prepare
/var/www/vhosts/※URL※/httpdocs/data/module/MDB2/Driver/pgsql.php 967:MDB2_Driver_Common->raiseError
/var/www/vhosts/※URL※/httpdocs/data/module/MDB2.php 1497:PEAR->raiseError
/var/www/vhosts/※URL※/httpdocs/data/module/PEAR.php 557:MDB2_Error->MDB2_Error
/var/www/vhosts/※URL※/httpdocs/data/module/MDB2.php 1009:PEAR_Error->PEAR_Error
FATAL Error(256) /var/www/vhosts/※URL※/httpdocs/data/class/SC_Query.php:870 https://※URL※/
fukap
投稿日時: 2011/8/6 0:24
対応状況: −−−
仙人
登録日: 2009/7/7
居住地: 滋賀県
投稿: 907
Re: 【2.11.0】新規ページにレビューを掲載
dtb_review のデータを取得する際に、dtb_products もJOINして、合わせて取得すると良いと思います。

lfGetReviewData()内を以下のような感じにすれば良いかと。

$col = "t1.create_date, t1.reviewer_url, t1.reviewer_name, t1.recommend_level, t1.title, t1.comment, t2.product_id, t2.name";
$from = "dtb_review as t1 left join dtb_products as t2 using (product_id)";
kobakura
投稿日時: 2011/8/5 18:01
対応状況: −−−
一人前
登録日: 2011/6/10
居住地:
投稿: 106
Re: 【2.11.0】新規ページにレビューを掲載
引用:
fukapさんは書きました:
サンプルコードを書いてみました。
すでにレビュー一覧表示には成功されているようですが、参考にしてみてください。
http://ec-cube.nakweb.com/blog/408.html


わざわざありがとうございます。
拝見させていただきました。
fukap様のヒントを得たおかげで何とか表示することはできました。

引用:
新規ページ(例:/voice/など)のLC_Page クラスを継承しているというのはどういうことでしょうか?

管理画面から新規ページを作成すると、一対のテンプレートファイルとPHPファイルが生成されます。
PHPファイルは、html/user_data 内に生成されるので、開いてみるとわかりますが、以下のように記述されていると思います。

require_once CLASS_EX_REALDIR . 'page_extends/LC_Page_Ex.php';

LC_Page_Ex は LC_Page を継承したクラスですので、LC_Page を継承したファイルと言えると思います。


こちらもありました。新規作成ページフォルダに入っておりました。本当に無知で申し訳ございません。

ここであと一点。
新規ページでレビューを表示させているため、各商品名とリンクをつけたいのですが、ここで今ハマっています・・・。
<!--{$arrReview[cnt].name|h}-->が商品名の表示だとわかるのですが、phpの記載がわかりません。
LC_Page_Products_Review.phpの

//商品名の取得
$this->arrForm['name'] = $this->lfGetProductName($this->arrForm['product_id']);
if (empty($this->arrForm['name'])) {
SC_Utils_Ex::sfDispSiteError(PAGE_ERROR);

または

/**
* 商品名を取得
*
* @param integer $product_id 商品ID
* @return string $product_name 商品名
*/
function lfGetProductName($product_id) {
$objQuery =& SC_Query_Ex::getSingletonInstance();

return $objQuery->get('name', "dtb_products", "product_id = ? ", array($product_id));
}

がヒントになるのかなと思うのですが・・・。
fukap
投稿日時: 2011/8/5 17:02
対応状況: −−−
仙人
登録日: 2009/7/7
居住地: 滋賀県
投稿: 907
Re: 【2.11.0】新規ページにレビューを掲載
サンプルコードを書いてみました。
すでにレビュー一覧表示には成功されているようですが、参考にしてみてください。

http://ec-cube.nakweb.com/blog/408.html

引用:
新規ページ(例:/voice/など)のLC_Page クラスを継承しているというのはどういうことでしょうか?

管理画面から新規ページを作成すると、一対のテンプレートファイルとPHPファイルが生成されます。
PHPファイルは、html/user_data 内に生成されるので、開いてみるとわかりますが、以下のように記述されていると思います。

require_once CLASS_EX_REALDIR . 'page_extends/LC_Page_Ex.php';

LC_Page_Ex は LC_Page を継承したクラスですので、LC_Page を継承したファイルと言えると思います。
kobakura
投稿日時: 2011/8/5 13:46
対応状況: −−−
一人前
登録日: 2011/6/10
居住地:
投稿: 106
Re: 【2.11.0】新規ページにレビューを掲載
引用:
どのページでも良いと思いますよ。
管理画面のデザイン管理から、新規ページ作成しても可能だと思います。


あまりに無知で申し訳ないのですが、新規作成ページでは表示できませんでした。
新規ページ(例:/voice/など)のLC_Page クラスを継承しているというのはどういうことでしょうか?新規で作成したページは継承されてないような・・・。

引用:
要は、./data/class/pages/products/LC_Page_Products_Detail.php の
lfGetReviewData() のコードをサンプルとして利用すれば、
LC_Page クラスを継承しているページなら可能だと思います。


今の状態を報告しますと、○○.com/abouts/index.php(当サイトについて)ページを改造し、./data/class/pages/products/LC_Page_Products_Detail.php lfGetReviewData() のコードをLC_Page_Abouts.phpに張り付けることで表示はなんとかできました。
あとは件数やページングをしたのですが、今の状態ですと件数すら表示できないでいます。

引用:
ちょっと時間ができたら、サンプルコードを考えてみたいと思います。


はい、よろしくお願いいたします。
(1) 2 »
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は88,956名です
総投稿数は110,019件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1296
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.