Добавляем новое поле в JoomGallery 2.1.5. Версия Joomla 2.5.
Пример. Мне нужно добавить поле типа input type=text для категории (поле для самой фотографии добавляется идентично). Т.е. обычное поле. Назовем его h1_name. Например, нам нужно, что бы мы могли заголовок h1 на странице менять так как нам удобно.

1. Первое, это нужно добавить новое поле в таблицу _joomgallery_catg базу данных (для создания нового поля для изображения используем таблицу _joomgallery). Я его добавил через phpmyadmin.
Поле называем в нашем примере h1_name.

2. Редактируем следующей файл:

/administrator/components/com_joomgallery/models/forms/category.xml

В конце файла дописываем следующее:

<field
name=»h1_name»
type=»text»
class=»inputbox»
id=»h1_name»
label=»COM_JOOMGALLERY_COMMON_H1_NAME»
description=»COM_JOOMGALLERY_CATMAN_H1_NAME»
size=»40″
maxLength=»255″
/>

Естественно, перед конструкциями:

</fieldset>
</form>

3. Далее идем в файл:

/administrator/language/ru-RU/ru-RU.com_joomgallery.ini.

Это языковый файл. Здесь нам нужно добавить константы в конце файла. Я написал так:

COM_JOOMGALLERY_COMMON_H1_NAME=»H1 заголовок на странице»
COM_JOOMGALLERY_CATMAN_H1_NAME=»При заполнении этого поля на странице будет выводиться именно это поле. Если оставить пустым, то выведется предыдущее поле.»

4. В админке добавляем нужные html-формы:

/administrator/components/com_joomgallery/views/category/tmpl/form.php

Я добавляю новое поле под полем «Название»:

<li><?php echo $this->form->getLabel(‘h1_name’); ?>
<?php echo $this->form->getInput(‘h1_name’); ?></li>

И все. Теперь в админке есть это поле. При заполнении его — все сохраняется в нашей БД.

5. Осталось нам только его вытащить из базы данных и использовать в шаблоне. Для этого идем в модель:

/components/com_joomgallery/models/category.php

Находим метод function _loadCategory() и в нем примерно такую строчку:

->select(‘cid, name, parent_id, description, metakey, metadesc, params’)

В выборку добавляем наше новое поле и получаем:

->select(‘cid, name, parent_id, description, metakey, metadesc, params, h1_name’)

6. В шаблонах можно использовать по разному поле. Я, например, написал так:

<h1>
<?php
if ($this->category->h1_name != »):
echo $this->category->h1_name;
else:
echo $this->category->name;
endif;
?>
</h1>

 

 

 

Комментариев 3 “Добавление нового поля в JoomGallery

  1. find-way.net on 28.07.2016 at 23:31 пишет:

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

  2. ArtemBlack on 17.04.2018 at 02:49 пишет:

    А на Joomla 3.8 будет работать?
    И что делать с обновлениями? Они же все заново потрут?

    • zufar on 17.04.2018 at 13:49 пишет:

      1. Да на новой Joomla все так же.
      2. Да, потрут. Перезаливать нужно будет файлы.

Добавить комментарий для ArtemBlack Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Навигация по записям