Jump to content

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


Recommended Posts

Все привет!

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

 

В файлах 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>. Вообще ни какого результата.. ((

 

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

 

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

Link to post
Share on other sites

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

 

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

Edited by FreePM
Link to post
Share on other sites

У шаблона как правило есть одна обертка и скорее всего это 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 писал любые символы чтобы найти где меняется, и ни чего...

Link to post
Share on other sites

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

 

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

 

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

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

Link to post
Share on other sites

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

 

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

 

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

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

Link to post
Share on other sites

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

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

Link to post
Share on other sites

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

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

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

Link to post
Share on other sites

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

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

 

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

Link to post
Share on other sites

 

 

 

 

 

Кстати, пробовал в  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:

Link to post
Share on other sites

Кстати, пробовал в  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 чистили?

Link to post
Share on other sites

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

complited не чистил.

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

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

http://prntscr.com/f0xb9i

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

Link to post
Share on other sites

может вы не в той теме меняете если ничего не выводит у вас? точно в активной теме меняете? папку 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}

 

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

Link to post
Share on other sites

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

 

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

Link to post
Share on other sites

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

 

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

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

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

Link to post
Share on other sites

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

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

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

 

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

Link to post
Share on other sites

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

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

 

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

Link to post
Share on other sites

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

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

 

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

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

Edited by Maksclub
Link to post
Share on other sites

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

Maksclub

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

Link to post
Share on other sites

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

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

Link to post
Share on other sites

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

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

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

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

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...