Пользовательский переключатель тем

 

Доброго времени суток дорогие читатели моего блога Улыбаюсь Совсем недавно, один из моих читателей  —  dlegame, поинтересовался как для системы RS-BLOG можно реализовать пользовательский переключатель шаблонов. dlegame подкинул мне тему для написание этой заметки, за что ему огромное человеческое спасибо Смеюсь

Прочитав его комментарий я подумал: «А почему бы не реализовать данный переключатель в виде дополнительного модуля?» Собственно, как мне казалось, впилиная в систему возможность подключать мини модули, самое то для реализации переключателя.

Но не тут то было...

 

 

Если кто разбирал устройство RS-BLOG должен был видеть, что дополнительные модули подключаются почти в самом низу файла index.php, стало быть, шаблон для вывода (например) новостей был уже запрошен, и переключать тему уже бессмысленно.

Если новую фишку реализовывать с помощью дополнительных модулей, то придется выбирать один из двух путей:

  1. Создавать шаблоны с полностью одинаковым набором классов (я имею ввиду классы верстки). Таким образом темы будут отличаться лишь содержанием CSS файлов. При таком раскладе переключатель будет работать как часы Улыбаюсь
  2. Перенести модуль дополнительных модулей почти в самый верх файла index.php. Таким образом позволить дополнительным модулям подключаться раньше системных. При выборе данного пути, темы могут быть совершенно разными, и переключатель будет так же работать как часы Улыбаюсь

Я думаю что самый адекватный путь это немного переписать index.php. Поэтому опишу установку модуля с учетом данного пути.

 

Ставим модуль «Переключатель шаблонов»

 

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

Скаченный модуль (вот от сюда) необходимо разархивировать и положить в папку /moduls/moremoduls/

 

Расположение модуля

 

Обратите внимание на путь.

Теперь, нам необходимо зайти в настройки блога, в пункт «Еще модули...»

 

еще модули

 

На данной странице, если Вы все правильно скопировали, Вам нужно будет включить модуль

 

включить мини модуль

 

Модуль будет включен когда кружочек станет черным Улыбаюсь

Далее по инструкции необходимо переменную $rs_tpl поместить в шаблон main.tpl.php.

 

переменная rs_tpl

 

Вообще данную переменную необходимо поместить во все темы, что у Вас есть.

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

 

Подключение сторонних модулей

 

После проделанной процедуры, вот что я получил:

 

Шаблон по дефолтуПереключил шаблонСписок тем

 

Заключение

 

Ну вот, собственно на этом все. Надеюсь данный модуль будет полезен не только для dlegame Улыбаюсь

Всем всего хорошего, у меня все

 

Возможно Вам будут интересны следующие заметки

Комментарии (14)

Ваше имя *
Сайт
Ваш E-mail *
Ваше сообщение *
 
dlegame, 28 Мая 2013 г. 11:14 пишет:
Читатель
Спасибо вам :)
RAEman, 30 Мая 2013 г. 04:58 пишет:
Гость
Ну по-моему можно и поработать с куками или localstorage (javascript). Например при получении какой-нибудь переменной мы меняем index.html c приложенным к нему css.... Вот только я не знаю как... не подскажешь?
Алексей, 30 Мая 2013 г. 10:47 пишет:
Автор
В моем случае самый правильный способ, это подменять переменную именно на стороне сервера. С помощью локального хранилища это сделать не возможно.
Если честно я даже не знаю как провернуть тоже самое, используя хранилище вместо кук
Ответ для пользователя: RAEman
Дмитрий, 16 Июня 2013 г. 10:22 пишет:
Гость
Сам шаблон поменять не получится, но стили к нему менять можно. С помощью JS подставлять новый адрес к стилям.
Ответ для пользователя: RAEman
wiz, 16 Июля 2013 г. 04:54 пишет:
Читатель
Вы о чем?
Алексей, 16 Июля 2013 г. 10:22 пишет:
Автор
А что Вам тут не понятно?
Ответ для пользователя: wiz
dlegame, 10 Сентября 2013 г. 09:45 пишет:
Читатель
Модуль для RS-Blog v 2.8.0:
RS-uLogin v 1.0
Описание:
Модуль дает возможность комментировать только авторизованным пользователям через сервис uLogin.
Скачать: http://rghost.ru/48667851
PS: Данным модуль был адаптирован из системы uDiscuz! (Сборка на RS-Blog v 2.8.0)
Fox, 19 Сентября 2013 г. 18:21 пишет:
Гость
Спасибо за модуль! а можете ли вы алексей создать модуль гостевая книга? думаю что будет полезное для блога и для читателей. :)
Ris, 13 Февраля 2015 г. 13:02 пишет:
Гость
Есть ли модуль регистрации для RS-Blog?
Алексей, 21 Февраля 2015 г. 20:28 пишет:
Автор
К сожалению нет...
Ответ для пользователя: Ris
Алексей, 02 Марта 2015 г. 18:22 пишет:
Гость
Добрый вечер, а как можно сделать, чтобы категории выводились не древовидно, а таблицей? то есть чтобы каждой категории можно было задать свое оформление? к примеру чтобы категории выводились на главной странице так же, как посты на главной этого сайта - insider.pro
Ris, 04 Марта 2015 г. 00:48 пишет:
Гость
Есть ли еще дополнения или модули?
Алексей, 05 Марта 2015 г. 09:59 пишет:
Автор
к RS-BLOG? Нет, нету. Движок получился слишком "Деревянным", для него сложно что-либо дописывать, и изобретать...
Ответ для пользователя: Ris
dlegame, 07 Марта 2015 г. 12:33 пишет:
Читатель
Для начинающих для RS Blog писать дополнения очень сложно ибо на собственной шкуре это испытал но сейчас могу любое для него дополнения сделать и приглашаю вас стать моим бета тестором Elementary CMS - github.com/sibwebgroup/ecms
сейчас пишу стабильную версию и код между стабильной и бета отличаются ибо стабильную пишу с нуля...