我正在使用该*_add_form_fields
操作将字段添加到自定义分类法中。这些字段之一是wp_editor()。
我面临的问题是,当我在页面上输出WordPress编辑器时,如下所示:
wp_editor('test', 'mydescription', array('textarea_name' => 'my_description'));
然后,如果我单击页面上的编辑器,并将默认值从更改为test
,something else
该$_POST['my_description']
变量仍设置为test
我应该在编辑器中添加其他设置吗?我不能更改textarea的值吗?
编辑
下面是一个非常简单的测试用例,显示了这种情况。将其放在您的functions.php文件中,然后创建一个新标签。“ my_description”的发布值不会更改。
class Test{
function __construct() {
add_action('add_tag_form_fields', array($this, 'add_tag_form_fields'));
add_action('created_term', array($this, 'created_term'));
}
function add_tag_form_fields($tag){
if ( current_user_can( 'publish_posts' ) ): ?>
<div class="form-field">
<?php wp_editor('test', 'mydescription', array('textarea_name' => 'my_description')); ?>
</div>
<?php
}
function created_term($tag){
echo '<pre>';
print_r($_POST);
echo '</pre>';
die();
}
}
new Test();
编辑
仅在附加到“ created_term”操作时才会发生。如果您附加到“ edited_terms”,它会按预期工作,我认为这是在创建术语页面上使用ajax的结果...我已经更新了测试代码以显示该结果。
参见第二次编辑。看来这仅在您“添加”术语时发生。
—
Mike
Array ( [action] => add-tag [screen] => edit-post_tag [taxonomy] => post_tag [post_type] => post [_wpnonce_add-tag] => 4f7d3df228 [_wp_http_referer] => /wp-admin/edit-tags.php?taxonomy=post_tag [tag-name] => Test99 [slug] => [description] => [my_description] => something else )
,也许您代码中的其他内容有问题吗?