Актуальный релиз „DataLife Engine 19.1 Final“ buildid 108

подробнее о релизе

Fullstory-Metatags by Sander

26 февраля 2021 | 08:16 | Пятница
2 334
10
[ Рейтинг: 1 / Голосов: 2 ]
Fullstory-Metatags by Sander

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

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

С помощью специальной разметки, можно прямо в файле шаблона fullstory.tpl прописать желаемый алгоритм формирования метатегов.
Принцип модуля построен на том, что сначала выполняется полное формирование шаблона страницы, выполняется обработка всех тегов, всех условий [if ...] и [hide]. И только потом подключается модуль.

После установки модуля, достаточно в любом месте (рекомендую в начале) шаблона fullstory.tpl прописать код:
[metatags]
<title>Заголовок страницы</title>
<description>Описание страницы</description>
<keywords>ключевые, слова</keywords>
<robots>noindex,follow</robots>

<og:title>Заголовок для OpenGraph разметки</og:title>
<og:image>//example.com/image.jpg</og:image>
<og:any_tag>Содержимое тега any_tag</og:any_tag>
[/metatags]

Все двойные пробелы и табы будет заменены на один пробел. Все параметры не являются обязательными, если их не указать, то значение будет сформировано стандартно средствами движка.
Полагаю в целом принцип понятен, но отдельно стоит отметить логику работы тегов title и robots.
title - если в новости вручную задан свой метатег заголовка, то значение этого тега игнорируется
robots - если в новости не отмечена галочка запрета индексации, то будет обработано значение этого параметра.
Но полноценная работа этого тега поддерживается только начиная с DLE 13.3.
В более ранних версиях можно только полностью заблокировать доступ ботам используя любое из значений: false, no, off, 0

если кому-то нужно и спидбар править:
после
$v == 'title' && $v = 'header_title';

вставить
$v == 'speedbar' && $v = 'title';

в fullstory использовать <speedbar></speedbar>


если метатитл в новости заполнен, но выводился метатитл данным хаком

Удалить строго указанный код:
if ($v != 'title' || !$metatags['header_title'])


Версия для 13.0-15.1:
fullstory-metatags.zip [1.6 Kb] (cкачиваний: 164)

Версия для 15.2:
fullstory-metatags-by-sander.zip [1.66 Kb] (cкачиваний: 88)

Источник
19-04-2023, 22:15: Обновил инфу
Комментарии:
ℹ️
 

  1. upload_07 18 марта 2026 15:07
    upload_07

    Как исправить в новые версии dle 18 и 19+ вот эти теги дуплируются

    <og:title>Заголовок для OpenGraph разметки</og:title>
    <og:image>//example.com/image.jpg</og:image>
    <og:any_tag>Содержимое тега any_tag</og:any_tag>

    тоесть показывает стандартные от движка и те что я настроил!

    1. byroot AdMin 18 марта 2026 15:49
      byroot

      engine/engine.php удалить

      if ( count($social_tags) ) {
      
      	foreach ($social_tags as $key => $value) {
      
      		if( $key == "news_keywords" ) {
      			$meta->meta('news_keywords', $value);
      		} elseif ($key == "description") {
      			$meta->og('description', $value);
      			$meta->twitter('description', $value);
      		} elseif ($key == "image") {
      			$meta->image($value);
      		} elseif ($key == "url") {
      			$meta->url($value);
      		} else {
      			$meta->og($key, $value);
      		}
      
      	}
      }

      Это удалит :url и :description для twitter и og разметки. Их оба нужно будет прописать. Либо можно более жестко удалить стандартную разметку, но тут всё зависит от версии DLE. Если не получится самому разобраться - могу настроить, но специально писать плагин под это - дело индивидуальное...

      --------------------
      🎬🎬🎬 Мои услуги по DLE 👉👉👉 https://byroot.ru/uslugi.html 🎬🎬🎬
      1. upload_07 В субботу в 01:08
        upload_07

         Подготовлю сайт закажу у вас Микроразметка schema.org + OpenGraph

  2. Дмитрий 31 августа 2022 21:56
    Дмитрий

    Добрый день, можно что-то сделать, чтобы тег title не игнорировался, если в новости вручную задан свой метатег заголовка? 

    1. Дмитрий 31 августа 2022 22:08
      Дмитрий
      Именно для версии DLE 15.2
    2. byroot AdMin 1 сентября 2022 18:56
      byroot
      ответ автора данного хака:

      Примечание: Если у новости прописан метатег заголовка, то заголовок сформированный модулем будет проигнорирован.
      --------------------
      🎬🎬🎬 Мои услуги по DLE 👉👉👉 https://byroot.ru/uslugi.html 🎬🎬🎬
  3. Олег 6 февраля 2022 19:37
    Олег

    Приветствую

    На версии 15.1 не работает плагин

    Не подскажешь, может можно исправить самостоятельно?

    а то ждать от автора обновы долго придется.

    1. byroot AdMin 6 февраля 2022 22:18
      byroot
      Всё работает! Только что проверил на 15.1.

      Просто после добавления плагина нужно открыть его и в "Действия в файлах" открыть "Показать действия" и включить их. По умолчанию после добавления плагина все правки просто отключены!
      --------------------
      🎬🎬🎬 Мои услуги по DLE 👉👉👉 https://byroot.ru/uslugi.html 🎬🎬🎬
      1. Олег 7 февраля 2022 00:56
        Олег
        Спасибо, заработало!
        Вот сам бы ни за что бы не догадался.
        1. byroot AdMin 7 февраля 2022 10:46
          byroot
          Всегда пожалуйста!
          --------------------
          🎬🎬🎬 Мои услуги по DLE 👉👉👉 https://byroot.ru/uslugi.html 🎬🎬🎬
Модули для создания киносайта и не только на базе DataLife Engine, и многое другое...
Просто блог Евгения Попова, он же - byroot © 2015-2026 | Карта сайта