Я создаю несколько пользовательских динамических блоков для редактора WordPress Gutenberg (по этой ссылке ).
Я использую рендеринг PHP для этих блоков, что означает, что у меня есть этот код при сохранении:
save: function( props ) {
// Rendering in PHP
return;
},
Функция рендеринга вызывается с помощью этого обратного вызова:
register_block_type( 'my-plugin/latest-post', array(
'render_callback' => 'my_plugin_render_block_latest_post',
) );
Я не собираюсь публиковать код функции, так как в данном случае это не имеет значения.(Я делаю WP_Query, отображаю некоторые пользовательские данные и возвращаю HTML-код), * 1011 *
Моя проблема в том, что WP Gutenberg берет вывод из функции и добавляет <p> and <br>
теги (классическое поведение wpautop).
Мой вопрос: как я могу отключить это только для пользовательских блоков?Я мог бы использовать это:
remove_filter( 'the_content', 'wpautop' );
, но я не хочу изменять поведение по умолчанию.
Некоторые дополнительные выводы.Функция php для рендеринга блоков использует get_the_excerpt ().Как только эта функция используется (и я предполагаю, что это происходит для get_the_content ()), применяется фильтр wpautop и html-разметка блока портится.
Я не знаю, является ли это ошибкой илиожидаемое поведение, но есть ли простое решение для этого, которое не включает в себя удаление фильтра?(Например, удалить этот фильтр не разрешено.)