0

У меня есть 3 среды разработки для моего проекта WordPress:WordPress размещения админ бросает строгую ошибку режима на одном сервере

  • Локальная среда
  • Балетмейстер сервера
  • сервер производства

Я только получение ошибки на производственном сервере, что, к сожалению, является самым важным местом для его работы.

enter image description here enter image description here

Что может быть причиной этой ошибки? Он генерируется загрузчиком сценария в /wp-admin/load-scripts.php, и он вызывает только ошибку при использовании страниц редактора проводки в администраторе WP.

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

Любая помощь или понимание были бы оценены.


EDIT

Hrmm .. после того, как делают некоторые рытье я интересно, если это возможно, придется делать с некоторыми ини настройками PHP, которые используются для конкатенации и Минимизация файлов JS. Отключение моих плагинов ничего не делало.

Я смотрю на эту часть загрузчика ядра WP сценария (/wp-includes/script-loader.php):

/** 
* Determine the concatenation and compression settings for scripts and styles. 
* 
* @since 2.8.0 
* 
* @global bool $concatenate_scripts 
* @global bool $compress_scripts 
* @global bool $compress_css 
*/ 
function script_concat_settings() { 
    global $concatenate_scripts, $compress_scripts, $compress_css; 

    $compressed_output = (ini_get('zlib.output_compression') || 'ob_gzhandler' == ini_get('output_handler')); 

    if (! isset($concatenate_scripts)) { 
     $concatenate_scripts = defined('CONCATENATE_SCRIPTS') ? CONCATENATE_SCRIPTS : true; 
     if ((! is_admin() && ! did_action('login_init')) || (defined('SCRIPT_DEBUG') && SCRIPT_DEBUG)) 
      $concatenate_scripts = false; 
    } 

    if (! isset($compress_scripts)) { 
     $compress_scripts = defined('COMPRESS_SCRIPTS') ? COMPRESS_SCRIPTS : true; 
     if ($compress_scripts && (! get_site_option('can_compress_scripts') || $compressed_output)) 
      $compress_scripts = false; 
    } 

    if (! isset($compress_css)) { 
     $compress_css = defined('COMPRESS_CSS') ? COMPRESS_CSS : true; 
     if ($compress_css && (! get_site_option('can_compress_scripts') || $compressed_output)) 
      $compress_css = false; 
    } 
} 
+0

Моих редактировать, кажется, привел меня в правильном направлении. После отключения конкатенации я могу правильно использовать редактор сообщений, но теперь получаю другую ошибку «неожиданный конец вывода». Необходимо взглянуть на «php.ini» для настроек сжатия zlib. – DrewT

ответ

0

Я довольно уверен, что ошибка исходит из яваскрипта строгого режима который включен, вероятно, в вашей рабочей среде. Если на втором скриншоте «g» - это объект, вы должны знать, что не можете использовать delete g. В строгом режиме вы можете удалять только редактируемые свойства объекта.

Для справки см этой страницы (поиска удалить на странице) https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode

+0

. Явный строгий режим также включен в моих локальных и промежуточных средах. – DrewT

+0

'' Использовать строгие ''утверждения поступают из файлов, которые он загружает, поэтому нет различий ; при этом на производственном сервере для captchas есть дополнительные конфигурации плагинов, и, возможно, это происходит оттуда. Например, если эти файлы не загружаются при постановке. – DrewT

+0

Возможно, вы захотите проверить, являются ли эти дополнительные плагины/конфигурации виновниками. Кроме того, вы можете проверить, обновлен ли сценарий, который вы загружаете для этой функции, или если конфигурации не предназначены специально для использования «строгого» при разработке. Удаление «use strict» может, вероятно, решить вашу проблему, однако это слой ограничений, который предназначен для защиты кода. –