info navigation

phpbb-belk.ru

темы, связанные с форумом phpbb 3.0.x



Новая тема  [ 1 сообщение ]  Просмотры: 2909

Автор Сообщение
Не в сети
(Андрей)  
Администратор
Аватара пользователя

Стаж: 9 лет 2 месяца 19 дней
Сообщения: 1235
Откуда: здешние мы


Стиль: subsilver2


Репутация: 11


Russia

Тиц и PR

перейти на сайт пользователя
Найти темы пользователя


Выключатель для блока в админке на форуме phpbb3

эта система очень удобна. у себя здесь, на сайте, я её применяю для оформления праздничного украшения (новый год, 8 марта...). один раз оформление сделал - прописал - заключил в условие показа - а в админке есть разрешение показывать/нет. всё оформление постоянно остаётся прописано в шаблоне - надо только включить... :-D

Большое спасибо за разъяснение данной темы DeaDRoMeO (в конце темы есть ссылка на первоисточник - посмотрите, может быть объяснение там вам больше подойдёт).

Итак, поехали:

Во-первых, небольшое отступление. Я решил сделать сразу блок из 5 переключателей (так сказать задел на будущее) чтобы, при необходимости, можно было сразу задействовать, а не приписывать каждый заново. Как я сказал, у меня первый выключатель сделан для оформления нового года - так и покажу.

У меня в админке вкл/выкл блока выглядит так:

моя админка

Создание выключателей:

сначала надо прописать поля для работы выключателей в базе
Провести SQL-запрос:

Код: Выделить всё

INSERT INTO phpbb_config (config_name, config_value) VALUES ('enable_dopp1', '0');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('enable_dopp2', '0');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('enable_dopp3', '0');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('enable_dopp4', '0');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('enable_dopp5', '0');


Если у вас проблемы с проведением запроса - можете скачать скрипт установки

Вложение:
Комментарий к файлу: файл установочный для SQL-запроса
db_update.rar [1.27 КБ]
Скачиваний: 38


распаковать, файл db_update.php, загрузить его в корень сайта (где файл config.php)
и запустить его через браузер по адресу

Код: Выделить всё

http://ваш сайт/db_update.php


после отработки удалить файл с сервера.

// в строке 'enable_dopp1', '0'
0 означает, что по умолчанию модуль выключен, поставите 1 - будет включён.

создание самих выключателей
Открыть includes/functions.php
Найти

Код: Выделить всё

// The following assigns all _common_ variables that may be used at any point in a template.
   $template->assign_vars(array(


Вставить после найденного

Код: Выделить всё

'S_ENABLE_DOPP1'      => ($config['enable_dopp1']) ? true : false ,
'S_ENABLE_DOPP2'      => ($config['enable_dopp2']) ? true : false ,
'S_ENABLE_DOPP3'      => ($config['enable_dopp3']) ? true : false ,
'S_ENABLE_DOPP4'      => ($config['enable_dopp4']) ? true : false ,
'S_ENABLE_DOPP5'      => ($config['enable_dopp5']) ? true : false ,

добавление/вывод выключателей в админке
Открыть includes/acp/acp_board.php
Найти

Код: Выделить всё

          legend2'            => 'WARNINGS',
                  'warnings_expire_days'   => array('lang' => 'WARNINGS_EXPIRE',      'validate' => 'int',   'type' => 'text:3:4', 'explain' => true, 'append' => ' ' . $user->lang['DAYS']),


Вставить после найденного

Код: Выделить всё

'legend4'               => 'ENABLE_ELEMENTS',
                  'enable_dopp1'         => array('lang' => 'ENABLE_DOPP1',         'validate' => 'bool',   'type' => 'radio:yes_no', 'explain' => true),
              'enable_dopp2'         => array('lang' => 'ENABLE_DOPP2',         'validate' => 'bool',   'type' => 'radio:yes_no', 'explain' => true),
              'enable_dopp3'         => array('lang' => 'ENABLE_DOPP3',         'validate' => 'bool',   'type' => 'radio:yes_no', 'explain' => true),
              'enable_dopp4'         => array('lang' => 'ENABLE_DOPP4',         'validate' => 'bool',   'type' => 'radio:yes_no', 'explain' => true),
              'enable_dopp5'         => array('lang' => 'ENABLE_DOPP5',         'validate' => 'bool',   'type' => 'radio:yes_no', 'explain' => true),

создание языковых переменных для информации
Открыть language/ru/acp/board.php
Найти

Код: Выделить всё

'SITE_DESC'


Вставить перед найденным

Код: Выделить всё

'ENABLE_DOPP1'               => 'Включить DOPP1',
'ENABLE_DOPP1_EXPLAIN'               => 'Выберите Да для отображения данного элемента либо Нет для его скрытия',
'ENABLE_DOPP2'               => 'Включить DOPP2',
'ENABLE_DOPP2_EXPLAIN'               => 'Выберите Да для отображения данного элемента либо Нет для его скрытия',
'ENABLE_DOPP3'               => 'Включить DOPP3',
'ENABLE_DOPP3_EXPLAIN'               => 'Выберите Да для отображения данного элемента либо Нет для его скрытия',
'ENABLE_DOPP4'               => 'Включить DOPP4',
'ENABLE_DOPP4_EXPLAIN'               => 'Выберите Да для отображения данного элемента либо Нет для его скрытия',
'ENABLE_DOPP5'               => 'Включить DOPP5',
'ENABLE_DOPP5_EXPLAIN'               => 'Выберите Да для отображения данного элемента либо Нет для его скрытия',


Найти

Код: Выделить всё

'EDIT_TIME'


Вставить перед найденным

Код: Выделить всё

'ENABLE_ELEMENTS'             => 'Включить или выключить элементы',


Завершение установки:
Всё готово. Теперь, используя условие вида

Код: Выделить всё

<!-- IF S_ENABLE_DOPP1 -->здесь ваш код<!-- ENDIF -->


вы можете включать/выключать блоки. то есть в шаблоне ваш код надо "обернуть" в это условие, очистить кэш и включить блок в админке.

Примечание:

Для работы системы используются переменные (часть строки) DOPP1 и dopp1 - можете, если хотите, заменить их на свои. если надо больше переключателей - просто добавьте в список строки с DOPP6 и dopp6.

Система установлена здесь и проверена в работе. Успешной установки.
Надеюсь вам пригодится.



трёхголовый белк семейства рептилоидов:
"три головы - хорошо, на как же трудно придти к согласию..."
выключатель,управление,форум,phpbb3
Показать сообщения за:  Поле сортировки  
Ответить на тему  [ 1 сообщение ] 

Кто сейчас на сайте:

Всего посетителей: 0, из них зарегистрированных: 0, скрытых: 0 и гостей: 0 (основано на активности пользователей за последние 5 минут)
Больше всего посетителей (122) здесь было 19 дек 2023, 12:10

Сейчас этот раздел просматривают: нет зарегистрированных пользователей и гости: 0



Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения
Вы не можете защищать свои темы паролем

Найти:
Перейти:  




cron

Текущее время: 11 дек 2024, 14:23

Создано на основе phpBB® Forum Software © phpBB Group
Яндекс.Метрика

Полная версия Мобильный вид