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

Метаданные на категориях и карточках товара по шаблону


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

Все привет!

Подскажите пожалуйста как в симпле прописать шаблон формирования метаданных для категорий и карточек товара?

 

В файлах product.tpl и products.tpl нет ни чего что связано с блоком head и мета-данными.

Есть только в шаблон\html\index.tpl

 

В данном файле есть такие строчки

 

    {* Метатеги *}
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <meta name="description" content="{$meta_description|escape}" />
    <meta name="keywords"    content="{$meta_keywords|escape}" />
    <meta name="viewport" content="width=1024"/>
 

    <link href="design/{$settings->theme|escape}/css/page.css" type="text/css" rel="stylesheet">
    <link href="design/{$settings->theme|escape}/css/kernel_main.css" type="text/css" rel="stylesheet">
    <link href="design/{$settings->theme|escape}/css/template.css" type="text/css" rel="stylesheet">

    <title>{if !$meta_title}{$product->name|escape}{else}{$meta_title|escape}{$additional_title}{/if}</title>

 

 

{$additional_title} это я уже добавлял пытался сделать как в теме http://forum.simplacms.ru/topic/1211-rabota-s-taytlami-resheno-/ писали

 

"

в index.tpl написать <title>{$meta_title|escape} {$additional_title}</title>
а в других шаблонах, если нужно, определять переменную $additional_title:
{$additional_title = 'нужный текст' scope=parent}

"

 

Только вот куда вставить {$additional_title = 'нужный текст' scope=parent} например в файле product.tpl?

 

пробовал в самом верху кода вставить не воспринимает.

 

И еще самое, что интереное

 

Что в файле \html\index.tpl

Меняю как хочу вот эту строчку <title>{if !$meta_title}{$product->name|escape}{else}{$meta_title|escape}{$additional_title}{/if}</title>

 

делал без различных переменных просто <title>тест </title>. Вообще ни какого результата.. ((

 

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

 

Заранее благодарен за ответ!

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

У шаблона как правило есть одна обертка и скорее всего это index.tpl. Вот именно там и формируется все, что вы написали.

 

upd: Вижу, что смотрели.

Изменено пользователем FreePM
Ссылка на сообщение
Поделиться на другие сайты

У шаблона как правило есть одна обертка и скорее всего это index.tpl. Вот именно там и формируется все, что вы написали.

 

upd: Вижу, что смотрели.

То что index.tpl одна обертка а остальные файлы содержать описание грубо говоря все, что в body. Это я понял.

Но прикол в том, что я считай что полностью удалял просто хотел увидеть убьется ли тайтл и станет ли он один для всех если я пропишу <title>тест </title>. И ни чего не менялось((

 

Есть еще корневой каталог папки шаблона в нем тоже есть index.tpl

 

с таким кодом

 

{*/*metatitle-data*/*}

    {if $metadata_page}

        {if $metadata_page->meta_title}

            <title>{$metadata_page->meta_title|escape}</title>

        {else}

            <title>{$meta_title|escape}</title>

        {/if}

        {if $metadata_page->meta_description}

            <meta name="description" content="{$metadata_page->meta_description|escape}" />

        {else}

            <meta name="description" content="{$meta_description|escape}" />

        {/if}        

        {if $metadata_page->meta_keywords}

            <meta name="keywords"    content="{$metadata_page->meta_keywords|escape}" />

        {else}

            <meta name="keywords"    content="{$meta_keywords|escape}" />

        {/if}

        <meta name="robots" content="index,follow"/>

    {else}

        <title>{$meta_title|escape}</title>    

        <meta name="description" content="{$meta_description|escape}" />

        <meta name="keywords"    content="{$meta_keywords|escape}" />

    {/if}

    {*/*/metatitle-data*/*}

    

    {* Метатеги *}

    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

    {*/*/metatitle-data*/*}    

    {*

    <meta name="description" content="{$meta_description|escape}" />

    <meta name="keywords"    content="{$meta_keywords|escape}" />

    *}

    {*/*/metatitle-data*/*}

    <meta name="viewport" content="width=1024"/>

 

 

Но также в в тегах title писал любые символы чтобы найти где меняется, и ни чего...

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

Я вот как делал

 

https://gist.github.com/Maksclub/af191731014518fc1ebaa70024043c75

 

там слегка мусорно -- я для себя делал, но концепция схожа с вашей

Изменено пользователем Maksclub
Ссылка на сообщение
Поделиться на другие сайты

Я вот как делал

 

https://gist.github.com/Maksclub/af191731014518fc1ebaa70024043c75

 

там слегка мусорно -- я для себя делал, но концепция схожа с вашей

О спасибо! Нужно попробовать) Это я так понимаю отдельный файл создается  meta.tpl который помещается туда же где лежать и другие файлы шаблона \html\ ?

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

Я вот как делал

 

https://gist.github.com/Maksclub/af191731014518fc1ebaa70024043c75

 

там слегка мусорно -- я для себя делал, но концепция схожа с вашей

Если создавать отдельный файл meta.tpl, его же где-то нужно подключать, верно?!

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

Если создавать отдельный файл meta.tpl, его же где-то нужно подключать, верно?!

index.tpl либо вставляете все с github или же подключаете {include file='meta.tpl'}

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

index.tpl либо вставляете все с github или же подключаете {include file='meta.tpl'}

спасибо за ответ!

А подключать с помощью {include file='meta.tpl'} можно в index.tpl, и есть ли разница в какой части документа? в самом верху например или..

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

спасибо за ответ!

А подключать с помощью {include file='meta.tpl'} можно в index.tpl, и есть ли разница в какой части документа? в самом верху например или..

 

Это meta данные, поэтому строго до закрывающего </head> 

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

 

 

 

 

 

Кстати, пробовал в  index.tpl по совету ps-simpla

добавлять вот такое:

{if $module=='ProductView'}

 <title>{$product->name|escape} для {$category->name|escape} - купить в интернет-магазине</title>

 {elseif $module=='ProductsView'}

 <title>Запчасти для автомобилей {$category->name|escape} - купить в интернет-магазине</title>

 {else}

 <title>{$meta_title|escape}</title>

 {/if}

 

Но ни чего не изменилось :mellow:

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

Кстати, пробовал в  index.tpl по совету ps-simpla

добавлять вот такое:

{if $module=='ProductView'}

 <title>{$product->name|escape} для {$category->name|escape} - купить в интернет-магазине</title>

 {elseif $module=='ProductsView'}

 <title>Запчасти для автомобилей {$category->name|escape} - купить в интернет-магазине</title>

 {else}

 <title>{$meta_title|escape}</title>

 {/if}

 

Но ни чего не изменилось :mellow:

 

может вы не в той теме меняете если ничего не выводит у вас? точно в активной теме меняете? папку compiled чистили?

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

может вы не в той теме меняете если ничего не выводит у вас? точно в активной теме меняете? папку compiled чистили?

complited не чистил.

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

В папке темы есть в корне index.tpl, есть в папке html и в папке html_orig

http://prntscr.com/f0xb9i

Уже везде пробую менять)

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

может вы не в той теме меняете если ничего не выводит у вас? точно в активной теме меняете? папку compiled чистили?

complited почистил, попробовал в 3х разных index.tpl добавлять код

{if $module=='ProductView'}

 

 <title>{$product->name|escape} для {$category->name|escape} - купить в интернет-магазине</title>

 

 {elseif $module=='ProductsView'}

 

 <title>Запчасти для автомобилей {$category->name|escape} - купить в интернет-магазине</title>

 

 {else}

 

 <title>{$meta_title|escape}</title>

 

 {/if}

 

безрезультатно. Такое ощущение, что в каком то файле дефолтом стоит шаблон мета-данных...

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

О спасибо! Нужно попробовать) Это я так понимаю отдельный файл создается  meta.tpl который помещается туда же где лежать и другие файлы шаблона \html\ ?

 

да, у меня разбито по разделам... там возможно лишний для вас код, но зато видно где и какие теги менять... также там уже opengraph теги и очистка от мусора (на примере брендов)

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

да, у меня разбито по разделам... там возможно лишний для вас код, но зато видно где и какие теги менять... также там уже opengraph теги и очистка от мусора (на примере брендов)

 

Пробовал создать meta.tpl и подключить его как писали выше {include file='meta.tpl'} в index.tpl

Не вышло ни чего..((

все таки от куда еще тянет дефолтом шаблонные метаданные. Хз, может их кто-то прописал не в файле шаблона, а например в каких то системных файлах самой cms ? Подскажите можно еще где-то прописать шаблон мета кроме как в шаблон\html\index.tpl &

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

Пробовал создать meta.tpl и подключить его как писали выше {include file='meta.tpl'} в index.tpl

Не вышло ни чего..((

все таки от куда еще тянет дефолтом шаблонные метаданные. Хз, может их кто-то прописал не в файле шаблона, а например в каких то системных файлах самой cms ? Подскажите можно еще где-то прописать шаблон мета кроме как в шаблон\html\index.tpl &

 

нигде, вы бы дали код своего index.tpl и ссылку, может у вас вообще другая тема подключена... Ванги тут нет... судя по огороду в самом первом посте, у вас там огород 

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

нигде, вы бы дали код своего index.tpl и ссылку, может у вас вообще другая тема подключена... Ванги тут нет... судя по огороду в самом первом посте, у вас там огород 

Можно в скайпе?

 

мой скайп - andrew.sheshunov

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

Ну почему же нигде?

Можно через scope=parent переопределять мета-теги прямо из шаблона product или products, например

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

Ну почему же нигде?

Можно через scope=parent переопределять мета-теги прямо из шаблона product или products, например

 

следы моего кода все равно бы он увидел, переопределил бы он только 2-3 переменные

так да -- я не прав :(

Изменено пользователем Maksclub
Ссылка на сообщение
Поделиться на другие сайты

Всем спасибо за помощь! Проблема решена. С помощью файла с прописанными мета meta.tpl и непосредственного участия

Maksclub

Проблема была в том, что умные люди сделали скрипт который шаблоном делал мета данные и через админку их нельзя было поправить. В итоге нашли данный код и закоментили. Теперь можно и через админку править и шаблоны внедрять как душе угодно=)

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

Если у кого-нибудь возникнет потребность вывода артикула в метаданных карточки товара, можно вывести так

{foreach $product->variants as $v}{if $v@first}{$v->sku}{/if}{/foreach}

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

Если у кого-нибудь возникнет потребность вывода артикула в метаданных карточки товара, можно вывести так

{foreach $product->variants as $v}{if $v@first}{$v->sku}{/if}{/foreach}

Это же просто изврат!

Куда проще и правильнее использовать {$product->variant->sku} чтобы вывести артикул первого варианта нежели перебирать весь массив вариантов.

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

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

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

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

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

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

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

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

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

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