Разные макеты страниц магазина Есть решение

Добрый день.

Как реализовать для каждой страницы магазина отдельный макет, как к примеру home.html?

Спасибо.

1 ответ

  • 1

    добавлять дополнительный параметр страницы с названием макета.

    например: page_type=maket1

    page_type=maket2

    В теме дизайна создать файлы maket1.html maket2.html

    в макете page.html сделать условие смарти

    вместо {$page.content}

    {if !empty($page.type)}
        {$file = "`$page.type`.html"}
    {else}
        {$file = 'page_default.html'}
    {/if}
    {include file=$file}

    а {$page.content} перенесите в макеты и создайте макет page_default.html

    • +1
      Виталий Виталий 14 сентября 2016 15:30 #

      Не работает.

      Создал файл в теме дизайна магазина maket1.html с кодом макета:

      <div class="container">
      <h1>{$page.name}</h1>
      
      {$subpages = $wa->shop->pages($page.id)}
      {if $subpages}
          <ul class="sub-links">
              {foreach $subpages as $p}
                  <li><a href="{$p.url}">{$p.name}</a></li>
              {/foreach}
          </ul>
      {/if}
      
      <div id="page" role="main">
          {$page.content}
       </div>
      </div>

      далее создал файл page_default.html с кодом:

      <div class="container">
      <h1>{$page.name}</h1>
      
      {$subpages = $wa->shop->pages($page.id)}
      {if $subpages}
          <ul class="sub-links">
              {foreach $subpages as $p}
                  <li><a href="{$p.url}">{$p.name}</a></li>
              {/foreach}
          </ul>
      {/if}
      
      <div id="page" role="main">
          {$page.content}
       </div>
      </div>

      в доп. параметрах страницы дописал: page_type=maket1

      в файле page.html сменил код на:

      <div class="container">
      <h1>{$page.name}</h1>
      
      {$subpages = $wa->shop->pages($page.id)}
      {if $subpages}
          <ul class="sub-links">
              {foreach $subpages as $p}
                  <li><a href="{$p.url}">{$p.name}</a></li>
              {/foreach}
          </ul>
      {/if}
      
      <div id="page" role="main">
          {if !empty($page.type)}
              {$file = "`$page.type`.html"}
          {else}
              {$file = 'page_default.html'}
          {/if}
          {include file=$file}
      
       </div>
      </div>

      все это сделал в теме дизайна shop

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите