Перейти к содержимому


Фотография

Создаем/меняем темы для плагинов от Alexlex


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 2

#1 alexlex

alexlex

    Маэстро комментариев

  • Пользователи
  • PipPipPipPipPipPipPip
  • 523 сообщений
  • Location:Киев

Отправлено 27 January 2013 - 20:18

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

Итак, теперь существует 3 варианта подключения темы к плагину:
1. Темы поставляются вместе с плагином.
Это так как было до этого. Тут ничего не поменялось.

2. Тема для плагина может поставляться вместе с темой для дюны.
Для этого необходимо добавить в корень темы для дюны папку 'plugins', в которой надо создать подпапку с названием плагина, а в нее папку с названием темы (как это было для встроенной темы), в которою положить файл skin.php и папку с иконками.

3. Тему для плагина пользователь может подложить сам.
Для этого необходимо создать на первом носителе, доступном дюне (обычно внутренний диск) папку "dune_plugin_skins", в которой надо создать подпапку с названием плагина, а в нее папку с названием темы (как это было для встроенной темы), в которою положить файл skin.php и папку с иконками.

Пример темы для watch.is:
Прикрепленный файл  alexlex_plugins_example_skin.zip   336.5К   370 Количество загрузок:

Для создания своей темы для плагина от меня необходимо сделать следующие изменения в примере:
1. Сделать свои картинки и положить в папку icons
2. Переименовать главную папку. Имя должно состоять только из букв латинского алфавита и без пробелов.
3. Изменения необходимые в skin.php:
- меняем имя класса. Имя класса должно соответствовать схеме: [имя папки на втором шаге]Skin. Например: если на 2-м шаге я назвал папку alex, то и класс будет иметь имя alexSkin. Регистр имеет значение.
- дальше меняем следующие функции

public function get_short_name()
	{
		return 'alex';	  // тоже имя, что и название главной папки
	}

	public function get_long_name()
	{
		return 'от Алекса';	// эта строка будет отображаться в настройках плагина в списке при выборе темы
	}
	
	public function get_main_icon_path()
	{
		return '/icons/logo.png';   // путь к главной иконке (отображается на экране "Приложения" дюны). Путь относительно файла skin.php
	}

	public function get_settings_icon_path()
	{
		return '/icons/settings.png';   // путь к иконке настроек (отображается на экране "Настройки" дюны). Путь относительно файла skin.php
	}

В принципе, тема для плагина готова.
Теперь можно менять внешний вид плагина:
краткое описание функций:
GET_MAIN_MENU_FOLDER_VIEWS - меняет внешний вид главного экрана

Следующие три функции отвечаю за вид и расположение иконок на главном экране:
get_main_items_view_params_video - каталог
get_main_items_view_params_search - поиск
get_main_items_view_params_favorites - избранное
Количество этих функций будет столько сколько иконок на главном экране.

GET_VOD_CATEGORY_LIST_FOLDER_VIEWS - меняет внешний вид экрана категорий
get_category_items_view_params - меняет внешний вид конкретного пункта на экране категорий.
Эта функция принимает имя категории. При необходимости можно ориентироваться на это имя.
К примеру, при помощи этих двух функций можно изменить вид категорий со списка (обычно в моих плагинах) на плиточный вид.

GET_VOD_MOVIE_LIST_FOLDER_VIEWS - меняет внешний вид экрана с фильмами.
Функция должна возвращать массив с описаниями видов экрана с фильмами, между которыми можно будет переключаться красной кнопочкой А
get_vod_movie_items_view_params - параметры отображения конкретного фильма

GET_TEXT_ONE_COL_VIEWS - меняет внешний вид экрана с сериями

Вот где-то так. :)

Плагины, которые поддерживают эту схему (список будет меняться по мере переписывания плагинов):
Seasonvar.ru
Watch.is

#2 LEXAKROT

LEXAKROT

    Новичок

  • Пользователи
  • Pip
  • 2 сообщений

Отправлено 06 January 2017 - 12:36

 

Я не понял вообще как это поставить и куда ???



#3 Juniperus

Juniperus

    Маэстро комментариев

  • Редактор раздела
  • PipPipPipPipPipPipPip
  • 1487 сообщений

Отправлено 06 January 2017 - 16:34

Это пояснения как изменять внешний вид плагинов, написанных alexlex.