как починить сломанный визуальный редактор

11

Наш визуальный редактор отображает сырой HTML: введите описание изображения здесь

Если я нажимаю на Visual или Text, ничего не происходит вообще - щелчок не регистрируется.

В моем профиле не установлен флажок «отключить визуальный редактор».

То же самое происходит в Chrome, Opera и Firefox.

Я отключил все темы и плагины без изменений.

Я загрузил / wp-admin & / wp-includes без изменений.

Какие еще вещи я могу попытаться восстановить визуальным редактором?

Стив
источник
Некоторые люди заметили, что неправильный файл .htaccess может вызвать ту же проблему. Вы редактировали это раньше?
Sudeep K Rana
@SudeepKRana: в .htaccess нет ничего необычного.
Стив
3
Любые ошибки JavaScript?
Birgire
1
Вам нужно будет использовать панель инструментов разработчика вашего браузера, чтобы выяснить причину этой ошибки: 1. Посмотрите в консоли, есть ли какие-либо ошибки javascript 2. Посмотрите на вкладке сети, есть ли какие- либо ошибки (40 *, 50 * ) Запросы.
s1lv3r
1
Я бы проверил ваш functions.phpфайл на наличие упоминаний о tiny_mce- если это старый WordPress сайт, который был обновлен, за прошедшие годы TinyMCE претерпел много изменений, и старая функция МОЖЕТ нарушать его. Вы также можете попробовать установить плагин, такой как AdvancedTinyMCE, чтобы увидеть, решает ли он что-нибудь, но я думаю, что плагин просто расширяет собственный редактор.
Бисандр

Ответы:

6

Это почти наверняка происходит из-за того, что WordPress не может загрузить файлы редактора TinyMCE или не удалось запустить код JavaScript TinyMCE. Попробуйте эти вещи:


1) Убедитесь, что в вашем браузере включена поддержка JavaScript!


2) Откройте этот URL в вашем браузере. http://<yoursite>/wp-includes/js/tinymce/wp-tinymce.php Вы должны увидеть много текста, начиная примерно так:

// 4.0.21.1 (2014-04-09)
!function(e,t){"use strict";function ...

Если вы видите этот текст, перейдите к пункту 3 ниже, в противном случае вы можете увидеть один из этих ответов:

  • Вы получаете ошибку 403: проблема с вашим .htaccess или другой конфигурацией веб-сервера.
  • Вы получаете ошибку 404: проверьте, существует ли файл wp-includes/js/tinymce/wp-tinymce.php; если это так, убедитесь, что права доступа для всех каталогов и самого файла .php установлены на 755 (чтение + выполнение).
  • Вы получаете ошибку 500 или белую страницу: на странице что-то в корне не так. Попробуйте отключить все ваши плагины и переключиться на тему Twentyfourteen. Затем включите каждый плагин один за другим и протестируйте страницу после того, как каждый плагин включен

3) С помощью Firefox или Google Chrome войдите в свой администратор WordPress. Хит, F12если вы используете Windows или Cmd+Alt+Iесли у вас есть Mac -> это вызывает некоторые инструменты для разработчиков. Теперь отредактируйте свое сообщение и проверьте, отображается ли сообщение об ошибке в консоли инструментов разработчика.

Скорее всего, есть ошибка JavaScript. Вам нужно разобраться с этой ошибкой JS, чтобы решить проблему; Я не могу дать общий совет, как это сделать, так как это очень индивидуально. Однако любая ошибка может быть вызвана плагином или темой, которую вы используете. Вы можете попробовать то же самое, что и для ошибки 500 выше.


Если это не решило вашу проблему или вам нужна дополнительная помощь, пожалуйста, опубликуйте дополнительную информацию в качестве комментария здесь, что возвращали оба теста (то есть, какую ошибку JS или какой код ошибки вы получили)

Philipp
источник
Я попытался загрузить /wp-includes/js/tinymce/wp-tinymce.php, и дал 404. Я открыл /wp-includes/в FTP, и обнаружил .htaccess с <Files *.php> deny from all </Files>
Стив
Относительный URL-адрес является одним из плагинов, которые нарушают визуальный редактор.
Хосе Адриан
3

После нескольких дней изучения старых сообщений об ошибках TinyMCE (не найдя URL, который был полностью в порядке), я обнаружил, что Sucuri или Wordfence добавили файл .htaccess в папку wp- include, что вызывало конфликты.

Проверьте wp-include для каких-либо правил, которые не позволяют сайту читать правильные файлы.

Чтобы выполнить быстрый тест, сделайте резервную копию wp-includes/.htaccess, затем очистите файл и перезагрузите страницу, которую вы пытаетесь редактировать.

Дан
источник
В моем случае это был Sucuri, укрепляющий мою папку wp-includes. Я пошел в Настройки Sucuri> Закалка, а затем нажал «Восстановить закалку» для опции wp-includes. Это решило проблему, но, что более важно, я снова смог «применить Hardening», и он все еще работал ... похоже, что Sucuri улучшил свой код.
Дэвид
2

В нашем случае это был хозяин. Помимо уровня разрешений файла wp-tinymce.php, установленного на 644 (мы изменили его на 755), хост блокировал все php-операции в этой папке wp-includes / js. Полезная стратегия, но теперь головная боль.

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

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

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

Фрэнк
источник
1

После миграции на новый хост я обнаружил, что у меня та же проблема. При добавлении базы данных Charset в wp-config.php все решается как обычно.

define('DB_CHARSET', 'utf8')

murrayac
источник
1

У меня была именно эта проблема. Не удалось переключиться между вкладками Visual / Text в редакторе.

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

В журнале ошибок браузера указано, что мне не хватает файла ... / wp-includes / js / tinymce / wp-tinymce.php с сервера. Я проверил сервер, и он определенно был там, проверил права доступа к файлам, и они тоже были в порядке. Это должно означать, что ссылка на файл была причиной проблемы!

Добавил следующий код в раздел rephrite .php файла .htaccess, и это решило мою проблему.

RewriteCond %{REQUEST_URI} !/wp-includes/js/tinymce/wp-tinymce\.php

Надеюсь это поможет.

Райан
источник
1

Ни одно из приведенных выше решений не помогло мне. Затем в 1:55 я нашел помощь в следующем видео на Youtube: https://www.youtube.com/watch?v=tGdj1lKPTs8

Т.е. я вставил следующий код в файл wp-config.php моего сайта чуть ниже части? Php

define('CONCATENATE_SCRIPTS', false);

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

Stp
источник
0

Существует интересный пост здесь . WordPress, неспособный узнать версию браузера, нарушает некоторые его функции, как утверждается в связанном источнике. Некоторые из них смогли исправить проблему неработающего визуального редактора, изменив настройки «анонимности» либо в Антивирусе, либо в Брандмауэре.

Если этот подход работает, то я думаю, что правилом брандмауэра, позволяющим обмениваться информацией браузера для запросов с определенного IP-адреса (где установлен WordPress), будет решение. Я также не вижу в этом решения, если к «Wp Admin» обращаются из-за пределов сети.

шри
источник
0

У меня была аналогичная проблема. Мой текстовый и визуальный редактор были полностью испорчены. Я обнаружил, что это из-за плагина SiteOrigin Page Builder, который я использую для нескольких страниц.

Но после установки пакета виджетов SiteOrigin эти два представления редактора были исправлены. Это может быть исправлением для других людей, не использующих конструктор страниц. Просто установите оба плагина, и у вас есть рабочий текстовый редактор. Это может быть не редактор WP по умолчанию, а редактор SiteOrigin, но это хорошо для моего варианта использования.

Chaoste
источник
0

Я проверил все об этом. Я не мог редактировать или видеть текст в постах или страницах WordPress. Похоже, он сузился до плагина tinymce, где я обнаруживал ошибки через консоль Chrome. Я попробовал несколько вещей без удачи. Так что я отключил tinymce и все работает без сбоев. Как просто решить проблему с таким количеством переменных и вариантов исправления.

Элизабет Абернати
источник