嘿,伙计们,有没有可能在自定义字段输入框中用段落自动设置文本格式?
e、 g.就像普通的文本小部件一样,当有换行符时,它可以选择说“自动添加段落”。
我只想让我的博客作者不用在自定义字段的每一行末尾键入内容!
有没有办法做到这一点?
更新时间:
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post();
$sidebar_title = get_post_meta($post->ID, \'sidebar-title\', $single = true);
$sidebar_text = get_post_meta($post->ID, \'sidebar-text\', $single = true); ?>
<?php if ( $sidebar_title !== \'\' && $sidebar_text !== \'\' ) { ?>
<li class="widget-container widget-light-blue custom">
<h3 class="widget-title"><?php echo wpautop($sidebar_title, $br); ?></h3>
<?php echo wpautop($sidebar_text, $br); ?>
</li>
<?php } ?>
<?php endwhile; ?>
<?php endif; ?>
最合适的回答,由SO网友:kovshenin 整理而成
为什么不使用apply_filters( \'the_content\', $var );
输出自定义字段时?你真的不想save 额外的段落,否则您将在编辑自定义字段时看到它们。WordPress的情况并非如此。
如果你对什么不满意the_content
是的(它做了很多事情,包括wpautop
) 然后创建如下自定义筛选器:
// Assuming $var is your custom field value
add_filter( \'my_custom_filter\', \'wpautop\' );
echo apply_filters( \'my_custom_filter\', $var );
干杯!
SO网友:Chip Bennett
您是否可以通过wpautop()
(Codex ref) 当您将这些数据保存到数据库时?
编辑:
您应该执行以下操作来验证/清理用户输入:
/* Function to validate, sanitize, and save post metadata. */
function mytheme_save_custom_metadata(){
global $post;
$valid_custom_field_input = wp_kses( wpautop( $_POST[\'custom_meta_field\'] ) );
update_post_meta($post->ID, \'custom_meta_field\', $valid_custom_field_input );
}
/* Add our function to the save_post hook. */
add_action(\'save_post\', \'mytheme_save_custom_metadata\');
注意,我在
wpautop()
通过前
wp_kses()
.