Перейти к содержанию
Официальный форум поддержки Simpla

Вывод своей страницы на главную


Рекомендуемые сообщения

Добрый день форумчане. 

Столкнулся с проблемкой, а именно хочу к главной странице прикрутить страницу benefits.tpl. Страницу benefits создал вопросов по этому нет, а вот в main.tpl прописываю {include file='benefits.tpl'} и на главной выводится описание "о нас" дважды =(((

Help me please!

Ссылка на сообщение
Поделиться на другие сайты

Что мешает главную main.tpl изменить содержимым шаблона benefits.tpl?

 

в том то и дело что мне нужно main.tpl - с описанием "о нас" и benefits.tpl  - с описанием "наши преимущества"

а между описанием "о нас" и "наши преимущества" стоит товар

 

 

Вот main.tpl

 

 
{* Главная страница магазина *}

{* Для того чтобы обернуть центральный блок в шаблон, отличный от index.tpl *}
{* Укажите нужный шаблон строкой ниже. Это работает и для других модулей *}
{$wrapper = 'index.tpl' scope=parent}
 
{* Тело страницы *}
{$page->body}

{* Рекомендуемые товары *}
{get_featured_products var=featured_products limit=3}
{if $featured_products}
<!-- Список товаров-->
<h1>Рекомендуемые товары</h1>
<ul class="tiny_products">

    {foreach $featured_products as $product}
    <!-- Товар-->
    <li class="product">
        
        <!-- Фото товара -->
        {if $product->image}
        <div class="image">
            <a href="products/{$product->url}"><img src="{$product->image->filename|resize:200:200}" alt="{$product->name|escape}"/></a>
        </div>
        {/if}
        <!-- Фото товара (The End) -->

        <!-- Название товара -->
        <h3><a data-product="{$product->id}" href="products/{$product->url}">{$product->name|escape}</a></h3>
        <!-- Название товара (The End) -->
        

        {if $product->variants|count > 0}
        <!-- Выбор варианта товара -->
        <form class="variants" action="/cart">
            <table>
            {foreach $product->variants as $v}
            <tr class="variant">
                <td>
                    <input id="featured_{$v->id}" name="variant" value="{$v->id}" type="radio" class="variant_radiobutton" {if $v@first}checked{/if} {if $product->variants|count<2}style="display:none;"{/if}/>
                </td>
                <td>
                    {if $v->name}<label class="variant_name" for="featured_{$v->id}">{$v->name}</label>{/if}
                </td>
                <td>
                    {if $v->compare_price > 0}<span class="compare_price">{$v->compare_price|convert}</span>{/if}
                    <span class="price">{$v->price|convert} <span class="currency">{$currency->sign|escape}</span></span>
                </td>
            </tr>
            {/foreach}
            </table>
            <input type="submit" class="button" value="в корзину" data-result-text="добавлено"/>
        </form>
        <!-- Выбор варианта товара (The End) -->
        {else}
            Нет в наличии
        {/if}

    </li>
    <!-- Товар (The End)-->
    {/foreach}
            
</ul>
{/if}
 
 
 
<div id="header_benefits">
    <div class="item">
        {include file='benefits.tpl'}
    </div>
</div>

 

 

Вот benefits.tpl

 

 

{* Тело страницы *}
{$page->body}
Ссылка на сообщение
Поделиться на другие сайты

Ну не может переменная {$page->body} иметь 2 содержимого.

 

Если нужно вывести страницу по ID или URL то выполните следующее:
1. В файл view/MainView.php перед:

if($this->page)

добавьте:

$this->design->assign('promopage', $this->pages->get_page('contact'));

Где contact может быть либо ID страницы либо ее URL.

2. В шаблоне main.tpl в нужном месте используйте:

{$promopage->body}
Ссылка на сообщение
Поделиться на другие сайты

 

Ну не может переменная {$page->body} иметь 2 содержимого.

 

Если нужно вывести страницу по ID или URL то выполните следующее:

1. В файл view/MainView.php перед:



if($this->page)

добавьте:



$this->design->assign('promopage', $this->pages->get_page('contact'));

Где contact может быть либо ID страницы либо ее URL.

 

2. В шаблоне main.tpl в нужном месте используйте:



{$promopage->body}

 

Всё работает!! Спасибо Noxter

Ссылка на сообщение
Поделиться на другие сайты
  • 3 месяца спустя...

 

Ну не может переменная {$page->body} иметь 2 содержимого.

 

Если нужно вывести страницу по ID или URL то выполните следующее:

1. В файл view/MainView.php перед:

if($this->page)

добавьте:

$this->design->assign('promopage', $this->pages->get_page('contact'));

Где contact может быть либо ID страницы либо ее URL.

 

2. В шаблоне main.tpl в нужном месте используйте:

{$promopage->body}

 

для версии 2.3.2 точно так же надо делать? а то у меня не получается.. ничего не выводит только не знаю из-за чего

 

вот какой код получается.. все правильно?

 

задача: необходимо, чтоб на странице товара под описанием еще выводился блок с описанием доставки и оплаты. естественно надо, чтоб клиент сам мог его менять. потому жестко прописать в теме нельзя текст. надо чтоб менялось в редакторе.. вот решил сделать отдельную страницу которая нигде не выводится на сайте и вывести ее body в нужном мне месте.

 

class MainView extends View
{

	function fetch()
	{
		$this->design->assign('productdelivery', $this->pages->get_page('14'));
		if($this->page)
		{
			$this->design->assign('meta_title', $this->page->meta_title);
			$this->design->assign('meta_keywords', $this->page->meta_keywords);
			$this->design->assign('meta_description', $this->page->meta_description);
		}

		return $this->design->fetch('main.tpl');
	}
}
Ссылка на сообщение
Поделиться на другие сайты
  • 9 месяцев спустя...

Добрый день форумчане. 

Столкнулся с проблемкой, а именно хочу к главной странице прикрутить страницу benefits.tpl. Страницу benefits создал вопросов по этому нет, а вот в main.tpl прописываю {include file='benefits.tpl'} и на главной выводится описание "о нас" дважды =(((

Help me please!

 

Не знаю на сколько актуален данный вопрос сейчас, но возможно кому-то пригодится иное более простое решение.

 

{foreach $pages as $p}
{if $p->id == 2}
{$p->body}
{/if}
{/foreach}

При помощи данного участка кода мы с легкостью получаем нужную нам страницу по ее ID. {if $p->id == 2} 2 - это id страницы которую нам нуно получить..

Ссылка на сообщение
Поделиться на другие сайты
  • 4 года спустя...

{foreach $pages as $p}
{if $p->id == 2}
{$p->body}
{/if}
{/
foreach}

 

Данный способ выводит только одну страницу. У меня в шаблоне product.tpl под описание товара идёт блок в виде табов (см.фото)

и в каждом табе должен выводиться текст отдельной страницы, так вот если я в следующем табе прописываю это код но меняю id

страницы, то уже ничего не выводится. Подскажите пожалуйста как сделать правильно.

post-22351-0-48289100-1576731304_thumb.jpg

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...