Приветствую! Давно не возникало вопросов, ответы на которые я не смог бы найти тут или на d.org..
Но видимо сегодня именно тот самый день, когда стОит спросить у знающих людей "WTF?!"
Итак.. Имеется:
- Drupal 7;
- Wysiwyg 2.0;
- CKEditor 3.6;
Друпал на хостинге, только что установленный (чистый). Инсталлирую Wysiwyg, закидываю CKEditor в папку sites/all/libraries/ckeditor. Всё как по инструкции.. только одно НО:
Снова лезу на FTP и проверяю: может быть чего не так..
Странно, всё так! Только всё равно висит: "Невозможно определение версии редактора CKEditor".. WTF?
Ради теста скачиваю FCKEditor 2.6.6 и закидываю туда же в sites/all/libraries/fckeditor:
Ничего не понимаю.. в чём тут дело то?? Попробовал на более ранних версиях CKEditor - такая же петрушка.. Пробовал ставить разные права доступа (777, 755, 644..) на FTP к этим папкам и файлам - результат тот же..
Помогите, пожалуйста..
Комментарии
файл который друпал хочет - существует?
ctools установить не забыл? недавно тестировал редакторы на одном сайте, cke работал нормально. проверь все пути и прочитай справку cke и wysiwyg (может что-то упустил)
Наткнулся на схожую проблему.
Порыл, как оказалось есть изменения в новой версии(3.6) в файле sites/all/libraries/ckeditor/ckeditor.js.
Как оказалось, читалось первых 140 символов в строке, а версия уплыла за этот предел в новой версии редактора.
Патч для решения проблемы: http://drupal.org/files/issues/wysiwyg_ckeditor_version.patch
В dev-версии, говорят уже обновили.
Конечно! Даже скрин сделал специально
Конечно! Как же я тогда Views юзаю?
Во-во.. именно поэтому сижу уже вторую ночь и пытаюсь решить проблему без влезания в core долбаного cke
Тут интересен другой момент: версия 3.1 (и выше) не работает, а вот более ранние версии, из доступных на сайте cke, пашут как проклятые..
UPD: ради теста скачал последние версии всех остальных поддерживаемых редакторов. В результате работают все, кроме CKEditor 3.5+, markitUP 1.1.10. У этой парочки одинаковые ошибки: "Невозможно определение версии редактора".. о_О
UPD: вести с полей: оказывается openWYSIWYG не поддерживает броузеры webkit (google chrome, safari). В остальных броузерах - всё окей..
ну напишите таск на страничке проекта на drupal.org и сообщите. большинство редко апдейтит редакторы. потому могут и не заметить. и так все пашет же
http://drupal.org/node/1158388
согласен сам такой..
Ок. Проблема решена!
Очень помог пост, который мне посоветовали посмотреть на d.org
Но как обычно, я пошёл своим путём. Там предлагают установить патч к Wysiwyg, но как это делается я так и не разобрался (ибо ни разу такого не делал). Поэтому просто открыл файл патча и файл инклудов настроек редакторов (wysiwyg/editors/ckeditor.inc). Смотрю в патч:
index ca293a7..0a56fe0 100644
--- a/editors/ckeditor.inc
+++ b/editors/ckeditor.inc
@@ -64,7 +64,7 @@ function wysiwyg_ckeditor_version($editor) {
}
$library = fopen($library, 'r');
$max_lines = 8;
- while ($max_lines && $line = fgets($library, 140)) {
+ while ($max_lines && $line = fgets($library, 500)) {
// version:'CKEditor 3.0 SVN',revision:'3665'
// version:'3.0 RC',revision:'3753'
// version:'3.0.1',revision:'4391'
посмотрел файл ckeditor.inc:
function wysiwyg_ckeditor_version($editor) {
$library = $editor['library path'] . '/ckeditor.js';
if (!file_exists($library)) {
return;
}
$library = fopen($library, 'r');
$max_lines = 8;
while ($max_lines && $line = fgets($library, 140)) {
// version:'CKEditor 3.0 SVN',revision:'3665'
// version:'3.0 RC',revision:'3753'
// version:'3.0.1',revision:'4391'
...
Быстро прикинул, что меняется только число 140 на 500 в $max_lines
Поменял, сохранил, залил на хост.. Вуаля всё работает!
Большое спасибо, помогло!
+1
+1
Тоже самое и с редектором TinyMCE при ошибке «The version of TinyMCE could not be detected»
стоит исправить в файле (wysiwyg\editors\tinymce.inc)
$script = $editor['library path'] . '/tiny_mce.js';
$script = fopen($script, 'r');
// Version is contained in the first 100 chars.
$line = fgets($script, 100);
// 2.x: this.majorVersion="2";this.minorVersion="1.3"
// 3.x: majorVersion:'3',minorVersion:'2.0.1'
if (preg_match('majorVersion[=:]["\'](\d).+?minorVersion[=:]["\']([\d\.]+)@', $line, $version)) {
fclose($script);
return $version[1] . '.' . $version[2];
}
fclose($script);
}
на
$line = fgets($script, 500);
и все заработает. Спасибо vicshine за отличное решение проблемыСпасибо, решение помогло!
Кстати, начал делать новый проект -> скачал последнюю версию CKEditor v3.6.1 - больше проблемы этой нет значит прислушались..
Хорошо идти по следам.
Вчера поставил без проблем и патчей.
Загрузки файлов только нет, через IMCE решил
Аналогичная проблема но версия cke 4.0.1... может кто подскажет в чем дело? т.к. в вышеописанном файле стоит 500 значение... и все равно глухо.
Была такая же проблема. Почему-то, в списке установленных не было модуля CKEditor 7.x-1.12, а в таблице 'system' был. Снес строку в таблице, поставил модуль с сайта, и все заработало. Архив с сайта CKEditor уже был распакован в библиотеки.
Drupal 7.21
CKEditor 7.x-1.12 (модуль)
CKEditor 4.0.2_full (архив с сайта разработчика)
а еще я заметил вот такое
путь указывается ручками
Один хрен такая же петрушка.
Пишет не установлен хоть тресни....
Удалял всё, и ckeditor, и wysiwyg, и с таблиц бд все удалял, устанавливал по новой бес пользы.
В итоге получаем:
The WYSIWYG module was detected. Using both modules at the same time may cause problems. It is recommended to turn the WYSIWYG module off (click here to disable).
ага, в где-то документации к модулю CKEditor написано, что модуль используется сам по себе, и ему не только не полезен модуль WYSIWYG, но и вредно.
на это намекало "Note: This module is not affiliated with the wysiwyg module. It is a separate project dedicated only to CKEditor.", что в вольном переводе на мой родной язык означает "Это не дочерний модуль модуля WYSIWYG. Это отдельный проект, направленный только на CKEditor"
может у тебя стоит еще этот модуль? у него конкретно написано, что "Because this project claims the "ckeditor.module" namespace, it cannot be installed at the same time as the stand-alone CKEditor module in your modules directory." что означает примерно следующее:
"Т.к. эта разработка использует те же названия модуей, что и CKEditor module, они не должны быть установлены одновременно"
Ладно с этим разобрался, снес полностью ckeditor и удалил в таблице все, что называется ckeditor, в том числе и строку из sistem... то же самое... не видит WYSIWYG ckeditor по прежнему.
Нет, такого модуля не стоит...
снес ckeditor полностью... удалял и WYSIWYG так же и строки все в бд... заливал по новой всё но без ckeditor.module только библиотеки...
неработает что то WYSIWYG, не видит он библиотек в /sites/all/libraries/ckeditor... когда их заливал, Ftp сервер странную ошибку выдал:
Warning: ftp_put() [function.ftp-put]: Could not open data connection to port 59902: Cannot assign requested address in /home/files/public_html/3/includes/filesystem.inc.php on line 1283
Пути то такого нет... может в бд эту проблему как то решить можно?
Для CKEditor не нужен WYSIWYG. У меня вообще не установлен WYSIWYG. Только этот модуль и эти библиотечки. А вот инструкция как это все скрестить.
Попробуй третью версию.
у меня все работает )
я Noovelu
WYSIWYG может понадобиться для модуля http://drupal.org/project/insert
может у него гугл транстейт глючит? так-то он из Японии ))
ок, пробую, только теперь модуль WYSIWYG поставил, а когда включаю его, пишет DatabaseSchemaObjectExistsException: Таблица wysiwyg_user уже существует. в функции DatabaseSchema->createTable() (строка 657 в файле /home/u355987455/public_html/includes/database/schema.inc).
ок, пробую, только теперь модуль WYSIWYG поставил, а когда включаю его, пишет DatabaseSchemaObjectExistsException: Таблица wysiwyg_user уже существует. в функции DatabaseSchema->createTable() (строка 657 в файле /home/u355987455/public_html/includes/database/schema.inc).
после то вклучается но его нет, ни где...
фу мля поставил... хорошо что на друпале журнал есть... удалил те строки что существуют и тормозят установке и включению модулей, вроде встал и включился..... Раньше такие проблемы сносом друпала решал:) гыгы
третья пошла как по маслу, ну всё, теперь на каждый профиль свой редактор можно ставить, по этому модуль ckeditor не вкатывал, так бы пришлось на каждую библиотеку редакторов интегратор ставить...
что бы я без вас делал?! Респект всем!
Хотя рано пить баржоми... кнопок нет на редакторе питерь...
с кнопками оказалось все проще, чем я думал... их просто нужно было вклучить:)
А правда, почему 4 ckeditor не работает c WYSIWYG?
WYSIWYG сырой, или ckeditor?
WYSIWYG походу вообще умерает...
Та ты шо? А Карл Маркс и Фридрих Энгельс не муж и жена??? А четыре разных человека?
может ребята не знают модуль insert и что без WYSIWYG он не работает?
Там какая-то не совместимость, разбираться времени не было просто тройку последнюю поставил. В ишью на орге можешь посмотреть и поразбираться в чем проблема.
WYSIWYG раньше не испльзовал для ckeditor, но ИМХО для вставки картинок INSERT очень интересное решение.
модуль insert работает без модуля wysiwyg!!!
Да, признаю свое заблуждение
После всех движений с модулем wysiwyg решил опять перейти на ckeditor то теперь моячит вот эта ошибка Warning: Invalid argument supplied for foreach() в функции ckeditor_security_filters() (строка 1506 в файле /home/u355987455/public_html/sites/all/modules/ckeditor/includes/ckeditor.lib.inc). Кто нибудь занет что это и как поправить?
Ага, я тоже. В wysiwyg и настроек меньше и режет javascript, я прогуглил, всякие доп. модули ставил, но все равно режет. С ckeditor проблемы javascript никогда не было.
Только вот меня одно не устраивает в модуле ckeditor. Когда обновляешь модуль через админку, то Drupal скачивает новую версию модуля, а сам редактор понятное дело нет. Короче, не удобно обновлять. А с wysiwyg сам редактор ставиться в librries. Интересно, как можно с модулем ckeditor ставить сам редактор в librries? Если ручками в модуле что-то прописать, то это же при обновлении модуля затрется..
помогло это:
Нужно в ./modules/wysiwyg/editors/ckeditor.inc
заменить строчку
if (preg_match('@version:\'(?:CKEditor )?([\d\.]+)(?:.+revision:\'([\d]+))?@', $line, $version)) {
на
if (preg_match('@version:\"(?:CKEditor )?([\d\.]+)(?:.+revision:\"([\d]+))?@', $line, $version)) {
ckeditor 4.2 определился, но есть:
Notice: Undefined offset: 2 в функции wysiwyg_ckeditor_version() (строка 86 в файле /sites/all/modules/wysiwyg/editors/ckeditor.inc)
проблемная строка 86:
return $version[1] . '.' . $version[2];
UPD:
заменил проблемную строку на:
return $version[1];
вроде работает
cvetkoff!!!
Тебе надо памятник ставить!
Хотя я на всякий случай сделал здесь тысячу вместо 500, не считая реально где находится, но это не помогло и никак не повлияло,
но оставлю, пусть будет , 1000 или 500 - разницы нет.
while ($max_lines && $line = fgets($library, 1000)) {
В общем памятник тебе! При жизни. и низкий внеземной поклон.
!
Помогите разобраться. WYSIWYG встал, CKEditor поставил 3.6.6, визуальный редактор есть, когда создаю тип материала. А когда добавляю Содержимое на основе только что созданного Типа материала - визуального редактора нет. Куда смотреть?
Снес WYSIWYG, поставил просто модуль CKEditor - всё работает
cvetkoff, большое спасибо, помогло