我在这个上花了好几个小时。我想在以下自定义帖子中添加一个富文本编辑器(理想情况下是wp_editor),但我无法使其工作。它似乎,但没有保存信息。
public static function metabox_view($post, $params){
wp_nonce_field(-1, 'slide_options_nonce');
$values_array = get_post_meta($post->ID, 'slide_options', true);if(!is_array($values_array))$values_array=json_decode($values_array,true);
foreach($params['args']['options'] as $option_id => $option){
$option_multiple = isset($option['multiple'])?$option['multiple']:false;
$option_value = is_array($values_array)&&array_key_exists($option_id,$values_array)?$values_array[$option_id]:($option_multiple?array():'');
$option_value_default = isset($option['default'])?$option['default']:'';
switch($option['type']){
case 'line':
echo '<fieldset class="tesla-option">';
echo '<legend>';
echo $option['title'];
echo '</legend>';
echo '<div class="tesla-option-container">';
echo '<input type="text" name="'.$option_id.'" value="'.$option_value.'" placeholder="'.$option['description'].'" />'
;
echo '</fieldset>';
break;
case 'text':
echo '<fieldset class="tesla-option">';
echo '<legend>';
echo $option['title'];
echo '</legend>';
echo '<div class="tesla-option-container">';
echo $args =
'<textarea rows="1" cols="40" name="'.$option_id.'" placeholder="'.$option['description'].'">'.$option_value.'</textarea>';
;
echo '</div>';
echo '</fieldset>'
答案 0 :(得分:1)
您需要使用wp_editor
函数将您的textarea替换为wp wysiwyg编辑器。
<textarea rows="1" cols="40" name="'.$option_id.'" placeholder="'.$option['description'].'">'.$option_value.'</textarea>
会变成类似的东西:
wp_editor( $option_value, $option_id, array('name'=>$option_id,'textarea_rows'=>1) );
有关WP Codex
中wp_editor的更多信息