Скрыть объявление
ВАШИ ПРАВА ОГРАНИЧЕНЫ!

Зарегистрируйтесь на форуме, чтобы стать полноценным участником сообщества!

Генерация мета титл, мета кейвордс и мета дескрипшн в шаблоне fullstory.tpl

Тема в разделе "Модули DLE", создана пользователем byroot, 20 мар 2017.

20.03.17 в 10:17
08.04.20 в 20:55
35
9.611
8
  1. TopicStarter Overlay
    byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    Частая проблема возникаем у многих что они хотят сделать на разные категории разные кейворды и разные дескрипшены, чтобы они генерировались автоматически да ещё и с использованием доп полей. Раньше я всегда делал всё правкой в engine.php с указанием списка айди категорий, но только сейчас понял что в этом нам может помочь модуль metagen.

    Итак.

    В engine.php меняем
    PHP:
    $metatags = <<<HTML
    <meta http-equiv="Content-Type" content="text/html; charset={$config['charset']}" />
    <title>
    {$metatags['title']}</title>
    <meta name="description" content="
    {$metatags['description']}" />
    <meta name="keywords" content="
    {$metatags['keywords']}" />{$disable_index}
    <meta name="generator" content="DataLife Engine (http://dle-news.ru)" />
    {$s_meta}<link rel="search" type="application/opensearchdescription+xml" href="{$config['http_home_url']}engine/opensearch.php" title="{$config['home_title']}" />
    HTML;
    на код
    PHP:
    if ($subaction != "showfull") {

        
    $meta_no_swowfull .= <<<HTML
    <meta name="description" content="{$metatags['description']}" />
    <meta name="keywords" content="
    {$metatags['keywords']}" />
    HTML;

    }

    $metatags = <<<HTML
    <meta http-equiv="Content-Type" content="text/html; charset={$config['charset']}" />
    <title>
    {$metatags['title']}</title>
    {$meta_no_swowfull}{$disable_index}
    <meta name="generator" content="DataLife Engine (http://dle-news.ru)" />
    {$s_meta}<link rel="search" type="application/opensearchdescription+xml" href="{$config['http_home_url']}engine/opensearch.php" title="{$config['home_title']}" />
    HTML;
    Тут мы сделали запрет вывода мета кейворд/дескрипшн.

    Далее папку в engine кидаем файл metagen.php - http://nowheredev.ru/developments/php/79-metagen-delaem-razmetku-open-graph-v-dle.html

    в main.tpl после {headers} Добавляем код:
    Код:
    {include file='engine/metagen.php?a=get&r=og&t=<meta name="{p}" content="{v}" />'}
    в fullstory.tpl в самое начало формируем наше описание и ключевики как душе угодно:
    Код:
    {include file="engine/metagen.php?a=add&r=og&p=keywords&v=наши ключики через запятую с использованием доп полей или без них"}
    {include file="engine/metagen.php?a=add&r=og&p=description&v=наше мета описание описание "}
    Аналогично можно генерировать и мета титл:
    В полную новость - {include file="engine/metagen.php?a=add&r=title&p=description&v=наш титл через метаген"}
    В main.tpl - {include file='engine/metagen.php?a=get&r=title&t=<title>{v}</title>'}
    в engine.php перенести в коде выше
    Код:
    <title>{$metatags['title']}</title>
    перед
    Код:
    <meta name="description" content="{$metatags['description']}" />
    Таким образом вся настройка у нас идёт в файле шаблона полной новости fullstory.tpl c минимальными правками движка.
     

    Вложения:

    • metagen.zip
      Размер файла:
      600 байт
      Просмотров:
      110
    #1 byroot, 20 мар 2017
    Последнее редактирование: 14 июн 2017
    • Нравится Нравится x 8
  2. Dr_Brown

    Dr_Brown Бывалый

    Регистрация:
    19 дек 2016
    Сообщения:
    568
    Лучших ответов:
    0
    Рейтинги:
    +160 / 4 / -0
    Можно вопрос, каким образом дополнительные поля подключаются?

    Код:
    {include file="engine/metagen.php?a=add&r=og&p=keywords&v=наши ключики через запятую с использованием доп полей или без них"}
    {include file="engine/metagen.php?a=add&r=og&p=description&v=наше мета описание описание "}
    не совсем понял, работу мода
     
  3. TopicStarter Overlay
    byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    например,
    {include file="engine/metagen.php?a=add&r=og&p=keywords&v={title} [xfvalue_year], смотреть {title}, фильм {title} [xfvalue_year] смотреть онлайн и т.д."}

    ...аналогично можно настроить и метаданные для xfserach. Для этого в main.php перед
    PHP:
    if ( $dle_module == "showfull" AND $news_found ) {
    добавить
    PHP:
    if ( $dle_module == "xfsearch" AND $news_found ) {$tpl->set '{xfsearch}'$xf );}
    в шаблоне main.tpl использовать строку подключения со значением доп поля просматриваемой страницы через {xfsearch}.

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

    PS ни одного нормального модуля для сео оптимизации доп полей так и не нашёл!
     
    #3 byroot, 26 мар 2017
    Последнее редактирование: 26 мар 2017
    • Нравится Нравится x 2
  4. TopicStarter Overlay
    byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    Тема почищена от сообщений не по теме! Просьба далее писать только только при проблемах при возникновении использования кода из первого сообщения, а не юкоза, кордпресса, битрикса и прочих других CMS.
     
  5. Winston?!

    VIP Кинотрафик v2

    Регистрация:
    31 дек 2016
    Сообщения:
    1.233
    Лучших ответов:
    2
    Рейтинги:
    +94 / 11 / -0
    здесь {title} это "Заголовок" из первой страницы добавления новости или Meta Title, который берет поисковик?
     
  6. TopicStarter Overlay
    byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    это тег полной новости! А следовательно - https://dle-news.ru/extras/online/all17.html
     
    • Нравится Нравится x 1
  7. Uralbox

    Команда форума VIP Кинотрафик v2

    Регистрация:
    25 окт 2015
    Сообщения:
    1.593
    Лучших ответов:
    0
    Рейтинги:
    +184 / 5 / -0
    Т.е я как из инструкции понял, чтобы добавить изменение тайтла помемо keywords и description - необходимо додобавить третью строчку - {include file="engine/metagen.php?a=add&r=title&p=description&v=наш титл через метаген"}
     
  8. TopicStarter Overlay
    byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    совершенно верно! просто тайтл по другому выводится в отличие от кейвордс и дескрипшн... поэтому одно строкой здесь увы никак не обойтись.
     
    • Нравится Нравится x 1
  9. Uralbox

    Команда форума VIP Кинотрафик v2

    Регистрация:
    25 окт 2015
    Сообщения:
    1.593
    Лучших ответов:
    0
    Рейтинги:
    +184 / 5 / -0
    @byroot актуальная ли эта информация для 11.3 версии?
    Там есть выше такие строки -
    [​IMG]

    Получается если подкл title то можно выше хедера ставить теги?
    И по поводу -
    [​IMG]
     
    #9 Uralbox, 30 май 2017
    Последнее редактирование модератором: 31 май 2017
  10. TopicStarter Overlay
    byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    актуальна!
    можно куда угодно их в main.tpl прописать, но правильней перед {headers} все же выводить метатитл и дескрипшн... Главное то, что они указываться в секции <head> документа.
     
  11. Andrij

    Andrij Бывалый

    Регистрация:
    30 мар 2017
    Сообщения:
    509
    Лучших ответов:
    2
    Рейтинги:
    +84 / 27 / -0
    при использовании доп.поля типа [xfvalue_year] при выводе обрезает по это место "[" и выводит часть метатега как просто текст
     
  12. TopicStarter Overlay
    byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    скорее всего проблема в том,что доп поле ГОД выводится как перекрестные ссылки, а ссылки нельзя выводить в метатегах! Нужно создавать новый тег тогда для года, либо убрать с года использование ссылки в настройке доп поля.
     
    • Полезно Полезно x 1
  13. baga4

    Команда форума VIP Кинотрафик v2

    Регистрация:
    21 дек 2016
    Сообщения:
    71
    Лучших ответов:
    0
    Рейтинги:
    +18 / 0 / -0
    Женя, подскажи пожалуйста, а можно совместить со стандартным титл, дескрипшин, кейвордс и для отдельных категорий поставить твое решение, а для всех остальных оставить стандартный вывод?
     
  14. Andrij

    Andrij Бывалый

    Регистрация:
    30 мар 2017
    Сообщения:
    509
    Лучших ответов:
    2
    Рейтинги:
    +84 / 27 / -0
    я так думаю, что тут вывод идёт через fullstory.tpl, то есть к категории прикрепляешь fullstory1.tpl и делаешь вывод какой хочешь, но это не точно)))
     
  15. baga4

    Команда форума VIP Кинотрафик v2

    Регистрация:
    21 дек 2016
    Сообщения:
    71
    Лучших ответов:
    0
    Рейтинги:
    +18 / 0 / -0
    Пробовал через катлис, то выводил только там где задал, а в остальных вместо титла ссылка на новость
     
  16. baga4

    Команда форума VIP Кинотрафик v2

    Регистрация:
    21 дек 2016
    Сообщения:
    71
    Лучших ответов:
    0
    Рейтинги:
    +18 / 0 / -0
    Видать нужно, для всех категорий родительских задавать титл, кейвордс и дескрипшин, что сейчас и делаю)
     
  17. TopicStarter Overlay
    byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    это только для самих новостей, а не категорий! Категории лучше заполнять непосредственно в самих категориях.
     
  18. baga4

    Команда форума VIP Кинотрафик v2

    Регистрация:
    21 дек 2016
    Сообщения:
    71
    Лучших ответов:
    0
    Рейтинги:
    +18 / 0 / -0
    Я не правильно наверное изложил суть, так и есть я спрашивал по поводу замены титла в самих новостях, но только если новость находиться например в категории сериалы, то один титла, в категории фильмы другой, мультики третий. Решил вопрос, в фулстори для каждой категории задал свой шаблон
     
  19. TopicStarter Overlay
    byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    baga4 для этого в шаблонах новостей есть тег [catlist= чтобыне использовать несколько fullstory.tpl
     
    • Нравится Нравится x 1
  20. baga4

    Команда форума VIP Кинотрафик v2

    Регистрация:
    21 дек 2016
    Сообщения:
    71
    Лучших ответов:
    0
    Рейтинги:
    +18 / 0 / -0
    Спасибо за прекрасный хак, не могу нарадоваться, изначально так и сделал!
     
Похожие темы
  1. binders
    Ответов:
    6
    Просмотров:
    1.329
  2. PunPun
    Ответов:
    49
    Просмотров:
    10.077
  3. Defoz
    Ответов:
    9
    Просмотров:
    959
  4. Vimex
    Ответов:
    5
    Просмотров:
    655
  5. vladzenya
    Ответов:
    0
    Просмотров:
    497
Загрузка...
Яндекс.Метрика