Мне показалась интересной задача настройки файлового браузера CKFinder (в связке с текстовым редактором CKEditor). При устновке с первого раза что-то пошло не так
и пришлось немного разобраться. Хотя материала на эту тему достаточно, но русскоязычного топика я не нашел.
Установим модуль
Распаковать все это нужно следующим образом
sites
|-all
| |-modules
| | |-ckeditor <- это папка модуля ckeditor
| | | |-ckeditor <- это папка плагина ckeditor
| | | | |-adapters
| | | | |...
| | | |-ckfinder <- это папка плагина ckfinder
| | | | |-_samples
| | | | |...
| | | |...
P.S.: вообще-то есть и другие способы распаковки, но рассмотрим только этот.
Нюансы
После включения модуля CKEditor у вас появится страница настроек (admin/config/content/ckeditor) модуля CKEditor, но CKFinder не заработает. Потому, что нужно:
в файле sites/all/modules/ckeditor/ckfinder/config.php закомментировать функцию CheckAuthentication(). Вот так:
<?php //function CheckAuthentication() //{ // // WARNING : DO NOT simply return "true". By doing so, you are allowing // // "anyone" to upload and list the files in your server. You must implement // // some kind of session validation here. Even something very simple as... // // // return isset($_SESSION['IsAuthorized']) && $_SESSION['IsAuthorized']; // // // ... where $_SESSION['IsAuthorized'] is set to "true" as soon as the // // user logs in your system. To be able to use session variables don't // // forget to add session_start() at the top of this file. // // return false; //}
там же нужно найти строку
<?php $baseDir = resolveUrl($baseUrl);
и вставить после неё
<?php require_once '../../../../includes/filemanager.config.php';
P.S.: Путь должен быть именно таким хотя, изначально кажется, что он должен быть
../includes/filemanager.config.php
в вашем settings.php прописать переменную
$cookie_domain
(сейчас это строка 340). Например:<?php $cookie_domain = 'http://bithaven.ru';
Еще здесь рекомендуют прописать переменную $base_url
, но у меня и без неё все заработало.
Все готово, остается сделать 2 шага:
- Дать права на использование файлового менеджера CKFinder на странице admin/people/permissions
- Назначить CKFinder файловым менеджером в настройках CKEditor'а