Saving changes in wp_editor

时间:2017-01-24 作者:Lukas Baranauskas

我已经试了很久了。我的插件中有这个文本区域,我想用wp\\u编辑器替换它。wp\\U编辑器获取数据,但在进行更改时不进行设置。

这是我的文本区(它精确地保存了数据):

        <textarea id="im_description<?php echo $rowimages->id; ?>"                                                                         placeholder="<?php echo __( \'Description\', \'portfolio-gallery\' ); ?>"
              name="im_description<?php echo $rowimages->id; ?>"><?php echo 
esc_html( stripslashes( $rowimages->description ) ); ?></textarea>
这是我的编辑器代码(显示数据,但在编辑器中更改时不会更新):

<?php wp_editor( $rowimages->description, \'mysecondeditor\'); ?>
对于那些想在插件中使用编辑器的人来说,这将是一个很好的教程。

编辑:切换到wp\\U编辑器,因为该编辑器已弃用。

编辑2:完成了此更新功能,但似乎不起作用。我做错了什么?

<?php if( isset( $_POST[$editor_id] ) )
update_post_meta( $content, \'editor_id\', wp_kses( $_POST[\'editor_id\'], $allowed ) );?>
我的文本区域:

<textarea rows="20" autocomplete="off" cols="40" name="im_description10" id="im_description10">text</textarea>


WP\\U编辑文本

<textarea id="im_description10" placeholder="Description" name="im_description10" style="height: 122px;" aria-hidden="false">text</textarea>


WP\\U编辑丰富

<body id="tinymce" class="mce-content-body im_description10 locale-lt-lt mceContentBody webkit wp-editor html4-captions" data-id="im_description10" contenteditable="true"><p>text</p></body>

1 个回复
SO网友:Tunji

首先the_editor() 函数已被弃用,建议使用wp_editor() 相反

为了解释值是如何保存的,您在textarea中的值不是由textarea元素保存的,而是由update_post_meta.

将textarea替换为wp_editor, 您可以定义如下:

$content   = stripslashes( $rowimages->description );
$editor_id = "im_description" . $rowimages->id;

wp_editor( esc_html( $rowimages->description ), $editor_id );

相关推荐

无法在模板函数.php中使用IS_HOME

我试图在标题中加载一个滑块,但只在主页上加载。如果有帮助的话,我正在使用Ultralight模板。我正在尝试(在template functions.php中)执行以下操作:<?php if ( is_page( \'home\' ) ) : ?> dynamic_sidebar( \'Homepage Widget\' ); <?php endif; ?> 但这行不通。现在,通过快速的google,我似乎需要将请