Redux Framework幻灯片字段 - wp_editor而不是textfield

时间:2014-12-29 02:45:13

标签: php jquery wordpress redux-framework

我正在尝试自定义幻灯片默认字段(slides field - Redux framework),以便包含wp编辑器而不是textarea(描述区域)

原始文件位于:https://raw.githubusercontent.com/ReduxFramework/redux-framework/master/ReduxCore/inc/fields/slides/field_slides.php

到目前为止,我已经更改了这部分代码

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,就像在原始代码中一样。

更新

请注意,编辑器不会在页面刷新后保留内容,而是将数据存储在第一次提交中。

1 个答案:

答案 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>';

}