Сторінки, статті та новини
Інструменти та плагіни
Заготовка заголовок


Опис як приклад заготовки. Приклад текстового контенту для подальшої кастомізації шаблону "Index36".

Редагувати шаблон можна на власний розсуд. Якщо у вас немає часу або знань – завжди можна замовити адаптацію шаблону, написавши мені через GitHub або особисті повідомлення на публічній сторінці маркетплейсу цифрових товарів.

26.02.2024 23:12

«cPanel» - шаблон административной панели управления для CMS Cotonti Siena. Простой скин админки, который не перегружен элементами интерфейса. Шаблон бесплатный, его работоспособность проверена на актуальном релизе движка котонти, версии 0.9.24.2.

  • Автор разработки шаблона: Alex300 (Алексей Кальнов)
  • Обзор установки шаблона и составил инструкцию: webitproff

Ключевые особенности основного шаблона «cPanel» (Си-Панель):

1. Использует Bootstrap v.3.4

Bootstrap - это самый популярный фреймворк HTML, CSS и JS для разработки адаптивных мобильных проектов в Интернете.

2. Использует Font Awesome v5

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

3. Cotonti lib

Библиотека компонентов на php, которая расширяет текущий API CMF Сotonti.
"Cotonti lib" предоставляет дополнительные функции для создания новых модулей и плагинов, а также необходима для совместимости некоторых дополнительных расширений от разработчика Alex300.

4. К шаблону, прилагается одноименный модуль cpanel,

который расшряет возможности стандартной панели администратора Cotonti.

При установке, нужно внимательно отнестить к требованиям и последовательности шагов.

1. Подготовка. Совместимость и требования | Compatibility & Requirements:

  • PHP v.7.4+
  • Cotonti v.0.9.24.2

Собираем в кучу всё необходимое:

1.1 Архив "Cotonti-master.zip",

в котором актуальный код движка Cotonti (если еще не установлен)
https://github.com/Cotonti/Cotonti

1.2 Архив "cotonti-cpanel-master.zip"

из актуального репозитория автора  
https://github.com/Alex300/cotonti-cpanel

1.3 Архив "cotonti-lib-master.zip"

из актуального репозитория автора  
https://github.com/Alex300/cotonti-lib

1.4 Архив "bootstrap-3.4.1-dist.zip",

в котором библиотека "Bootstrap" версии 3.4.1
Скачиваем архив с официального сайта
https://getbootstrap.com/docs/3.4/getting-started/

Там три способа скачать, но качают они разное.

Нам нужна кнопка на скачивание "Download Bootstrap" под текстом:

"Compiled and minified CSS, JavaScript, and fonts. No docs or original source files are included."

1.5 Архив "fontawesome-free-5.15.4-web.zip",

в котором библиотека "FontAwesome" версии 5 https://fontawesome.com/v5/download

В итоге, собирая всё в кучу, у вас должно получится 5-ть новых скачанных архивов.

2. Поэтапная и последовательная загрузка на сайт через FTP-менеджер.

Создаем папку, например с именем "theme-cpanel-install-pack" в которой сделаем "пакет" установки:

2.1. Комбинацией клавишь клавиатуры ("Ctrl" + "A") выделяем все архивы, и правым кликом мышки, вызываем контекстное меню проводника. Жмем "Распаковать каждый архив в отельную папку".

Теперь все архивы удаляем, больше они не понадобятся.
В нашем пакете, у вас должно получится 5 папок, смотрите скриншот и сразу устанавливаем, в каком порядке, мы будем обращаться к папкам. Это важно, соблюсти последовательность при закачивании, потому, что затем вам будет проще, уже устанавливать этот "пакет" в таком же порядке. Запоминаем, что к папке "cotonti-cpanel-master" как и к установке самого шаблона «cPanel» приступаем завершающим шагом, каждого этапа инструкции.

    1. "Cotonti-master"
Рекомендуется использовать актуальный релиз "кота".
Если вы по каким-то причинам не можете или не желаете обновлять движок Cotonti, - значит этот шаг пропускаем.
Если обновляемся, то согласно инструкции "Обновление сайта на Cotonti Siena".

    2. "bootstrap-3.4.1-dist"
2.1. В корне сайта находим каталог "lib" и в нем создаем папку "bootstrap"
2.2. В скачаном архиве вы найдете три папки, - "css", "fonts" и "js" - закачиваем на сайт в "lib/bootstrap".

Обращайте внимание на скриншоты в этой инструкции. Кликая по ним, вы можете их видеть в полном размере, чтобы наглядно увидеть то, что "сходу" новичку сложно понять, или, что не исключенно, может я не правильно подбираю слова, чтоб максимально просто и подробно расписать всё это руководство.

    3. "fontawesome-free-5.15.4-web"
2.1. В этом же каталоге "lib",  создаем папку "font-awesome".
2.2. На компьютере, в папке "fontawesome-free-5.15.4-web" выделяете нам нужные три папки, - "css", "webfonts" и "js" - закачиваем на сайт в "lib/font-awesome".

Смотрите скриншот и обращайте всегда внимание на потери файлов при передаче, если что не закачалось, - докачиваем.


    4. "cotonti-lib-master"

В дереве каталогов, из папки "lib/font-awesome" выходим, поднимаясь в каталог корня сайта.

В левой части окна FTP-менеджера, я использую "FileZilla Client", отрываем папку "cotonti-lib-master". Выделяем папки "lib", "plugins" и файл "cli.php" (см. скриншот) и закачиваем их в корень сайта.


    5. "cotonti-cpanel-master"

Всё также, в левой части окна FTP-менеджера, отрываем папку "cotonti-cpanel-master".

Выделяем папки "modules" и "themes". Их также закачиваем в корень сайта.

Итоги этапа подготовки.

Мы выполнили 5-ть шагов, закачали на сайт необходимые файлы и библиотеки для установки шаблона/темы панели управления.

Установка | Installation:

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

Подчеркну, установка шаблона тестировалась на PHP v.7.4+, а именно на версии PHP 8.2.12, и актуальном релизе Cotonti v.0.9.24.2, на профессиональном виртуальном хостинге от beget.com.

 

В самом конце установки будет ряд мелких ошибок, которые легко устраняются.

Поехали.

1. Плагин "Cotonti Lib"

Находим его в расширениях, путь:

Управление сайтом - Расширения - Cotonti Lib

Устанавливаем плагин и забываем про него.

2. Модуль "cpanel"

Этот модуль вы найдете в самом верху списка расширений под именем "Admin Control Panel"

Управление сайтом - Расширения - Admin Control Panel

Устанавливаем модуль и забываем про него, но совсем не на долго.

3. Файл конфигурации системы "config.php".

В корне сайта есть папка "datas", а в ней файл "config.php", - открываем его для правки.

Здесь, ориентировочно, в строке №53, находим переменную $cfg['admintheme'] = ''; прописываем как это сделано ниже

$cfg['admintheme'] = 'cpanel';

Файл конфигурации сохраняем и закрываем его.

4. Главная страница административной панели управления.

Если у вас установлен плагин для аватарок "userimages", - то увидите примерно такое.

Warning: Undefined variable $L in 
/home/***/public_html/plugins/userimages/inc/userimages.resources.php on line 5

Warning: Trying to access array offset on value of type null in 
/home/***/public_html/plugins/userimages/inc/userimages.resources.php on line 5

Warning: Undefined variable $L in 
/home/***/public_html/plugins/userimages/inc/userimages.resources.php on line 8

Warning: Trying to access array offset on value of type null in 
/home/***/public_html/plugins/userimages/inc/userimages.resources.php on line 8

Warning: Undefined variable $L in 
/home/***/public_html/plugins/userimages/inc/userimages.resources.php on line 11

Warning: Trying to access array offset on value of type null in 
/home/***/public_html/plugins/userimages/inc/userimages.resources.php on line 11

Не робеем! Ща поправим laugh

Открываем для правки наш файл по адресу:

/public_html/plugins/userimages/inc/userimages.resources.php

в двух местах, в 5-ой и 8-й строке находим

'.$L['Delete'].'

меняем его на

'. Cot::$L['Delete'] .'

в 11 строке находим

alt="'.$L['Avatar'].'"

меняем его на

alt="'. Cot::$L['Avatar'] .'"

Сохраняем и закрываем в редакторе наш файл userimages.resources.php.

Перезагружаем главную страницу админки, - наш "уорнинг" пропал.

5. Нет аватара администратора в админке

Теперь, если ваш аватар в правом вверхнем углу, если так и не появился.

Подчеркну, это если вы используете плагин "из коробки", - «User Images», и у вас не установлен модуль "Files", который тоже от разработчика этого шаблона.

Открываем файл cpanel.header.tags.php, он по адресу

public_html/modules/cpanel/cpanel.header.tags.php

находим строку:

require_once cot_incfile('userimages', 'plug');

и сразу за ней добавляем строку:

require_once cot_incfile('userimages', 'plug', 'resources');

Уверен, аватар подключился как следует. Сам проверял.

ну и обращаем внимание, что по пунктам меню, вместо иконок у нас иероглифы.

6. Иконки "fontawesome" не коректно отображаются.

Открываем файл ресурсов темы "cpanel.rc.php", он у нас по адресу:

/public_html/themes/admin/cpanel/cpanel.rc.php

Находим строку №24, которая содержит код:

Resources::setAlias('@fontAwesome.css', 'lib/font-awesome/css/font-awesome.min.css');

и в этой строке меняем название подключаемого файла font-awesome.min.css на all.min.css

Сохраняемся и закрываем файл.

Снова перезагружаем главную, - иконки "Font Awesome v5" заработали как нужно.

7. Не работают должным образом другие страницы админки.

Находясь на главной странице в админке, жмем по ссылкам в меню, например "Конфигурация" и при переходе по ссылке на эту страницу получаем бесконечный "спинер".

можно закомментировать в header.tpl строку:

<div id="page-loader" class="fade in"><span class="spinner"></span></div>

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

Так что же делать?

Жмём комбинацией клавишь клавиатуры ("Ctrl" + "U")* и смотрим исходный код.

* работает для "Mozilla Firefox" и "Google Chrome"

Идем в самый низ страницы, и там примерно такая картина:

Warning: Undefined variable $adminpath in 
/home/***/public_html/modules/cpanel/cpanel.admin.tags.php on line 57

Fatal error: Uncaught TypeError: count(): Argument #1 ($value) must be of type Countable|array, null given in 
/home/***/public_html/system/functions.php:1921
Stack trace:
#0 /home/***/public_html/system/functions.php(1921): count(NULL)
#1 /home/***/public_html/modules/cpanel/cpanel.admin.tags.php(57): cot_breadcrumbs(NULL, false, true)
#2 /home/***/public_html/system/admin/admin.main.php(95): include('/home/***...')
#3 /home/***/public_html/admin.php(24): include('/home/***...')
#4 {main}
thrown in /home/***/public_html/system/functions.php on line 1921

Вообще ничего страшного. И не нужно паники. Сейчас будете смеяться насколько просто решается. devil

Самое время вспомнить про модуль "Admin Control Panel".

Через ФТП-менеджер, отрываем наш cpanel.admin.tags.php

/public_html/modules/cpanel/cpanel.admin.tags.php

находим строку № 57

$crumbs = cot_breadcrumbs($adminpath, false, true);

и меняем перенную массива $adminpath на $adminPath.

По-сути, мы здесь букву "p" из нижнего регистра перевели в верхний.

Кому охота знать об этом больше, - смотрим исходный код тут.

Цитата от раработчика шаблона

Для разработчиков:

Вы можете в полной мере использовать возможности разметки, которые предоставляет Bootstrap.

Контент вашего расширения будет выводиться в панель по-умолчанию. Вы можете отключить такое поведение при необходимости.

Добавление пунктов меню в панели управления:

Модули и плагины могут добавлять свои пункты в меню панели управления.

Для этого необходимо создать файл расшиения с хуком header.tags который внесет нужные изменения в массивы элементов меню:

cpanel::$menu['top'] - Верхнее меню

cpanel::$menu['side'] - Боковое меню

cpanel::$menu['user'] - Меню пользователя

cpanel::$useDefaultPanel = true; - выводить панель-по умолчанию при выводе контента

cpanel::$panelTitle; - свое название для панели по-умолчанию

 

Продолжу от себя.

Как отредактировать ссылки в шаблоне, в меню пользователя, в горизонтальном и левом боковом?

Сначало, лучше, кликнуть по скриншоту ниже и расмотреть его в полном размере

Грубо говоря, у нас три меню, а значит и три масива, открываем cpanel.header.first.php

public_html/modules/cpanel/cpanel.header.first.php

находим, например, масив "меню пользователя", который выглядит вот так:

    CPanel::$menu['user'] = array(
        'my_page' => array(
            'title' => 'My page',
            'url' => cot_url('users', 'm=details'),
            'icon_class' => 'fa fa-user',
        ),
        'profile' => array(
            'title' => Cot::$L['Profile'],
            'url' => cot_url('users', 'm=profile'),
            'icon_class' => 'fa fa-cog',
        ),
    );

где, код:

        'profile' => array(
            'title' => Cot::$L['Profile'],
            'url' => cot_url('users', 'm=profile'),
            'icon_class' => 'fa fa-cog',
        ),

это массив ссылки, которая помещена в массив CPanel::$menu['user'].

Терерь вы можете эту ссылку отредактировать или создать свою новую, добавив код копированием и редактированием под свои нужды.

Всё точно также с массивами верхнего горизонтального меню и бокового, где стрелочками на скриноте я вывел названия массивов.

Відредаговано: webitproff (28.02.2024 14:08, 2 роки тому)
Обліковий запис