Наши заметки о MODx
В этом разделе мы будем собирать небольшую копилку секретов по работе с системой управления контентом сайта (CMS) MODx. Эти заметки ни в коем случае не претендуют на лавры документации. На нашем сайте тема MODx вообще занимает небольшой уголок, и эти материалы мы размещаем только потому, что по роду основной работы нам приходится оказывать техническую поддержку нескольким десяткам организаций, использующих наши прототипы сайтов. В то же время кое-что может пригодиться и другим людям.
Мы не претендуем на изложение "истины в последней инстанции". Наверняка в этих заметках гуру MODx найдут неточности и ошибки. Мы будем очень благодарны, если на это нам укажут в комментариях.
В заметках мы стараемся не просто сразу приводить готовое правильное решение, но и показываем, как мы набивали шишки в процессе поиска.

Как использовать AjaxFileManager в редакторе TinyMCE


Мы уже делали обзор визуальных редакторов для MODx и описывали не очень удачную попытку прикрутить AFM к TinyMCE . Тогда всё закончилось тем, что мы стали использовать старую сборку редактора версии 2.1.3 (заменив на скрипты TinyMCE версии 3.2.1.1). Однако хотелось «добить» вопрос до конца — как с редактором, так и с файловым менеджером.

Ещё раз о редакторах

Основной редактор в штатной сборке MODx Evolution 1.0.2TinyMCE 3.4.4.1. В «Extras» MODx есть сборка редактора FCKEditor 2.6.4 — для любителей. В обеих сборках подключается файловый менеджер Mcpuk, встроенный в ядро MODx. Этот Resources Browser был когда-то разработан Frederico Caldeira Knabben для его редактора FCKeditor.

Замечание
Для TinyMCE разработаны собственные MCFileManager и MCImageManager, но это платные продукты, поэтому они и не используются в сборке MODx.

 FCKeditor, начиная с версии 3.ХХ занчительно изменился в лучшую сторону и стал называться Ckeditor. Resources Browser также появился новый, в виде отдельного продукта Ckfinder .

Замечание. Это замечательные продукты, но есть нюанс — Ckfinder стал платным, на него надо приобретать лицензию. Конечно, при некоторой «ловкости рук» его можно и «сломать», но это нам не подходит принципиально.

Ознакомиться с работой и Ckeditor и Ckfinder можно прямо в Интернет.

Мы упорно упоминаем FCkeditor (CKeditor) только потому, что в них есть несколько очень важных для нас «фишек».

Во-первых, в списке Стиль стили отображаются в том виде, как они заданы в CSS:

Список стилей в CKEditor

Такого отображения в TinyMCE нет, но этого можно добиться (об этом будет специальная заметка).

Во-вторых, так же отображаются списки форматирования:

Список форматирования в CKEditor

Список форматирования в CKEditor

Такого отображения в TinyMCE нам также удалось добиться.

В третьих, в Ckeditor имеется удобный диалог Вставить из Word:

Диалог Вставить из Word

Диалог Вставить из Word

Этот диалог важен опциями, позволяющими убрать ненужный мусор. Мы это подробно разбирали в руководстве редактора сайта. Заметим, что в TinyMCE убрать форматирование и мусорные стили при вставке из Word также можно, но в разных версиях такой плагин paste срабатывает по-разному, но мы добились его правильной работы за счёт настройки. Этот вопрос можно снимать.

В-четвёртых, в Ckeditor есть возможность вставлять в редактируемый текст заготовленные фрагменты HTML-кода — шаблоны содержимого:

Шаблон содержимого

Шаблон содержимого

Такая возможность есть и в TinyMCE (плагин template) и нам удалось его настроить (с небольшой корректировкой кода) на вставку шаблонов в с русским текстом.

Таким образом у нас нет более причин отказываться от TinyMCE в пользу других редакторов.

Единственное желание, которое нам не удалось реализовать раньше - встроить в самую последнюю версию редактора TinyMCE самую последнюю версию файлового менеджера AjaxFileManager (далее - AFM).

Почему не MCPUK?

В штатную сборку MODx входит менеджер файлов MCPUK. Чем же он нас не устраивает? Вообще-то у нас составлена  сравнительная таблица MCPUK и AFM.

MCPUK AFM
 Файлы показаны маленькими миниатюрами с подписью. Размер файла показывается в виде хинта. Даты файлов и атрибуты недоступны. Под каждым файлом или папкой набор кнопок, отвлекающих внимание  По каждому файлу показаны подробные характеристики, включая атрибуты доступа. Возможны два режима просмотра — миниатюры и детали. Можно просматривать увеличенное изображение. Действия с файлами соредоточены в панели инструментов
 Выбор файла делается щелчком по миниатюре, и это с непривычки слишком просто — чрезмерно быстрая реакция  Для выбора файла имеется специальная кнопка Выбор, которая доступна только если файл отмечен. В результате делается более осознанный выбор
 Кнопки Отмена нет, и надо догадаться, что для выхода без выбора надо щелкнуть по закрывающему крестику окна  Есть специальная кнопка Закрыть для явного указания на выход из диалога без выбора
 Миниатюры для всех изображений генерируются автоматически при входе в любую папку. Миниатюры сохраняются прямо в этой папке в виде файлов с именем по схеме .thumb_имя_файла. При первом заходе в папку это значительно замедляет работу, а при последующих — ускоряет. Однако, если основной файл удалён, удаляются и миниатюры. Недостаток — большое количество файлов-миниатюр  Миниатюры генерируются и показываются только для одного файла и только при его явном указании. Миниатюры не сохраняются в папке с файлами.
 Имеется возможность редактировать графические файлы прямо на сервере. Иногда это может быть необходимым  Имеется возможность редактирования графических и текстовых файлов на сервере.
 Можно удалить и переименовать файл или папку  Можно удалить, переименовать, перенести или скопировать в другое место файл или папку
 Можно загрузить файл с компьютера на сервер  Можно загрузить файл с компьютера на сервер
 Русификации практически не поддаётся (проблемы с кодировками)  Русифицирован
 Поиска файлов нет  Поиск файлов есть, но практически не работает
 Высокая скорость работы  Медленная первоначальная загрузка, но высокая скорость работы
 Проект не развивается и не поддерживается автором  Проект развивается и обновляется

 

Анализируя таблицу мы склоняемся в пользу AjaxFileManager.  У него также есть недостатки, но мы их попытаемся преодолеть в процессе установки и настройки.

10-03-2010 15:38:49



    Содержание раздела «TinyMCE и AjaxFileManager»:
Комментарии любых посетителей

Написать комментарий