1. Главная
  2. Блог
  3. Wordpress
  4. Не сохраняется настройки темы WordPress в админке

Не сохраняется настройки темы WordPress в админке

27 сентября 2026
29

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

При этом никаких явных PHP-ошибок или сообщений об ошибке сохранения может не быть. В нашем случае проблема оказалась связана с настройкой Redux Framework, встроенного непосредственно в тему Termosolar.

Настройки темы termosolar

Как проявляется проблема

Настройки Termosolar находятся в административной части WordPress на странице:

/wp-admin/themes.php?page=termosolar_settings

После изменения любого параметра Redux корректно определяет наличие изменений и показывает сообщение:

Настройки были изменены

Однако после нажатия кнопки «Сохранить изменения»:

  • новые значения не сохраняются;
  • сообщение об успешном сохранении не появляется;
  • после перезагрузки страницы возвращаются предыдущие значения;
  • явных JavaScript-ошибок в консоли браузера может не быть.

Первоначально проблема может выглядеть как ошибка WordPress, базы данных или даже проверки лицензии темы. Однако это можно достаточно быстро проверить.

Проверяем, где Termosolar хранит настройки

В файле:

/wp-content/themes/termosolar/admin/framework/theme-options/settings.php

можно найти параметр opt_name:

'opt_name' => 'termosolar_settings',

Это означает, что настройки темы обслуживаются Redux Framework и сохраняются в WordPress под именем termosolar_settings.

Проверяем форму Redux

Откроем страницу настроек темы, затем инструменты разработчика браузера и выполним в консоли:

jQuery('#redux-form-wrapper').length

Если получаем:

1

форма Redux присутствует на странице.

Проверим её адрес и метод отправки:

jQuery('#redux-form-wrapper').attr('action')

и:

jQuery('#redux-form-wrapper').attr('method')

В нашем случае результат был следующим:

./options.php
post

То есть сама форма настроена на стандартное сохранение параметров WordPress через options.php.

Проверяем сохранение без JavaScript-обработчика Termosolar

Следующий тест позволяет понять, исправно ли само сохранение настроек на стороне WordPress.

Изменяем какой-либо параметр темы, но кнопку «Сохранить изменения» не нажимаем. Вместо этого выполняем в консоли браузера:

document.getElementById('redux-form-wrapper').submit();

Эта команда отправляет форму непосредственно, минуя JavaScript-обработчик кнопки Redux.

В нашем случае после выполнения команды страница перезагрузилась, появилось сообщение об успешном сохранении, а изменённые параметры действительно сохранились.

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

В подобных случаях важно отделить проблему самой CMS от ошибки конкретной темы или встроенного в неё фреймворка. Если обычная отправка формы через options.php работает, а штатная кнопка темы — нет, это заметно сужает область поиска: проверять нужно JavaScript и конфигурацию Redux, а не базу данных WordPress. Такой подход позволяет при доработке WordPress исправить конкретный механизм сохранения, не затрагивая остальные настройки сайта.

Проверяем AJAX-сохранение Redux

Текущее состояние AJAX-сохранения можно проверить непосредственно в консоли:

redux.optName.args.ajax_save

В проблемной конфигурации команда возвращала:

false

При этом функция AJAX-сохранения Redux присутствовала. Это можно проверить командой:

typeof jQuery.redux.ajax_save

Результат:

"function"

Для дополнительной проверки можно временно включить AJAX-сохранение непосредственно в браузере:

redux.optName.args.ajax_save = true;

После этого изменяем любую настройку и нажимаем обычную кнопку «Сохранить изменения».

Если настройки успешно сохраняются, причина найдена: проблема связана с отключённым режимом AJAX Save в конфигурации Redux, используемой темой Termosolar.

Как исправить сохранение настроек Termosolar

Открываем файл:

/wp-content/themes/termosolar/admin/framework/theme-options/settings.php

Находим параметр:

'ajax_save' => false,

и меняем его на:

'ajax_save' => true,

Сохраняем файл и заново открываем страницу настроек Termosolar.

Для проверки можно снова выполнить:

redux.optName.args.ajax_save

Теперь должно возвращаться:

true

После внесения этой правки стандартная кнопка «Сохранить изменения» начинает работать: Redux отправляет данные через AJAX, настройки сохраняются и появляется соответствующее уведомление.

Почему настройки не сохранялись

Termosolar использует собственную встроенную версию Redux Framework. В рассматриваемой конфигурации параметр ajax_save был установлен в false.

При этом JavaScript-обработчик кнопки сохранения Redux в данном режиме не приводил к нормальной отправке формы. В результате пользователь нажимал кнопку сохранения, но изменённые параметры фактически не записывались.

То, что проблема находится именно в этом механизме, подтверждается двумя тестами:

  • прямая отправка redux-form-wrapper через submit() успешно сохраняет параметры;
  • временное переключение redux.optName.args.ajax_save в true также восстанавливает штатное сохранение через кнопку.

Важно учитывать обновления темы

Изменение выполняется непосредственно в файле родительской темы Termosolar:

admin/framework/theme-options/settings.php

Поэтому после обновления темы эта правка может быть перезаписана. Если Termosolar будет обновляться, стоит проверить значение ajax_save после установки новой версии и убедиться, что настройки темы по-прежнему сохраняются.

Если в Termosolar изменяются параметры Theme Options, появляется сообщение «Настройки были изменены», но кнопка сохранения не записывает новые значения, проблема может быть связана с настройкой AJAX-сохранения встроенного Redux Framework.

Рабочее решение в рассмотренном случае:

'ajax_save' => true,

в файле:

/wp-content/themes/termosolar/admin/framework/theme-options/settings.php

Перед изменением файла рекомендуется сделать его резервную копию. Если прямая отправка формы через document.getElementById('redux-form-wrapper').submit() успешно сохраняет параметры, а включение ajax_save восстанавливает работу штатной кнопки, такая диагностика достаточно точно указывает на проблему в механизме сохранения Redux.

Настройки темы изменяются, но не сохраняются, либо после обновления перестала работать часть административного интерфейса? Причина может находиться в JavaScript темы, Redux Framework или конфликте с текущей версией WordPress. Такие ошибки можно диагностировать и устранить в рамках услуги технической поддержки сайтов.

Понравилась статья?

Поддержать нас рублями:
​

Нужна помощь? Обращайтесь!

Комментарии
Name
Email
Phone
Ваше имя
Ваш email
Оставить комментарий
+7 (499) 341-00-19
Есть вопросы?
Обращайтесь любым удобным способом и мы ответим в ближайшее время!
Max
Телефон
Email
Telegram