Визуальный редактор для админа и пользователя на форуме

Rating based on reviews:
Total stars received: 0
Total reviews: 0
Average rating: 0
Filed under: User Blog
CKEditor - Визуальный (WYSIWYG) редактор HTML-контента. Минимальный, обычный и расширенный визуальный редактор - настроим отдельно для пользователя, в зависимости в какую группу он входит на сайте "кота". Небольшая инструкция как при создании статей и постов вывести разные наборы кнопок визуального редактора контента для администратора и простого пользователя. Причин необходимости минимального визуального редактора для пользователя может быть масса, среди которых, - это низкая комфортность при написании новости или поста на форуме с телефона, - загромождается экран смартфона. Также минимальный набор инструментов может быть связан с размещением нежелательного контента в постах на форумах или в комментариях к статьям. Сразу стоить взять во внимание, что при обновлении модуля или движка, - эту процедуру придется повторить. В качестве примера возьмем модуль форумов и модифицируем его. 1. Открываем файл конфигурации forums.setup.php по адресу
modules/forums/forums.setup.php
примерно в 35-й строке находим "minimaxieditor=33.....ditor:" сразу после неё добавляем строку:
editornoadmin=34:select:minieditor,medieditor,editor:medieditor:
сохраняемся. 2. открываем файл forums.functions.php по адресу
modules/forums/inc/forums.functions.php
топим в самый конец файла, в район 547-й строки и сразу после всего добавляем код
$editornoadmin = null;
if (Cot::$cfg['forums']['markup'] == 1) {
  $editornoadmin = Cot::$cfg['forums']['editornoadmin'];
}
сохраням файл. 3. Открываем сценарии создания новых постов, - файл forums.newtopic.php по адресу
modules/forums/inc/forums.newtopic.php
находим в районе 163-й строки код
$t = new XTemplate($mskin);
и сразу за ним добавляем пару условий выбора визуального редактора в зависимости от того, является пользователь администратором или же таким не является
$kindeditor = null;
if (Cot::$usr['isadmin']) {
  $kindeditor = Cot::$cfg['forums']['minimaxieditor'];
}

if (!Cot::$usr['isadmin']) {
  $kindeditor = Cot::$cfg['forums']['editornoadmin'];
}
Теперь в строке, которая будет ниже
'FORUMS_NEWTOPIC_TEXT' => cot_textarea('rmsgtext', $rmsg['fp_text'], 20, 56, '', 'input_textarea_'.$minimaxieditor),
$minimaxieditor меняем на $kindeditor Это будет нужно сделать везде, где при формировании тега текстового поля задаем редактор в зависимости от того пользователь админ или нет. идем в панель управления сайтом, в разделе расширений находим наш модуль форумов, заходим в него и сразу жмем кнопку "Обновить". Затем, здесь же на этой странице,  жмем кнопку "Конфигурация", скролим настройки модуля до "Выбор конфигурации визуального редактора" и селектом выбираем "расширенный набор кнопок", а сразу строкой ниже будет "editornoadmin:" - напротив неё также селектом выбираем, но на этот раз например "minieditor". Модификация готова. Авторизуемся на сайте с двух разных браузеров, - на одном как админ, а на втором как обычный пользователь, заходим на форум, жмем кнопку "Новая тема" и вот магия, которая иногда просто кусочек кода 😉 Но это не все. Теперь нужно добавить модификацию для редактирования постов. 4. В этой же папке открываем forums.editpost.php находим в районе 168-й строки код
$t = new XTemplate($mskin);
и сразу за ним добавляем
$kindeditor = null;
if (Cot::$usr['isadmin']) {
  $kindeditor = Cot::$cfg['forums']['minimaxieditor'];
}

if (!Cot::$usr['isadmin']) {
  $kindeditor = Cot::$cfg['forums']['editornoadmin'];
}
находим тег текстового поля "FORUMS_EDITPOST_TEXT" и меняем $minimaxieditor меняем на $kindeditor сохраняемся. 5. Отрываем forums.posts.php сразу после строки
require_once cot_incfile('forms');
и сразу за неё добавляем
$kindeditor = null;
if (Cot::$usr['isadmin']) {
  $kindeditor = Cot::$cfg['forums']['minimaxieditor'];
}

if (!Cot::$usr['isadmin']) {
  $kindeditor = Cot::$cfg['forums']['editornoadmin'];
}
находим в пятой сотне строк, тег текстового поля "FORUMS_POSTS_NEWPOST_TEXT" и меняем $minimaxieditor меняем на $kindeditor сохраняемся. всё 😜😜😜. Кстати, отредактировать наборы кнопок, например для админа в расширенном наборе или для пользователя в минимальном можно в файле config.js, который лежит на сайте по адресу
plugins/ckeditor/lib/config.js
Минимальный набор кнопок - это "toolbar_Basic" (начало примерно в 43 строке) Обычным пользователям у меня конфигурация имеет следующий вид
config.toolbar_Basic = [
  ['Bold', 'Smiley',  '-','EmojiPanel', '-', 'Image', 'oembed', '-', 'Link', 'Unlink']
];
Если что нужно пишите в чат 🥱


Reviews

No reviews yet


Comments (0)

No comments yet
Only registered users can post new comments

Similar pages

Разный визуальный редактор для админа и пользователя
1 CKEditor - Визуальный (WYSIWYG) редактор HTML-контента. Минимальный, обычный и расширенный визуальный редактор -
User Blog • 2024-01-05 04:17 webitproff
Модуль «Polls» - Размещение и управление опросами на сайте и форуме
2 Модуль «Polls» - Размещение и управление опросами на сайте и форуме [Документация по модулю «Polls» и расширениям,
User Blog • 2020-07-17 05:15 webitproff
Создать баннер cookies для получения согласия пользователя
3 Как Создать баннер cookies для получения согласия пользователя? Как разместить всплывающее окно согласия на обработку
User Blog • 2020-07-17 05:15 webitproff
Экстраполя для профиля пользователя
4 Очень часто при работе с сайтом на Cotonti возникает задача создания дополнительных полей для заполнения пользователями
User Blog • 2020-07-17 05:15 webitproff
UserWall - Стена записей в профиле пользователя
5 Плагин позволяет пользователям публиковать записи на странице своего профиля, другие пользователи имеют возможность
User Blog • 2020-07-17 05:15 webitproff

Content author

webitproff

Offline

Sodium Carbonate

Last logged: 2026-09-03 18:32

About me briefly
Support and development of web projects on the CMF Cotonti: private messengers via the website, open and closed small social networks, trading platforms and marketplaces, freelance and services exchange portal, catalogs of goods from wholesale suppliers, dropshipping platforms, online stores, and much more.
View developments and download
Public portfolio of my works and developments
Telegram for messages
@webitproff
Telegram channel
@s/aBuyFILE
  • Page published: 2020-07-17 05:15
  • Last update: 2026-02-27 10:11