Версия: 1.5 (последнее обновление - 20.01.2020)
Данный модуль предоставляет возможность вывода переменных, массивов, методов и прочего через функции
print_r() и
vd() для просмотра их содержимого при разработке на стороне фронт-энда, правки фронт-энда и внедрения различного рода интеграций, начиная от шаблонов дизайна, заканчивая сторонними модулями.
Помимо данных различных шаблонов можно выводить и другие запросы, например:
$this->diafan->_route или
$this->diafan->_site, позволяя иметь под рукой помимо данных модулей, используемых при разработке, очень удобный справочник.
Этими функциями можно пользоваться и просто размещая их в коде, однако, выводиться информация будет в том блоке (шаблоне модуля), где она вызывается и доступна. А это зачастую неудобно. Вывести и посмотреть объёмный список данных в том же блоке товара, имеющем габариты 400x200px не очень-то и удобно:
CSS-оформление сайта может сделать просмотр ещё менее удобным:
Блок, реализуемый моим дополнением выглядит вот так:
ИСПОЛЬЗОВАНИЕ ДОПОЛНЕНИЯ
Вызов дополнения осуществляется из любого шаблона любого модуля, используемого на странице:
if( method_exists($this->diafan, 'pre_mod') ){
$this->diafan->pre_mod($result, __FILE__, 1, 250, 37.4, 15);
}
Если на странице не используется шаблон модуля, то и дополнение вызвано не будет. Таким образом, можно определять какие данные где на сайте выводить. Если шаблон на странице вызывается несколько раз разными шаблонными тегами, то и
блоков с информацией будет несколько, но каждый будет содержать индивидуальный набор данных.
Дополнение при вызове принимает следующие параметры:
- Вывод листинга содержимого шаблонов для удобного просмотра
- Пример вывода if( method_exists($this->diafan, 'pre_mod') ){ $this->diafan->pre_mod($result, __FILE__, 1, 250, 37.4, 15); }
- Расшифровка $this->diafan->pre_mod($var_show, $path, $print_var, $height, $setka, $listen);
- $var_show данные для вывода
- $path адрес файла в котором осуществляется вызов функции
- $print_var способ вывода vd() или print_r(). Значение 0 или 1 соответственно
- $height высота блока вывода
- $setka расстояние между вертикальными линиями фона (помогает отслеживать вложенность при прокрутке)
- $listen - опрос блоков с отложенной загрузкой в секундах
Можно осуществлять групповой вызов с различными данными и параметрами:
Вызов нужно
обязательно обернуть в
method_exists(), как показано выше, чтобы при отключении темы оставшиеся на сайте вызовы не приводили к ошибкам.
if( method_exists($this->diafan, 'pre_mod') ){
$this->diafan->pre_mod($result, __FILE__, 1, 250, 37.4, 10);
}
Если этого не сделать и отключить дополнение, будет вот такая ошибка:
При включённой теме дополнение выводится только для администраторов, но не показывается обычным пользователям. А при отключении темы с дополнением она не показывается вообще. Таким образом, можно оставлять вызовы дополнения в коде на сайте, если Вы планируете после разработки и интеграции его дальше поддерживать и развивать. И пользоваться дополнением по мере необходимости, повышая комфорт и экономя время.
ОБНОВЛЕНИЯ
ДОПОЛНЕНО (20.01.2020):
- Проверка на администратора выполнена через role_id. Блок выводится для всей группы администраторов, а не только для администратора, устанавливающего систему.
- Дополнено оформление (кнопка сворачивания окна могла уходить за границу экрана)
ДОПОЛНЕНО (12.01.2020):
- Сокращён код. Формирование и вывод CSS-стилей и JS-кода теперь происходит однократно при генерации первого блока.
- Вызов функции из шаблонов с отложенной загрузкой раньше происходил после отработки скриптов, что приводило к ошибкам. Теперь функция мониторит страницу на предмет появления блоков с отложенной загрузкой каждые 2 секунды. По-умолчанию этот опрос длится 10 секунд, но это время также настривается параметром функции.
- Кнопка переключения окон с кодом в левом верхнем углу подсвечивается красным цветом до окончания процесса опроса.
ДОПОЛНЕНО (17.07.2019):
- Полностью переписан скрипт обработки действий с блоками.
- Добавлены параметры по-умолчанию и изолированы друг от друга. Теперь у блоков может быть разная высота.
- Добавлена проверка на наличие метода в системе. Теперь можно не опасаться, что при отключении дополнения оставленный в шаблонах вызов приведёт к ошибке.
ДОПОЛНЕНО (16.01.2018):
- Изменено оформление с учётом того, что блоки выводятся в любой части страницы и ранее могли наследовать стили сайта из-за чего оформление блока могло меняться.
- Доработан внешний вид счётчика выводимых блоков и исправлена ошибка из-за которой при количестве блоков более двух они не переключались далее второго.
- Скорректировано положение и оформление панели редактирования CMS в нижнем положении с учётом вывода блоков с кодом.
- Сокращён путь к файлу. Теперь выводится от корня сайта, а не абсолютный путь.
- Изменено название функции с pre() на pre_mod(), чтобы избежать возможных проблем (слишком простое название может прийти в голову не только мне). Также изменены css-классы блоков по этой же причине.
ДОПОЛНЕНО (17.01.2017):
- Добавлена возможность переключать вывод шаблонов, если функция на странице вызвана более одного раза (из нескольких шаблонов).
- Добавлена возможность сворачивать/разворачивать блок.
- Скорректировано положение панели редактирования CMS в нижнем положении с учётом вывода блоков с кодом.
- Добавлено условие для вывода блоков только администраторам.
Дополнение совместимо с версиями 6.0.8.7 и выше.
До версии 6.0.8.7 в CMS присутствовала ошибка функционирования частичной кастомизации и активация дополнения вызывало ошибку. Ошибка эта появилась некоторое количество релизов назад и по этой причине дополнение было исключено из каталога. В какой точно версии ошибка появилась сказать не могу, поэтому теоретически дополнение работает и на ряде более ранних версий линейки 6.0.X.X. Но тут без гарантий. В случае возникновения ошибки нужно переименовать/удалить файл в папке с темой (он там один).
Дополнение устанавливается стандартным способом в разделе админ-панели "Темы и дизайн" путём создания отдельной темы вручную. Дополнение не затрагивает абсолютно никакие файлы системы, поэтому конфликты исключены.