Intereting Posts
WordPress 4.4 Обновление визуального редактора bullets для не выбранных элементов Когда вы должны использовать wp_reset_postdata vs wp_reset_query? Плагин для био-всплывающего окна автора? Как разрешить ссылку ответа оставаться в форме комментария после того, как я достиг 10 ограничений вложенных комментариев? Двадцать четырнадцать: изменение Читать дальше WordPress Super Cache кэширует неправильный домашний URL-адрес WooCommerce wp_insert_post срабатывает при каждом сохранении Поле CMB2 не отображается на странице категории конечных пользователей Каковы преимущества использования mu-plugin Получить ссылку на страницу paged (<! – nextpage ->)? Vagrant скрипт для настройки всех общих комбинаций версий PHP / WordPress Сиротские термины таксономии удаляются по sql-запросу Пользовательский тип сообщения Post имеет дочернюю страницу «Страница» Post Type Post Фильтр page_template без плагина Является ли серия обновлений update_option безопасными, эффективными?

Что может привести к усечению WP Option?

У меня есть плагин WP, где все значения поля настройки администратора были внезапно изменены на букву «a». Все настройки хранятся в одной «большой» опции в таблице. Казалось, что сериализация пошла не так.

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

Я использую только кнопку «Сохранить изменения» и позволяю API параметров WP писать в эту опцию, получая значения из пользовательских сменных или скрытых полей HTML.

Существуют ли какие-либо специальные символы или аналогичные символы, которые могут препятствовать правильной записи опции, что может привести к усечению сериализованного массива?

Причиной может быть что-то с Instagram или именем пользователя Instagram.

Solutions Collecting From Web of "Что может привести к усечению WP Option?"

Это был персонаж. Убедитесь, что вы дезинфицируете все, что написано в качестве значений полей, даже если это имя пользователя.

 trim(preg_replace("/[^\w\s]+/", "", $user->full_name)) 

Я предположил, что в именах Instagram нет специальных символов. Никогда не предполагайте. Я действительно не использую Instagram, только мой плагин поддерживает его. Кстати, он был усечен при первом появлении специального символа.