2012-02-15 32 views
2

我有一个产品的自定义帖子类型。我有两个TinyMCE编辑器(标准和一个摘要字段)在仪表板中正确加载。从事物的仪表板一侧,一切工作正常。添加,更新。 etc ...自定义帖子类型中的多个编辑器(TinyMCE)

虽然在网站上,输出失去了换行符(段落标签)。这里有一个例子:

http://keg.brettatkin.com/products/complete-consulting-skills-learning-system/

我使用wp_editor功能这一点。 (http://codex.wordpress.org/Function_Reference/wp_editor)

这里是我的代码:

<?php 
function keg_product_fields(){ 
global $post; 
$custom = get_post_custom($post->ID); 
$keg_product_price = $custom["keg_product_price"][0]; 
$keg_product_link = $custom["keg_product_link"][0]; 
$keg_product_type = $custom["keg_product_type"][0]; 
$keg_product_featured = $custom["keg_product_featured"][0]; 
$keg_product_summary = $custom["keg_product_summary"][0]; 
$editor_id = "kegprodsummary" 
?> 
<p> 
<label>Summary:</label><br /> 
<?php wp_editor($keg_product_summary, $editor_id, $settings = array('textarea_name' => 'keg_product_summary')); ?> 
</p> 
<p> 
<label>Price:</label><br /> 
<input size="10" name="keg_product_price" value="<?php echo $keg_product_price; ?>" /> 
</p> 
<p> 
<label>Type:</label><br /> 
<select name="keg_product_type"> 
<option value="<?php echo $keg_product_type; ?>" selected="selected"><?php echo $keg_product_type; ?></option> 
<option value="Book">Book</option> 
<option value="CD">CD</option> 
<option value="Downloadable">Downloadable</option> 
<option value="Multimedia">Multimedia</option> 
<option value="Virtual">Virtual</option> 
</select> 
</p> 
<p> 
<label>Link:</label><br /> 
<input size="65" maxlength="200" name="keg_product_link" value="<?php echo $keg_product_link; ?>" /> 
</p> 
<p> 
<input type="checkbox" name="keg_product_featured" value="Yes" <?php if (!(strcmp("$keg_product_featured","Yes"))) {echo "checked=\"checked\"";} ?>/> 
<label>Featured Product</label> 
</p> 

<?php 
} 

function add_keg_product_box(){ 
add_meta_box(
"keg_product_info", 
"Product Details", 
"keg_product_fields", 
"keg_products" 
); 
} 


function save_keg_product_attributes ($post_id) 
{ 
if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) { 
return $post_id; 
} 

global $post; 
update_post_meta($post->ID, "keg_product_price", $_POST["keg_product_price"]); 
update_post_meta($post->ID, "keg_product_link", $_POST["keg_product_link"]); 
update_post_meta($post->ID, "keg_product_type", $_POST["keg_product_type"]); 
update_post_meta($post->ID, "keg_product_featured", $_POST["keg_product_featured"]); 
update_post_meta($post->ID, "keg_product_summary", $_POST["keg_product_summary"]); 

} 

add_action ('admin_init', 'add_keg_product_box'); 
add_action ('save_post', 'save_keg_product_attributes'); 
add_action ('publish_post', 'save_keg_product_attributes'); 
?> 

任何想法吗?

谢谢!

布雷特

+0

我看不到任何TinyMCE的编辑器,在该页面 – Thariama 2012-02-16 08:45:39

+0

对不起,该网页是越来越剥去段落标记的一个例子。这是节省大胆等等。 – Brett 2012-02-16 14:51:50

+0

如果标签被剥离,你可能不需要调整valid_elements和valid_children的默认设置:http://www.tinymce.com/wiki.php/Configuration:valid_children – Thariama 2012-02-17 08:12:36

回答

0

保存内容或显示出它时,在使用wpautop()尝试(我建议你保存的时候使用它,性能)。
此功能根据换行符在整个文本中添加段落。

1

您必须在要显示摘要的页面中应用带有apply_filters功能的输出过滤器。

例子:

<?php 
$summary = get_post_meta(...); 
echo apply_filters('the_content', $summary); 
?> 
相关问题