Home > Custom > ColorMe!ShopPro sectionループについて

ColorMe!ShopPro sectionループについて

ColorMe!ShopProのテンプレートカスタマイズで使用できるsectionループについてのメモ。
sectionとは別に<{foreach}>も使用できるが、sectionとforeachでは動作が微妙に違う。

【公式説明】 <{section}>~<{/section}>で囲まれいる部分は、リストの数分だけループします。
<{section name=num loop=$productlist}>

・ (ここがループ)

<{/section}>

sectionの後についてるのは属性名とその値。
name(属性)=num(値)のペアで設定することでループの動作を変えることが出来る。
必須属性がnameとloopなので、上記は必要最低限の指定ということになる。
また、sectionは入れ子が可能なので何重もネストして使うことが出来る。



sectionのこの文と

SMARTY:
  1. <{section name=num loop=$category}>
  2. <{$category[num].name}>
  3. <{/section}>

foreachのこの文は同じ結果になる

SMARTY:
  1. <{foreach from=$category item=i}>
  2. <{$i.name}>
  3. <{/foreach}>

カテゴリーリンクのsectionループ表示例

SMARTY:
  1. <ul>
  2. <{section name=num loop=$category start=0 max=4}>
  3.     <li><a href="<{$category[num].link_url}>"><{$category[num].name}></a</li>
  4. <{/section}>
  5. </ul>

カテゴリアイコン表示サンプル。
カテゴリアイコンを登録しておけば、ループで出力することが出来る。
表示方法はimgタグとCSSがある。

上:CSS 下:img

SMARTY:
  1. <li<{if $category[num].img_url != ""}> style="background-image:url(<{$category[num].img_url}>)"<{/if}>>
  2.  
  3. <{if $category[num].img_url != ""}>
  4. <img src="<{$category[num].img_url}>" alt="<{$category[num].name}>" />
  5. <{/if}>

$categoryとかimg_url等はColorMeの独自タグを参照。
独自タグ変数[nameでつけたセクション名].独自タグのプロパティという書き方。

name
セクション名(自由につけれる)。
配列の番号が入るっぽいので、オブジェクトを代入しておく変数名という方が分かりやすいかもしれない。

loop
categoryの数だけループを繰り返す。

start
ループを開始するインデックス位置。通常は0から。
マイナスにすると、開始位置が最後尾からになる。 (-5にすると最後から5番目よりループが始まる)
7つしかないのに8とか設定しても、自動で切り捨てられるのでエラーにはならない。

max
ループする最大回数。4にすると0~4まで出力する。

step
ループインデックスを進めるために使われるステップ値。
例えばstep=2なら、インデックスは0, 2, 4の位置にあるものだけ表示。
stepの値がマイナスの場合は、ループの方向が逆になる。(0->10が10->0になる)

show
表示するかどうか

maxとstartを指定すると、2つに分けることが出来たりする。

カテゴリの表示を例にすると…

SMARTY:
  1. 最初のカテゴリ
  2. <ul>
  3. <{section name=num loop=$category start=0 max=4}>
  4.   <li<{if $category[num].img_url != ""}> style="background-image:url(<{$category[num].img_url}>)"<{/if}>><a href="<{$category[num].link_url}>"><{$category[num].name}></a></li>
  5. <{/section}></ul>
  6. 5つ目からのカテゴリ
  7. <ul>
  8. <{section name=num loop=$category start=4}>
  9.   <li<{if $category[num].img_url != ""}> style="background-image:url(<{$category[num].img_url}>)"<{/if}>><a href="<{$category[num].link_url}>"><{$category[num].name}></a></li>
  10. <{/section}>
  11. </ul>
このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加

Comments:0

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://tenderfeel.xsrv.jp/custom/40/trackback/
Listed below are links to weblogs that reference
ColorMe!ShopPro sectionループについて from WebTecNote

Home > Custom > ColorMe!ShopPro sectionループについて

最近の投稿
最近の修正
  • そしてこのSQLはわれながらよく書いたと思う 2010-11-15
  • CSVの列っていう方がいいのかな…118項目だった 2010-11-15
  • 楽天のCSVの項目が116個もあった衝撃 2010-11-15
  • オフィスで香水臭振りまくのは迷惑だと知れ 2010-11-15
  • ぐあー フレグランステロやー 2010-11-15
  • More updates...

Powered by Twitter Tools

Tag Cloud
おすすめサーバー・他
メタ情報

Return to page top