MetaX 1.5.0 Автоматическая генерация HTML тегов Base, Meta и Link. Metax modx
MetaX MODX Revolution. Генерация мета-тегов MODX
Что такое MetaX?
MetaX (Meta Tags Extended) – это обычный сниппет для MODX Evolution and MODX Revolution, генерирующий метат-тэги. Он автоматизирует и упрощает процесс создания мета-тэгов.
Системные требования
- MODx Evolution 0.9.6 или более новая версия
- MODx Revolution 2.0.0 или более новая версия
- PHP5 или более новая версия
История создания
MetaX создан в 2010 году для работы в MODX Evolution и MODX Revolution, используя одни и те же исходники. Позже стали использоваться различные исходники для более полного использования новых возможностей MODX Revolution. Все версии MetaX выпущены его разработчиком Sal Sodano (salscode.com) совместно с другими участниками. Если информации ниже будет недостаточно, вы можете найти более старую документацию по ссылке salscode.com/modx-extras/metax.
Загрузка
MODX Evolution
Использование
MODX Revolution
Версия MODX Revolution, начиная с MetaX v2.0, включает 3 чанка, которые обусловливают выходные данные и создают возможность использовать ваш собственный чанк с &tpl свойствами. Данные чанки используют сочетание стандартных плейсхолдеров MODX и плейсхолдеров, разработанных для MetaX. Ниже приведена информация о специфических плейсхолдерах MetaX.
Сниппет MetaX вызывается в MODX Revolution, используя следующий синтаксис:
[[!MetaX]]Свойства
Имя |
Описание |
Значение по умолчанию |
tpl |
Имя чанка, использующегося для вывода данных. Его свойства отменяют свойства &html. |
metax-xhtml4 |
html |
Если значение 2, будет использоваться синтаксис HTML5, если 1 - HTML4, если 0 - xHTML4. |
0 |
favicon |
Путь к favicon (убедитесь, что файл существует). |
favicon.ico |
mobile |
Путь к уменьшенному изображению для мобильных устройств (убедитесь, что файл существует). |
mobile.png |
copyfrom |
Год, которым датируется начало авторских прав (например, 2003) |
None / нет |
copytill |
Год, окончания действия авторских прав |
Current Year / Текущий год |
rss |
Список идентификаторов документов, которыми обладает(ют) RSS фид(ы), разделитель – запятая. |
None / нет |
css |
Список ссылок CSS, а также, при необходимости, выполнение условных операторов Internet Explorer (убедитесь, что файл существует), разделитель – запятая. |
None / нет |
Чанк плейсхолдеры
Имя | Описание |
metax.robots | Выходные данные для соответствующих команд роботам. |
metax.canonical | Выходные канонические url для страницы. |
metax.cache | Выходные данные для соответствующих команд по управлению кэшем. |
metax.createdby | Выходные данные, содержащие полные данные разработчика Ресурса. |
metax.editedby | Выходные данные, содержащие полные данные последнего редактора Ресурса. |
metax.copyyears | Выходные данные, динамически определяющие даты авторских прав на основе текущего года. |
metax.favicon | Выходные данные, содержащие путь к favicon, после проверки существования файла. |
metax.mobile | Выходные данные, содержащие путь mobile icon, после проверки существования файла. |
metax.css | Выходные данные HTML, необходимые для CSS файла (ов), после проверки существования каждого файла. |
metax.rss | Выходные данные HTML, необходимые для RSS фида (ов) ), после проверки существования каждого ресурса.. |
MODX Evolution
Сниппет MetaX в MODX Evolution вызывается с помощью следующего синтаксиса:
[[!MetaX!]]Свойства
Все вышеописанные свойства (кроме &tpl) поддерживаются и в MODX Evolution.
Имя | Описание | Значение по умолчанию |
tabs | Контроль количества вкладок перед созданием каждого элемента | 1 |
spaces | Контроль количества пробелов перед каждым созданным элементом, пробелы добавляются после вкладок. | 0 |
language | Контроль контента в мета-теге content-language и в теге Dublin Core language | en |
keywords | Имя TV, содержащего ваши ключевые слова. | keywords |
allkeywords | Имя чанка, содержащего ключевые слова для использования на всех страницах. | AllKeywords |
abstract | Имя Поля / ТV, содержащего аннотацию | longtitle |
author | Имя автора (авторов) сайта | [(site_name)] |
copyholder | Имя владельца авторских прав. | [(site_name)] |
ietool | Если 1, то отключается IE Image Toolbar, отображаются мета-тэги, что позволяет их отключить. Если 0, мета-теги не отображаются, IE Toolbar остается включенным). | 1 |
Свойства &css
&css свойства MetaX позволяют использовать условные операторы IE.
Пример:
[[!MetaX? &css=`file1.css,file2.css:lte IE 7,file3.css:lt IE 7`]]В вышеприведенном примере:
- file1 будет первым, условные операторы IE использованы не будут.
- file2 будет следующим и будет использовать lte IE 7.
- file3 будет последним и будет использовать lt IE 7.
- Нижеприведенное будет выводиться (обратите внимание, в действительности код значительно больше, здесь показано только управление &css):
www.modx.cc
MetaX: Примеры - [MODX] Guru
Вызов сниппета необходимо разместить между тегами <head> и </head>. Сниппет использует переменные, значения которых по умолчанию могут не совпадать с вашими значениями. Например, сниппет ищет ключевые слова в TV-параметре "keywords", убедитесь, что для ключевых слов у вас используется такой же TV-параметр или укажите при вызове сниппета другое значение в параметре &keywords.
Пример вызова сниппета для русскоязычного сайта:
[!MetaX? &language=`ru`!]Пример кода, генерируемого сниппетом MetaX
Статья была бы не полной, если ли бы я не привел конечный результат работы сниппета. Код, сгенерированный сниппетом MetaX на этой самой странице выглядит следующим образом:
MetaX - Школа MODX
Вызов сниппета необходимо разместить между тегами <head> и </head>. Сниппет использует переменные, значения которых по умолчанию могут не совпадать с вашими значениями. Например, сниппет ищет ключевые слова в TV-параметре "keywords", убедитесь, что для ключевых слов у вас используется такой же TV-параметр или укажите при вызове сниппета другое значение в параметре &keywords.
Пример вызова сниппета для русскоязычного сайта:
[!MetaX? &language=`ru`!]Пример кода, генерируемого сниппетом MetaX
Статья была бы не полной, если ли бы я не привел конечный результат работы сниппета. Код, сгенерированный сниппетом MetaX на этой самой странице выглядит следующим образом:
<!-- base --> <base href="http://i--gu.ru/" /> <meta name="robots" content="index, follow" /> <link rel="canonical" href="http://i--gu.ru/metax" /> <meta http-equiv="content-language" content="ru" /> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta http-equiv="pragma" content="cache" /><meta name="copyright" content="Copyright (c) 2011 - 2012 by Я гу.ру" /> <meta http-equiv="imagetoolbar" content="no" /><!-- Dublin Core --> <link rel="schema.DC" href="http://purl.org/dc/elements/1.1/" /> <meta name="DC.contributor" content="Я гу.ру" /> <meta name="DC.creator" content="Я гу.ру" /> <meta name="DC.date" content="2012-01-14" /> <meta name="DC.description" content="Сниппет MetaX. Автоматическая генерация HTML тегов Base, Meta и Link" /> <meta name="DC.format" content="text/html" />
<meta name="DC.identifier" content="MetaX - 435" /> <meta name="DC.language" content="ru" /> <meta name="DC.publisher" content="Я гу.ру" /> <meta name="DC.rights" content="Copyright (c) 2011 - 2012 by Я гу.ру" /> <meta name="DC.subject" content="Документация MODx, Сниппеты, Шаблон MODx, " /> <meta name="DC.title" content="MetaX" /><!-- icons/rss/css --> <link rel="shortcut icon" type="image/x-icon" href="http://i--gu.ru/favicon.ico" /> <link href="http://i--gu.ru/rss.xml" rel="alternate" type="application/rss+xml" title="Я гу.ру | Уроки MODx Evolution" />
<link rel="stylesheet" href="assets/templates/magicbox/css/style.css" type="text/css" /> <link rel="stylesheet" href="assets/css/AnimationMenus2.css" type="text/css" /><!-- end MetaX output -->
i--gu.ru
Интеграция дизайна MODX Revolution, разбивка шаблона на чанки
Второй урок по разработке интернет магазина на MODX revolution + MiniShop2
Интеграция дизайна главной страницы, разбивка шаблона на чанки
Для просмотра видео введите пароль mini2shop
Чанк Head
<head>
<!--[if IE]>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<![endif]-->
<base href="[[++site_url]]">
<!-- meta -->
<title itemprop="name">[[*longtitle:ifempty=`[[*pagetitle]]`]]</title>
<meta name="keywords" content="[[$AllKeywords:notempty=`[[$AllKeywords:strip]], `]][[*keywords:strip]]">
[[*description:notempty=`<meta name="description" content="[[*description:strip]]">`]]
[[*longtitle:notempty=`<meta name="abstract" content="[[*longtitle:replace=`<br />== `:replace=`<br>== `:striptags]]">`]]
<meta http-equiv="last-modified" content="[[*editedon:strtotime:date=`%a, %d %b %Y %H:%M:%S %Z`]]">
<meta name="author" content="[[+metax.createdby]]">
<meta name="copyright" content="Copyright (c) [[+metax.copyyears]] by [[++site_name]]">
<meta name="robots" content="[[+metax.robots]]">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="[[+metax.canonical]]">
<meta http-equiv="content-language" content="[[++cultureKey:ifempty=`en`]]">
<meta http-equiv="Content-Type" content="[[*contentType:lcase]]; charset=[[++modx_charset]]">
<meta http-equiv="pragma" content="[[+metax.cache]]">
<meta http-equiv="cache-control" content="[[+metax.cache]]">
<meta http-equiv="Content-Style-Type" content="text/css">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<!--[if IE]><meta http-equiv="imagetoolbar" content="no" /><![endif]-->
<!-- Dublin Core -->
<meta name="DC.contributor" content="[[++site_name]]">
<meta name="DC.creator" content="[[+metax.editedby]]">
<meta name="DC.date" content="[[*editedon:strtotime:date=`%Y-%m-%d`]]">
<meta name="DC.format" content="[[*contentType:lcase]]">
<meta name="DC.identifier" content="[[*pagetitle]] - [[*id]]">
<meta name="DC.language" content="[[++cultureKey:ifempty=`en`]]">
<meta name="DC.publisher" content="[[++site_name]]">
<meta name="DC.rights" content="Copyright (c) [[+metax.copyyears]] by [[++site_name]]">
<meta name="DC.rightsHolder" content="[[++site_name]]">
<meta name="DC.title" content="[[*pagetitle]]">
<!-- icons/rss/css -->
[[+metax.favicon:notempty=`<link rel="shortcut icon" type="image/x-icon" href="[[+metax.favicon]]">`]]
[[+metax.mobile:notempty=`<link rel="apple-touch-icon" href="[[+metax.mobile]]">`]]
[[+metax.css]]
[[+metax.rss]]
<!-- end MetaX output -->
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<![endif]-->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="">
<meta name="author" content="">
<title>Amaze, premium HTML5 & CSS3 template</title>
<!-- Favicons Icon -->
<!-- Mobile Specific -->
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<!-- CSS Style -->
<link rel="stylesheet" href="/assets/amaze/css/bootstrap.min.css" type="text/css">
<link rel="stylesheet" href="/assets/amaze/css/slider.css" type="text/css">
<link rel="stylesheet" href="/assets/amaze/css/owl.carousel.css" type="text/css">
<link rel="stylesheet" href="/assets/amaze/css/owl.theme.css" type="text/css">
<link rel="stylesheet" href="/assets/amaze/css/font-awesome.css" type="text/css">
<link rel="stylesheet" href="/assets/amaze/css/style.css" type="text/css">
<!-- Google Fonts -->
</head>
www.modx.cc