我爲我的自定義帖子類型創建了一個元框。有多個字段,我想使用wysiwyg編輯器而不是<textarea>
。是可以添加多個編輯器到元框?如何在Wordpress元框中添加wysiwyg編輯器
我真的很感謝你的幫忙!
非常感謝。 大傻
我爲我的自定義帖子類型創建了一個元框。有多個字段,我想使用wysiwyg編輯器而不是<textarea>
。是可以添加多個編輯器到元框?如何在Wordpress元框中添加wysiwyg編輯器
我真的很感謝你的幫忙!
非常感謝。 大傻
首先安裝TinyMCE的高級插件。 第二個add 「theEditor」 類,你的textarea這樣
<textarea class="theEditor" name="custom_meta_box"></textarea>
完蛋了 ;)
納比爾
http://codex.wordpress.org/Function_Reference/wp_editor是迄今爲止我發現最簡單的方法,因爲3.3內置到WordPress的(所以升級;-))
不要忘記將'id'參數設置爲與空字符串不同的東西,否則它將無法工作... – 2012-08-08 14:45:53
但您需要用nl2br()函數替換演示文稿作爲textarea在自定義模板中有toogle JS問題,它將刪除您的所有<P>
a nd <br/>
標籤,因此所有換行符。
可以使用
add_action('edit_page_form', 'my_second_editor');
function my_second_editor() {
// get and set $content somehow...
wp_editor($content, 'mysecondeditor');
}
這爲我做的伎倆用在metabox WordPress的默認文本編輯器:
http://www.farinspace.com/multiple-wordpress-wysiwyg-visual-editors/
它基本上是一個id創建文本區域,然後調用來自js:
tinyMCE.execCommand('mceAddControl', false, 'your_textarea_id');
希望它有幫助!
這裏是全碼例如:
add_action('add_meta_boxes', function() {
add_meta_box('html_myid_61_section', 'TITLEEEEE', 'my_output_function');
});
function my_output_function($post) {
wp_editor(htmlspecialchars_decode(get_post_meta($post, 'SMTH_METANAME' , true)), 'mettaabox_ID', $settings = array('textarea_name'=>'MyInputNAME'));
}
add_action('save_post', function($post_id) {
if (!empty($_POST['MyInputNAME'])) {
$datta=htmlspecialchars($_POST['MyInputNAME']);
update_post_meta($post_id, 'SMTH_METANAME', $datta);
}
});
忘記添加自定義代碼,使用Advanced Custom Fields,這是非常好的,並簡化你的生活。
// for custom post type
function wo_second_editor($post) {
echo "<h3>Write here your text for the blue box on the right:</h3>";
$content = get_post_meta($post->ID, 'wo_blue_box' , true) ;
wp_editor(htmlspecialchars_decode($content), 'wo_blue_box', array("media_buttons" => false));
}
add_action('edit_form_advanced', 'wo_second_editor');
function wo_save_postdata($post_id, $post, $update) {
//...
if (!empty($_POST['wo_blue_box'])) {
$data=htmlspecialchars($_POST['wo_blue_box']);
update_post_meta($post_id, 'wo_blue_box', $data);
}
}
add_action('save_post', 'wo_save_postdata');
// Theme:
<div class="blue">
<?php
$content = get_post_meta(get_the_ID(), 'wo_blue_box' , true);
$content = htmlspecialchars_decode($content);
$content = wpautop($content);
echo $content;
?>
</div>
小心解釋downvote? – blockhead 2014-09-21 11:24:09