Wordpress Widget Textarea Auto Paragraph

时间:2012-10-18 16:16:22

标签: wordpress plugins widget textarea paragraph

我正在将我认为对于客户端网站来说相当简单的小部件放在一起,但作为我的第二个小部件,我仍然需要克服相当多的学习曲线。

故事

在这个特定项目中,我尝试创建一些textarea输入以输出到一些简单的段落标记中。但我有点逻辑地处理它,但我确信这是非常严格的代码,因为即使是最精简的标准,我也不是PHP专家。

问题

我的问题是我希望我的textarea输出带有自动分段。例如,选中复选框时,默认文本小部件wordpress会提供。也许只是看看我是如何创建textarea的。我确信有更好的做法然后我放在一起。

Textarea样本

<p>
        <label for="<?php echo $this->get_field_id( 'admitted' ); ?>"><?php _e('Admitted to Practice', 'framework') ?></label>
        <textarea class="widefat" id="<?php echo $this->get_field_id( 'admitted' ); ?>" name="<?php echo $this->get_field_name( 'admitted' ); ?>" value="<?php echo $this->get_field_name( 'admitted' ); ?>" /><?php echo $instance['admitted']; ?></textarea>
    </p>

我不知道是否可能对他们施加帮助可以帮助解决这个问题(不是我知道如何做到这一点)但我对建议持开放态度。

在这里查看完整代码。 Dropbox Zip of Widget

2 个答案:

答案 0 :(得分:0)

您知道可以轻松查看默认小部件的构建方式,对吗?只需转到wp-includes / default-widgets.php

如果我正确理解您的问题,那么您正在该文件的WP_Widget_Text类中查找这段代码,

        if ( !empty( $title ) ) { echo $before_title . $title . $after_title; } ?>
                <div class="textwidget"><?php echo !empty( $instance['filter'] ) ? wpautop( $text ) : $text; ?></div>

正如你所看到的,正是wpautop函数可以解决问题。

我认为你创建表单的方式很好。如果您想学习最佳实践,请再次使用Wordpress源代码。

答案 1 :(得分:0)

我可以使用下面的代码完成此操作。

<p><strong>Admitted to Practice:</strong><br/><?php echo wpautop($this->admitted_practice); ?></p>

感谢Calle的回复。