絞り込みの指定が効かない

「まったく何も分からない・・・」そんなユーザーさんの為のフォーラムです。どんなご質問でもお気軽にどうぞ。
返信
bcacsato
パワーユーザー
記事: 233
登録日時: 2005年11月27日(日) 14:05

絞り込みの指定が効かない

投稿記事 by bcacsato » 2012年9月29日(土) 11:20

CMSDでオンラインショップを作成しました。
商品情報のエントリーのうち、「今月のおすすめ」として1品、「その他のおすすめ」として5点ほどをトップページにも表示させたいと思っています。

そこで、スキーマファイルに下記の選択欄を追加しました。

コード: 全て選択

<data name="reco1" type="menu" caption="今月のおすすめ" group="True">
	<menuitem id="1">非表示</menuitem>
	<menuitem id="2">表示</menuitem>
</data>

<data name="reco2" type="menu" caption="その他のおすすめ商品" group="True">
    <menuitem id="1">非表示</menuitem>
    <menuitem id="2">表示</menuitem>
</data>
そして、管理画面にて「表示」を選択したものだけをトップページに表示するため、
埋め込み先のトップページのHTMLには下記の通り記述しました。

コード: 全て選択

<h2>今月のおすすめ商品</h2>
<cmsd:entry name="shop" design="reco1" />
    <cmsd:group key="reco1" value="2" />
</cmsd:entry>

<h2>その他のおすすめ商品</h2>
<cmsd:entrylist name="shop" design="reco2" rows="5" />
    <cmsd:group key="reco2" value="2" />
</cmsd:entrylist>
しかし、実際にページを表示すると、「表示」「非表示」の選択と関係なく、
日時が最新のものが表示されてしまいます。

自分的にはこれで合っていると思うのですが、何か間違っている箇所がありますでしょうか?
もし分かりましたら教えていただけますと幸いです。

webmaster
Site Admin
記事: 1451
登録日時: 2004年12月10日(金) 10:09

Re: 絞り込みの指定が効かない

投稿記事 by webmaster » 2012年9月30日(日) 17:25

bcacsatoさん、いつもコメントありがとうございます。webmasterです。

スキーマとCMSDタグを拝見させて頂きました。基本的に問題なさそうに見えます。

<h2>今月のおすすめ商品</h2>
<cmsd:entry name="shop" design="reco1" />
<cmsd:group key="reco1" value="2" />
</cmsd:entry>

こちらだけ、表示するエントリを指定する為、eid="top"をつけて、以下のようにする必要があるかと思います。

<h2>今月のおすすめ商品</h2>
<cmsd:entry name="shop" design="reco1" eid="top" />
<cmsd:group key="reco1" value="2" />
</cmsd:entry>

ただ、それでも、絞込みが効いていないというのはおかしいと思います。
これでうまくいかないのは、弊社では、PHPを更新したがサーバへアップロードしていなかった、とか、そもそも違う場所のPHPファイルを更新していた、とか、またはキャッシュ機能をONにしていた、などです。

念のため、これらの点を再度ご確認頂いた上で、スキーマ/デザイン定義/PHPファイル/関連するエントリのindexファイル、をまとめてメールでお送り頂いてもよろしいでしょうか?

お手数をおかけしますが、よろしくお願いいたします。

bcacsato
パワーユーザー
記事: 233
登録日時: 2005年11月27日(日) 14:05

Re: 絞り込みの指定が効かない

投稿記事 by bcacsato » 2012年10月06日(土) 21:52

webmasterさまにソースを確認していただき、解決しました。

原因は、1行目の最後でタグが閉じてしまっていたため、
残りのcmsd:groupなどが無視されてしまったことによるものでした。

<cmsd:entry name="shop" design="top" eid="top" /> ←ここでタグが閉じられている
<cmsd:group key="monthly" value="2" />
</cmsd:entry>

これを下記のように記述することにより、正しい挙動となりました。

コード: 全て選択

<h2>今月のおすすめ商品</h2>
<cmsd:entry name="shop" design="reco1">
    <cmsd:group key="reco1" value="2" />
</cmsd:entry>

<h2>その他のおすすめ商品</h2>
<cmsd:entrylist name="shop" design="reco2" rows="5">
    <cmsd:group key="reco2" value="2" />
</cmsd:entrylist>
初歩的なミスで失礼しました…。
webmasterさま、ありがとうございました。

返信