--- Array (4)
0 => Array (2)
  page_nm => "トップ"
  page_sysnm => "top"
1 => Array (2)
  page_nm => "FAQ一覧"
  page_sysnm => "topics_list3"
2 => Array (2)
  page_nm => "FAQカテゴリ一覧"
  page_sysnm => "cat"
3 => Array (3)
  page_nm => "Smartyを使っていると改行されてうまくレイアウトができない"
  page_sysnm => "topics_detail3"
  this => 1 ---

Smartyを使っていると改行されてうまくレイアウトができない

Smartyでif文やforeachを使って記述を行なっていると、改行の出力がされる時とされない時がある。


基本的に、
{if}
{else}
{elseif}
{/if}
{foreach}
{/foreach}
{section}
{/section}
などのタグの後ろにある改行はHTMLに変換される場合に削除されます。

例えば、
{if true}[改行]
Smaryのテスト[改行]
{else}[改行]
これは表示されない[改行]
{/if}[改行]
テスト文章

となっているとすると、
Smaryのテスト[改行]
テスト文章
で表示されます。

{if true}Smaryのテスト{else}これは表示されない{/if}
テスト文章

となっていると、
Smaryのテストテスト文章
と表示されます。

【テンプレート内での記述方法】のその他のFAQ