AMP версия DLE на основе страницы для печати - плагин DLE-print-page4amp

📅 {date}👁️ {views} просмотров📁 {category}

AMP версия DLE на основе страницы для печати - плагин DLE-print-page4amp

📅 29.12.2021👁️ 6389 просмотров📁 Наши разработки | Плагины для DLE
🏷️ Теги: плагин, модуль, DLE13, DLE14, DLE15, мобильный шаблон

Еще один плагин генерации AMP страниц для DLE, теперь на основе версии для печати.

Перед тем как устанавливать плагин, сделайте резервную копию файла {THEME}/print.tpl своего шаблона. Так как плагин загружает модифицированную версию данного файла с разметкой для AMP страницы.
Ссылка на "версию для печати" в мире, где распечатывать документы на принтере становиться плохим тоном (под соусом что мы за экологию и против вырубания лесов) имеет смысл приспособить для пользы своего веб-сайта. И совместить возможность печати (тем, кому это действительно нужно) и разметку AMP страницы для роботом.
Например, если обернуть стандартную строку html кода в шаблоне fullstory.tpl дополнительными тегами определяющими тип устрйоства с которого просматривают сайта.
И вместо базовых:
[print-link]  Распечатать[/print-link]

Написать так:
[print-link]
[desktop]  Распечатать[/desktop]
[not-desktop]  AMP версия страницы[/not-desktop]
[/print-link]

То посетители с ПК будут видеть привычную ссылка на "Распечатать", а посетители со смартфонов ссылку на AMP версию страницы

Пример шаблона AMP страницы

В основе AMP шаблона готовые скины с официального сайта amp amp.dev/ru/documentation/templates/simple_article/

Принцип работы AMP с DataLife Engine


AMP версия создается только для статьи целиком (то, что обычно отображается в шаблоне {THEME}/fullstory.tpl )
После подключения и активации плагина DLE-print-page4amp у каждой статьи сайта в метатегах генерируемых CMS появляется новый тег информирующий о наличии AMP версии страницы.
где rel="amphtml" это тот самый признак AMP-версии,
а ссылка вида https://sitename.com/o-skripte/print:page,1,1-post1.html ( на самом деле это версия для печати ) и есть адрес AMP страницы.
Проверить корректность работы всегда можно через https://search.google.com/test/rich-results

Скачать плагин:
[attachment=81:dle-print-page4amp_v1.0.0.zip] (с шаблоном print.tpl + css)
[attachment=82:dle-print-page4amp_v1_0_1.zip] автоматическая замена img на amp-img (с шаблоном print.tpl + css)
[attachment=83:dle-print-page4amp_v1_0_0.xml] (только файл плагина)
[attachment=84:dle-print-page4amp_v1_0_1.xml] (только файл плагина если нет необходимости перезаписывать шаблон версии для печати)
[attachment=85:dle-print-page4amp_v1_0_2.zip]
[attachment=87:dle-print-page4amp_v1_0_3.xml] для DLE 15.1 и php 7.3
Страница разработки https://github.com/tcse/DLE-print-page4amp
Актуальный релиз https://github.com/tcse/DLE-print-page4amp/releases

Официальный анонс на DLE-news.ru

В файле шаблона print.tpl работают все теги, которые заявлены разработчиками DLE.
Мы не вносили никаких дополнительных правок (версия 1.0.0). На практике это означает, что если в новых версиях движка появятся новые теги для страницы печати, то они так же будут доступны и в нашей версии AMP-шаблона на основе этого файла.
В версии 1.0.1 добавлена поддержка нового тега {amp-full-story} вместо обычного {full-story} внутри которого происходит автоматическая замена тегов img на amp-img для текста в теле публикации целиком.

Обратите внимание:


Формат amp страниц чувствителен к синтасису разметки.
И если вы ходите отображать свои изображения, то для них требуется использовать amp-img теги с обязательными атрибутами ширины и высоты.
Пример:
[image-1] 
    
[/image-1]

Данный код выведет amp-изображения первой картинки из краткой новости.
Так же для вывода видео используется свой код amp-video в том числе для ютуба.
Потребуется реализовать отображение ролика через дополнительное поле публикации.
Например дополнительное поле с именем amp-youtube-id
[xfgiven_amp-youtube-id]

[/xfgiven_amp-youtube-id]

Если ваш сайт использует функцию движка для вывода шаблона smartphone то файлы из папки templates/{THEME}/ необходимо скопировать в папку smartphone
Иначе при тестировании со стороны Google вашего сайта он не сможет обнаружить шаблон с amp разметкой.
Для использования контекстной рекламы на AMP страницах необходимо использовать специальные блоки информация о которых в официальной документации https://amp.dev/

История версий:


v1.0.3 от 2022-01-30


В версии 1.0.3 специальные правки для DLE 15.1 и только для нее.
[attachment=87:dle-print-page4amp_v1_0_3.xml] для DLE 15.1 и php 7.3
Если у вас перестал генерироваться метатег amp страницы, то в первую очередь проверить активацию действий внутри плагина


1. Открыть файл/engine/modules/main.php
в нем найти:
if ( $dle_module == "showfull" AND $news_found ) {

и добавить НИЖЕ:
//====== print-page4amp =======
if ($subaction == "showfull") {
	$metatags .= <<
	HTML;
};
//====== .print-page4amp =======

данная запись отвечает за генерацию метатега страницы с текстом новости и ссылкой на версию для печати


v1.0.2 от 2021-12-21


В версии 1.0.2 Добавлена папка шаблонов с файлами для templates/smartphone так как многие все еще используют для отображения на мобильниках отдельной смартфон-версии шаблона.

Обновлена структура файлов шаблона:
{THEME}/print.tpl
{THEME}/custom/print/categorymenu.tpl
{THEME}/custom/print/amp-custom-css.tpl

v1.0.1 от 2021-11-09


- доработан шаблон отображения полной новости

- тег {full-story} заменен на {amp-full-story} для автоматической замены img на amp-img
- Как всегда большое спасибо Павлу Pafnuty Белоусову

v1.0.0 от 2021-11-05


- исходная версия плагина с базовой разметкой