リスト(listitem)内に登録が1件も無かった場合の表示

CMS Designerを「こんな風に使ってます」等の活用事例や、自分なりのTIPS等のご報告をお待ちしています。
返信
aldesign
記事: 2
登録日時: 2008年9月09日(火) 16:45
連絡を取る:

リスト(listitem)内に登録が1件も無かった場合の表示

投稿記事 by aldesign » 2008年9月09日(火) 17:41

list項目(listitem)に登録が1件も無かった場合、「情報がありません」等の処理をしたい場合の書き方です。

例えば、schemaファイルで、下記のように写真一覧を設定したlistitemの場合・・

コード: 全て選択

<data name="photolist" type="list" caption="写真一覧" >
  <listitem caption="写真の説明文" >
    <data name="photo" type="img" caption="写真" />
    <data name="photodesc" type="textarea" caption="写真の説明文" />
  </listitem>
</data>

このように振り分けます。

コード: 全て選択

<xsl:for-each select="photolist/listitem">

 <!--photolistリストに1件以上存在している場合、通常表示-->
 <xsl:if test="count(photolist/listitem) > 0">
   <img src="{photo}&w=160" alt="写真" />
   <xsl:value-of select="photodesc" disable-output-escaping="yes" />
 </xsl:if>

 <!--photolistリストに登録が無い場合-->
 <xsl:if test="not(count(photolist/listitem) > 0)">
   <img src="../img/nophoto.jpg" alt="nophoto" /> 
   写真がありません。
 </xsl:if>

</xsl:for-each>
となります!

返信