Чтобы правильно сохранять и редактировать значение поля с TinyMCE в WordPress, необходимо выполнить следующие шаги:
1. Добавление поля с TinyMCE в форму:
Вам необходимо добавить поле типа "textarea" в форму, где первым параметром указывается уникальный идентификатор поля, а вторым параметром - сохраненное значение этого поля. Например, если вы используете функцию wp_editor()
, то ваш код может выглядеть следующим образом:
$content = get_post_meta( $post->ID, 'my_textarea_content', true ); wp_editor( $content, 'my_textarea_id' );
В этом примере используется функция get_post_meta()
для получения сохраненного значения поля. Обратите внимание, что значение поля передается как второй параметр в функцию wp_editor()
.
2. Сохранение значения поля при обновлении поста:
Чтобы сохранить значение поля с TinyMCE при обновлении поста, вам необходимо использовать хук save_post
. Ваш код должен проверять, является ли пользователь автором поста и имеет ли доступ для его редактирования. Затем вы должны вызвать функцию update_post_meta()
для сохранения значения поля. Например:
function save_my_textarea_content( $post_id ) { if ( ! isset( $_POST['my_textarea_content'] ) ) { return; } if ( ! current_user_can( 'edit_post', $post_id ) ) { return; } update_post_meta( $post_id, 'my_textarea_content', wp_kses_post( $_POST['my_textarea_content'] ) ); } add_action( 'save_post', 'save_my_textarea_content' );
В этом примере мы используем функцию wp_kses_post()
, чтобы защитить сохраненное значение от потенциально вредоносного кода.
3. Редактирование значения поля:
Для редактирования значения поля с TinyMCE необходимо использовать функцию get_post_meta()
для получения сохраненного значения, а затем передать его в функцию wp_editor()
, как показано в первом шаге. Например:
$content = get_post_meta( $post->ID, 'my_textarea_content', true ); wp_editor( $content, 'my_textarea_id' );
Вы можете вызвать этот код в нужном месте, например, в файле шаблона single.php
, где будет отображаться редактируемый пост.
Это основные шаги для сохранения и редактирования значения поля с TinyMCE в WordPress. Вы можете настроить вывод и сохранение данных в зависимости от своих потребностей.