Intereting Posts
Предотвращение сохранения недопустимых или пустых значений в базе данных и сохранение значений полей формы при ошибке Использовать новое доменное имя для ранее установленных файлов wordpress Добавление бутстрапа в WordPress TwentySixteen Theme Вызов PHP внутри разметки javascript Как вставить в очередь скрипт без жесткого кодирования в файлах тем? Установите флажок, установленный по умолчанию Многоуровневое разъяснение Я не могу правильно отобразить меню Перемещение каталога WordPress (тот же домен) – проблема с GUID? current_menu_parent для пользовательского типа сообщения и настраиваемого URL-адреса Невозможно поместить гиперссылку на изображение Featured Post Обновлено с 3.8 до 4.2, и все типы сообщений были изменены на "post" Боковая панель Woocommerce не загружается в тему Если инструкция else, основанная на реферальном URL-адресе Bootstrap с проблемой jQuery Flexslider

WP frontend выходных полей пользовательских текстовых полей, не соблюдающих разрывы строк. В admin это нормально

WP frontend выходных полей пользовательских текстовых полей, не соблюдающих линейные ошибки. В администрации все нормально.

Сейчас я использую это:

<?php $options = get_option('my_custom_plugin_options'); ?> <?php echo $options['my_custom_plugin_options_textarea']; ?> 

Результатом вывода является:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris aliquet elementum mi, ac adipiscing metus suscitit in. Quisque venenatis ante non nulla faucibus viverra. В ультрафиолетовых ситах amet quam como ut feugiat magna aliquet. Aenean сидит amet odio magna. Maecenas pretium ante a urna dictum vel dignissim erat porta. Aenean rhoncus elementum nisi, nec euismod est tempus commodo.

Вместо сохранения:

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Mauris aliquet elementum mi, ac adipiscing metus suscipit in.

Quisque venenatis ante non nulla faucibus viverra.

В ультрафиолетовых ситах amet quam como ut feugiat magna aliquet. Aenean сидит amet odio magna.

Maecenas pretium ante a urna dictum vel dignissim erat porta. Aenean rhoncus elementum nisi, nec euismod est tempus commodo.

В admin он сохраняется с таким количеством разрывов строк, и все в порядке. Как это сделать и в моем интерфейсе?

Разверните значение $ options на «/ n» (новая строка), затем выполните эхо в foreach:

 $options = get_option('my_custom_plugin_options'); $textarea = $options['my_custom_plugin_options_textarea']; $lines = explode("\n", $textarea); foreach( $lines as $line ){ echo $line; } 

ОБНОВЛЕНИЕ # 1

Для справки можно сохранить эту функцию в functions.php, чтобы использовать ее позже в файлах шаблонов.

 function the_textarea_value( $textarea ){ $lines = explode("\n", $textarea); foreach( $lines as $line ){ echo $line; } } 

Надеюсь, поможет!

Я сделал еще одну функцию, и это работает в моем случае:

 function the_textarea_value( $textarea ){ return str_replace("\r\n", '<br>', $textarea); } 

Вы можете просто использовать функцию nl2br из PHP

Разрабатывая ответ Питера Гувена выше, использование функции nl2br в PHP приведет к желаемому результату.

 // Load a customizer setting into a variable $textarea = get_theme_mod('your_customizer_setting'); // Is there any text in our textarea? if( !empty($textarea) ) { // Once we verify the variable isn't empty, run nl2br $textarea = nl2br($textarea); // This echos the altered text to the page echo $textarea; } 

Пример ввода:

Это текст, который я ввел
и это строка под ней

(Разрыв строки выше был бы создан нажатием enter )

Пример вывода:

 This is a line of text that I've entered<br> and this is the line below it