Меню

Tags for joomla настройка



Компонент Tags for Joomla – лучшие теги для Joomla

Tags for Joomla — один из лучших компонентов, при помощи которого можно создавать теги для Joomla 1.5.

Особенностью компонента является то, что он содержит множество настроек, поддерживает функцию ручного добавления тегов к любому материалу, а также осуществляет вывод материалов не через поиск, а в виде блога материалов.

Функционал компонента Tags for Joomla:

#1. Показ тегов в конце каждой статьи;

#2. 5 модулей для вывода последних, популярных, наиболее читаемых, случайных и пользовательских тегов;

#3. Поддержка ЧПУ;

#4. Плагины для совместной работы с sh404SEF, ARTIO JoomSEF;

#5. Совместная работа с компонентом Xmap для вывода всех меток в карту сайта;

#6. Совместимость с JoomlFish;

#7. Возможность ручного добавления тегов для каждого материала;

#8. Импорт тегов из ключевых слов;

#9. Вывод материалов в виде блога включая ссылку подробнее и изображения статьи;

#10. Настройка внешнего вида выводимых материалов;

#11. Настройка внешнего вида тегов;

Это основные функции компонента.

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

Настройка и использование компонента Tags for Joomla:

Внизу этого материала размещены ссылки на 5 архивов. По большому счету вам из ни понадобится только два это joomlatags-core.zip сам компонент и joomlatag_rus.zip русский язык для амин панели компонента.

Плагины tags-plugin-for-sh404sef1.2.zip, artio-sef1.1.zip и tags-for-xmap1.0.zip предназначены для совместной работы с этими компонентами. Поэтому если вы их не используете, то устанавливать их не нужно.

Устанавливается компонент стандартным способом. После установки у вас появится 5 новых модулей для вывода тегов. По умолчанию они будут опубликованы в позиции left.

Вместе с этим появятся новые плагины это:

plg_addTags_button — добавляет кнопку в низу редактора при помощи которой можно добавлять теги к материалу;

plg_tags_content — добавляет отображение тегов; plg_tags_search — обеспечивает поиск по тегам;

plg_tagsSef_system — нужен для создания ЧПУ из ссылок, которые идут по тегам.

Все плагины кроме последнего будут включены. Поэтому если вы используете стандартный SEF то включите этот плагин.

Для того чтобы добавить русский язык для административной панели компонента необходимо скачать архив joomlatag_rus.zip и скопировать из него файлы в папку с вашим Joomla сайтом.

Извлекаем папки из архива, затем идем в папку joomlatag_rus >> administrator >> components >> com_tag и копируем файл config.xml в папку: папка с вашим сайтом >> administrator >> components >> com_tag и заменяем существующий там файл.

Затем из папки joomlatag_rus >> language >> ru-RU копируем файл ru-Ru.com_tag.ini в папку: папка с вашим сайтом >> administrator >> language >> ru-RU. Теперь компонент русифицирован.

Добавить теги к материалу можно несколькими способами:

Внизу редактора имеется кнопка Add Tags нажав на которую появится окно в котором можно указать теги через запятую.

Добавить теги можно так же через Tag Manager. Для того чтобы в него зайти пройдите в административной панели Joomla — Компоненты >> Joomla Tags >> TAG MANAGER. В результате слева у вас будут расположены материалы, а справа поля в которые необходимо через запятую вписать теги.

Теги можно импортировать из ключевых слов которые заданны каждому материалу. Для этого в административной панели компонента выберите пункт Иморт Тэгов. Затем из раскрывающегося списка выберите Ключевые слова и нажмите на кнопку Импорт.

Читайте также:  Настройки сайдбара в wordpress

Кроме этого в панели управления компонентам имеется следующие элементы:

Менеджер Страниц Тэгов где можно редактировать теги, смотреть статистику просмотров, а также задавать вес тому или иному тегу.

Конфигурация — где можно изменить параметры компонента. Менеджер Шаблонов — где можно настроить внешний вид отображаемых тегов.

Источник

Использование тэгов в расширениях Joomla! 3.x

Система тегов в Joomla используется во всех Расширения ядра и предназначена для легкой интеграции в другие расширения, которые используют стандартные шаблоны проектирования Joomla.

Использовать тэги в расширении довольно просто. Для этого требуется внести эти изменения в расширение:

  • Зарегистрировать типы контента для видов расширения
  • Добавить «Observer methods» в классы таблиц расширения
  • Добавить поле тэгов к расширению в формах редактирования
  • Добавить код вывода тэгов в файлы видов расширения
  • При желании можно добавить метод пакетного создания тэгов в панели администрирования расширения

Регистрация типа контента для каждого вида

В Joomla! 3 типы контента, например, статьи, ссылки, контакты и т.п. регистрируются в таблице #__content_types с отдельной записью для каждого вида, например статьи, веб-ссылки, категории статей, категории веб-ссылок и т.п.

При установке вашего расширения необходимо создать новую запись для каждого вида, использующего тэги.

Вот структура таблицы #__content_types , каждый столбец будет описан в следующих разделах.

Имя столбца Тип столбца Цель
type_id INT (10) Ключ Записи
type_title VARCHAR (255) Название типа, например article
type_alias VARCHAR (255) Псевдоним типа, например com_content.article
table VARCHAR (255) Информация о классе таблицы
rules text В настоящее время не используется
field_mappings text Соответствие имен столбцов таблицы расширения стандартным Joomla! именам
router VARCHAR (255) Дополнительно: название метода маршрутизатора
content_history_options VARCHAR (5120) Дополнительно: .

type_id

Это поле является автоинкрементным ключ записи.

type_title

Название для вашего Тип содержимого, например статьи, контактная, Weblink, Вы можете сделать это либо с помощью SQL или послеполетного путем создания экземпляра JTableContenttype. Не забывайте тип категории, если вы используете Joomla категории API.

type_alias

Строка, определяющая компонент и вид (что бы в запросе на страницу, как правило, соответствующие название модели), например com_contact.contact, com_weblinks.weblink.

table

Вам нужно определить, какие таблицы, используемые компонентом содержат записи, с тэгами. Например вид ‘Контакт’ компонента Контакты использует #__contact_details , а вид ‘Ссылка’ компонента Ссылок использует #__weblinks .

Каждый из этих компонентов используется класс для записи в таблице: ContactTableContact для компонента Контакты и WeblinksTableWeblink для компонента Ссылок. Вам будут нужны префиксы названий классов, например ContactTable, WeblinksTable.

Обратите внимание, что все типы категорий используют таблицу #__categories .

Ячейка table дает полную информацию о классе таблицы в виде объекта JSON с двумя элементами. Первый элемент представляет свою ​​»особую» таблицу, второй — необязательную общую таблицу (по умолчанию выполнится JTableCorecontent ).

Вот запись JSON для типа содержимого веб-ссылка:

Значения, которые включены в запись:

Имя элемента Содержимое
dbtable Имя таблицы
key Имя основного ключа таблицы
type Тип содержимого
prefix Префикс названия класса
config Массив настроек, используемый в вашем компоненте в конструкторах и getInstance() методах, может быть пустым

Эта информация позволяет системе тэгов (и другим интерфейсам API) производить легкий доступ к таблицам компонента.

Читайте также:  Настройка работы сетевого сканера

Если вы используете категории Joomla, убедитесь, что вы создали тип категории вашего компонента так, что они могут быть помечены тэгами. В Joomla 3.1 и 3.1.1 есть ошибка, где поле тэгов покажет, даже если нет типа контента, но это исправляется в 3.1.4.

Примечания

  • Именем таблицы для главной таблицы является #__ucm_content ; это неверно для 3.1 и 3.1.1, где эти данные не используется. Данные используются начиная с 3.1.4.
  • Поле type_title потенциально может быть использовано для отображения заголовков типов, хотя это не реализовано в настоящее время, за исключением области ContentType. Обычно оно должно начинаться с заглавной буквы, писаться на английском языке. Смотри заметку о том, как сделать это поле переводимым: для того, чтобы ваши имена типов были переводимыми надо добавить COM_TAGS_CONTENT_TYPE_+type_title=»Type Title» в ini и sys.ini языковых файлах.

rules

Правила в настоящее время не используется. Это поле, вероятно, будет удалено в пользу asset_id для каждого типа, в настоящее время вы можете игнорировать это поле, которое будет управляться JTable .

field_mappings

Эта запись отображает соответствие имен столбцов в таблице вашего компонента с набором стандартной Joomla! имен. Это отображение хранится в виде массива JSON с первым «common»

элементом с общими полями и вторым «special» элементом, отображающим другие поля из таблицы.

Вот запись field_mappings для Content Type Баннер (выбран потому, что он является богаче пример, чем статьи или WebLink). Обратите внимание, что ‘общие’ отображения, которые не имеют никакого эквивалента включены как «нуль» (оставляя их пустыми может вызвать SQL вопросы); имена и значения в «специальной» элемента всего матча, как они ограничены к этому компоненту.

Как минимум для общих полей необходимо сопоставить: content_item_id, alias и title для того, чтобы успешно создавать URL-адреса для списков элементов с тэгами. Вы также, вероятно, захотите сопоставить: access, status и language поля. Специальные поля являются необязательными.

Примечание

  • API-интерфейсы JHelperTags и JUcm в 3.1.1 поддерживают массивы для этого поля, но по состоянию на 3.1.4 поддерживаются массивы или объекты. По умолчанию объекты.

router

Это необязательное поле включает имя статического метода помощника маршрутизатора для этого типа, найденного в фронт-энд папке помощников компонента, например WeblinksHelperRoute::getWeblinkRoute .

Если в вашем компоненте нет пользовательского маршрутизатора, то тэги возвращаются к правилам в JHelperRoute .

Если вы только храните данные в #__ucm_content вы в конечном итоге можете оставить поле маршрутизатор пустым, хотя эта опция еще не реализована.

content_history_options

Этот раздел был добавлен в Joomla! 3.2 как связь с компонентом истории контента.

Вот запись для типа контента Баннер:

Создание записи

Можно делать записи в программе установки в одном из трех способов:

  • в postflight методе установочного скрипта
  • путем создания экземпляра JTableContenttype и добавления строки или
  • с помощью SQL, чтобы создать запись непосредственно

Изменение класса таблицы вашего компонента (или классы, если у вас есть несколько таблиц)

Добавьте следующее в вашем JTable конструктор:

Добавление этой строки больше не нужно после 3.1.4 Пожалуйста, прочитайте историю документа для этой страницы, если вы должны поддерживать 3.1.0 или 3.1.1.

Для Joomla 3.2 нужно добавить эту строку: (Не забудьте заменить weblinks вашим именем компонента)

Читайте также:  Настройка коробки передач forza

Добавить теги к методу getItem() модели

Примечание: это требуется только в 3.1.0 и 3.1.1. Это не должно быть использована в 3.1.4 или более поздней версии. Пожалуйста, прочтите историю этой странице, если вы нужны инструкции для более старых версий.

Добавление поля тегов в виды редактирования

В любых макетах редактирования, где вы хотите использовать эту функцию, вы должны добавить поле в XML и соответствующих макетах при необходимости. Основные макеты используют JLayout для управления тэгами,тот же макет может быть использован любым расширением.

Обновление: Обратите внимание, что только в 3.1.1 есть специальная обработка этого в ядре. Теги в виде редактирования ДОЛЖНЫ быть частью метаданных группы. Ядро обеспечивает два JLayouts чтобы помочь вам управлять стандартными форматами — один (details) для метаданных и один для боковой панели, которая включает вкладки. В обновлении расширение 3.1.4 вам может понадобиться, чтобы исправить настроить вида редактирования.

В 3.1.4 или позднее эта специальная обработка не требуется. Наилучшим вариантом является использование стандартных JLayouts так как это обеспечивает последовательную процедуру для пользователей.

Поле подгружает все требуемые библиотеки JavaScript. Вам не нужно беспокоиться об этом.

Поле поддерживает два режима:

  • Nested tags mode. Иерархический список тэгов. Не поддерживает создание тэгов налету.
  • AJAX mode. Тэги ищутся во время ввода пользователем (мин. 3 символа необходимы для запуска поиска AJAX). Пользовательские тэги добавляются нажатием на ENTER или запятую. Тэги показывают глобальный маршрут/путь. Пример: grandpa/parent/tag

Поле может быть настроено для использования com_tags настроек Tag field mode , чтобы определить его режим. Для принудительной установки режима поля мы должны добавить mode=»ajax» или mode=»nested» к определению поля тегов.

Пример принудительного режима AJAX:

Поле также включает атрибут разрешить / запретить пользователю вводить произвольные значения тэгов. В данный момент это работает только в режиме AJAX. Атрибут должен быть добавлен в определении поля как **custom=»allow»** или **custom=»deny»**

Пример поля с запретом произвольных тэгов:

если он еще не введен. Обычно multiple должно быть true, если у вас нет особых причин делать иначе. В основных компонентах в панели администрирования, поле тэгов находится в группе, показанной справа, ниже поля языка.

Примечание: По состоянию на 3.1.2, если вы хотите использовать поле для обозначения родительских тэгов, вы должны добавить parent=»parent» в XML определение поля.

Подготовка вида

Добавьте в ваш view.html.php перед загрузкой макета:

Первый параметр должен соответствовать типу в таблице типов. Второй параметр является первичным ключом, с которым эта запись хранится в таблице. Это может быть использовано в любом виде, где вы хотите вывести теги связанные с этим элементом.

Настройка просмотра

В любом макете, где вы хотите отобразить теги, связанные с материалом введите:

Измените имена объектов и свойств по мере необходимости.

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

Пакетная обработка

Если вы хотите добавить возможность делать пакетное добавление тэгов в виде списка материалов, добавьте тег к default_batch layout

И добавить тег к классу кнопки в модальном окне (Не полностью необходимо на данный момент, но хорошо для потенциальных будущих изменений, например, если добавляется unTag.)

Источник

Adblock
detector