我正在尝试自定义幻灯片默认字段(slides field - Redux framework),以便包含wp编辑器而不是textarea(描述区域)
到目前为止,我已经更改了这部分代码
if ( $this->field[ 'show' ][ 'description' ] ) {
$placeholder = ( isset ( $this->field[ 'placeholder' ][ 'description' ] ) ) ? esc_attr ($this->field[ 'placeholder' ][ 'description' ] ) : __ ( 'Description', 'redux-framework' );
echo '<li><textarea name="' . $this->field[ 'name' ] . '[' . $x . '][description]' . $this->field['name_suffix'] . '" id="' . $this->field[ 'id' ] . '-description_' . $x . '" placeholder="' . $placeholder . '" class="large-text" rows="6">' . esc_attr ( $slide[ 'description' ] ) . '</textarea></li>';
}
到此:
if ( $this->field[ 'show' ][ 'description' ] ) {
$placeholder = ( isset ( $this->field[ 'placeholder' ][ 'description' ] ) ) ? esc_attr ( $this->field[ 'placeholder' ][ 'description' ] ) : __ ( 'Description', 'redux-framework' );
$editor_id = $this->field[ 'id' ] . '-description_' . $x;
echo '<li> '.wp_editor( $content, $editor_id ,array("textarea_name" => ''.$this->field[ 'name' ] . '[' . $x . '][description]' . $this->field['name_suffix'].'' ));'</li>';
}
所以,我在幻灯片中获得了wp_editors,但问题是,我无法保存任何内容, BTW每个动态生成的编辑器文本字段都有唯一的名称和id,就像在原始代码中一样。
更新
请注意,编辑器不会在页面刷新后保留内容,而是将数据存储在第一次提交中。
答案 0 :(得分:4)
请参阅:http://codex.wordpress.org/Function_Reference/wp_editor
wp_editor有三个参数。您的代码中有四个显示。我很惊讶这没有发现错误或警告。
所以,改变这个
echo '<li> '.wp_editor( $content, $editor_id, '',array("textarea_name" => ''.$this->field[ 'name' ] . '[' . $x . '][description]' . $this->field['name_suffix'].'' ));'</li>';
}
到这个
echo '<li> '.wp_editor( $content, $editor_id, array("textarea_name" => ''.$this->field[ 'name' ] . '[' . $x . '][description]' . $this->field['name_suffix'].'' ));'</li>';
}