Как вывести название рубрики в мета тег description?

/ Просмотров: 2069

Здравствуйте!

Мне нужно вывести в мета тег description названия рубрик записи.

Например, название можно вывести так: mso_head_meta('title')

Но как это можно реализовать с названиями категорий...

Подскажите, пожалуйста, может, кто знает.

Комментариев: 4 RSS

При работе с движком очень рекомендую освоить любое средство поиска текстовой строки во всех файлах папки. Я использую встроенные средства Far manager, но у вас может быть любое другое, удобное для вас.

Для начала делаем поиск текста «meta name="description"» в папке \application\maxsite\ (да и вообще, при решении любого вопроса по шаблону вам скорее всего будет нужно искать именно по этой папке).

Этот поиск однозначно показывает файл \application\maxsite\templates\default\custom\template.php. Если его открыть, то вас в нём должна заинтересовать функция my_default_head_section, в которой и прописан вывод мета-поля description.

Как видно по коду - вывод мета-поля прописан жёстко и единственный вариант его изменить - кастомизировать всю функцию, а точнее, её код.

В принципе, можно прямо тут всё и поправить так, как вам нужно. Функция не является частью ядра системы и принадлежит шаблону. Но, конечно, нужно учитывать, что я даю ссылки на default-шаблон, а он может затереться при обновлении движка. Поэтому, имеет смысл вести речь о вашем собственном шаблоне на основе дефолтного. Тогда точно ваши правки не исчезнут после обновления.

Если вам как-то ссыкотно править "стандартную" функцию, то можно продолжить поиски для места кастомизации. Логичным было бы поискать место вызова функции my_default_head_section - может там будет место удобно всё поменять?

Да, будет. Простым поиском находим, что функция вызывается из файла \application\maxsite\templates\default\main\blocks\body-start.php кодом:

if ($fn = mso_fe('custom/head-section.php')) 
 require($fn); // подключение HEAD из файла
else 
 my_default_head_section(); // подключение через функцию

Из кода видно, что достаточно создать в подпапке custom папки шаблона файл head-section.php и весь вывод секции head всех страниц будет определяться уже содержимым этого файл. Если лениво писать код с нуля, то можно просто скопипастить в него код функции my_default_head_section и кастомизировать его под собственные нужды.

Вот собственно и всё, что нужно знать о кастомизации вывода секции HEAD.

Хотя нет. Есть ещё одна новая штука, которая появилась в движке совсем недавно. Я про возможность задания мета-полей для рубрик через файл my-category-meta.php. Его заготовка находится в файле \application\maxsite\templates\default\custom\-my-category-meta.php - вам нужно переименовать файл (убрать - в начале имени) и отредактировать задание массива внутри. После сохранения этого файла в админ-панели управления рубриками вы должны заметить указанные вами значения. Фишка настолько новая, что сам я ей пока не пользовался и поэтому у вас есть отличная возможность поэкспериментировать самостоятельно и отписаться здесь на сайте о ваших успехах.