Свое поле для пользователя?

#1 23 ноября 2015 в 15:28
Я хочу добавить дополнительное поле для пользователя. Как нужно это оформить, чтобы можно было распространять через магазин дополнений instantCMS? К примеру мен нужно добавить select, который будет влиять на avatar.
#2 23 ноября 2015 в 15:34
Вам нужно собрать установочный пакет или нужно создать поле select, которое будет влиять на avatar и запихать его в установочный пакет?
#3 23 ноября 2015 в 15:38


Вам нужно собрать установочный пакет или нужно создать поле select, которое будет влиять на avatar и запихать его в установочный пакет?

Loadырь

Мне нужно собрать любое поле (селект для примера) собрать в установочный пакет.
#4 23 ноября 2015 в 18:23
Создаетё папку, называете field_select (или своё что-то)
В ней создаетё папку package (обязательно так)
В неё копируете, с сохранением каталогов вложенности, файлы:
\system\fields\list.php
templates\default\assets\fields\list.tpl.php
и если есть поддержка локализации, то и файл \system\languages\ru\field_selector.php специально созданный файл для вашего поля, если используются новые языковые переменные. Другими словами создаёте недостающие папки из пути к файлу и помещаете в них ваши файлы.
Рядом с папкой package кладёте файлы:
install.php с содержимым
  1. function install_package(){ return true; }
manifest.ru.ini с содержимым
  1.  
  2. [info]
  3. title = "Название поля'"
  4. image = "package.png"
  5.  
  6. [version]
  7. major = "1"
  8. minor = "0"
  9. build = "0"
  10. date = "20160120"
  11.  
  12. [depends]
  13. core = "2.3.0"
  14.  
  15. [author]
  16. name = "Кто вы"
  17. url = "где вас искать"
  18.  
  19. [description]
  20. text[] = "Добавляет поле 'Select'."
и спецкартинку package.png
Если есть запросы к БД при установке, прикладываем ещё и файл install.sql с запросами.
Запаковать содержимое каталога field_select (или своё что-то) в .zip архив и отправить всем желающим.
#5 23 ноября 2015 в 18:54
Посмотрите сначала вот эти видео-туториалы Они решат большую половину ваших вопросов.

Как нужно это оформить, чтобы можно было распространять через магазин дополнений instantCMS?

Роман Волков
А распространять через магазин дополнений — это основная ваша цель? laugh
#6 25 ноября 2015 в 08:55


Создаетё папку, называете field_select (или своё что-то)
В ней создаетё папку package (обязательно так)
В неё копируете, с сохранением каталогов вложенности, файлы:
\system\fields\list.php
templates\default\assets\fields\list.tpl.php
и если есть поддержка локализации, то и файл \system\languages\ru\field_selector.php специально созданный файл для вашего поля, если используются новые языковые переменные. Другими словами создаёте недостающие папки из пути к файлу и помещаете в них ваши файлы.
Рядом с папкой package кладёте файлы:
install.php с содержимым

  1. function install_package(){ return true; }
manifest.ru.ini с содержимым
  1.  
  2. [info]
  3. title = "Название поля'"
  4. image = "package.png"
  5.  
  6. [version]
  7. major = "1"
  8. minor = "0"
  9. build = "0"
  10. date = "20160120"
  11.  
  12. [depends]
  13. core = "2.3.0"
  14.  
  15. [author]
  16. name = "Кто вы"
  17. url = "где вас искать"
  18.  
  19. [description]
  20. text[] = "Добавляет поле 'Select'."
и спецкартинку package.png
Если есть запросы к БД при установке, прикладываем ещё и файл install.sql с запросами.
Запаковать содержимое каталога field_select (или своё что-то) в .zip архив и отправить всем желающим.

Loadырь

Спасибо за подробное описание
#7 25 ноября 2015 в 08:57


Посмотрите сначала вот эти видео-туториалы Они решат большую половину ваших вопросов.

Как нужно это оформить, чтобы можно было распространять через магазин дополнений instantCMS?

Роман Волков
А распространять через магазин дополнений — это основная ваша цель? laugh

Val

Спасибо за видео. Нет, распространение через магазин не основная цель (хотя если сделаю, то бесплатно выложу). Просто как написать виджет или компонент я понял, а вот когда увидел в фильтре свойство "Поле" — стало интересно.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.