MaxHub
Полезности по Maxsite CMS

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

Вопросы-ответы / 5 мая 2018

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

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

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

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

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

Комментариев: 4
  1. В чём конкретно проблема? Не смогли найти код вывода и разобраться какими средствами можно кастомизировать вывод?

  2. Совершенно верно smile

  3. Стыдно признаться, но все так и есть...

  4. При работе с движком очень рекомендую освоить любое средство поиска текстовой строки во всех файлах папки. Я использую встроенные средства 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 - вам нужно переименовать файл (убрать - в начале имени) и отредактировать задание массива внутри. После сохранения этого файла в админ-панели управления рубриками вы должны заметить указанные вами значения. Фишка настолько новая, что сам я ей пока не пользовался и поэтому у вас есть отличная возможность поэкспериментировать самостоятельно и отписаться здесь на сайте о ваших успехах.

Оставьте комментарий!

grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question

Вход / регистрация или войти без комментирования
  Имя и сайт используются только при регистрации

Авторизация MaxSiteAuth. Войти через loginza

(обязательно)