0

私は、クライアントサイト用の非常に単純なウィジェットであると信じているものをまとめる作業を行っていますが、2番目のウィジェットであるため、まだかなりの学習曲線を克服する必要があります。

物語

この特定のプロジェクトでは、いくつかの単純な段落タグに出力するために、いくつかのテキストエリア入力を作成しようとしました。しかし、私はできる限り論理的にそれに取り組みましたが、私は最もスリムな標準でさえPHPの専門家ではないので、かなり粗雑なコードであると確信しています。

問題

私の問題は、テキストエリアの出力を自動パラグラフ化したいということです。チェックボックスがチェックされているときに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>

たぶんそれらにtinymceを置くことがこれを解決するのに役立つかどうかはわかりません(私はそれを行う方法を知っているわけではありません)が、私は提案を広く受け入れています。

ここで完全なコードを見てください。 ウィジェットのDropboxZip

4

2 に答える 2

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のソースコードが役立ちます。

于 2012-10-19T02:13:57.407 に答える
0

以下のコードを使用してこれを達成することができました。

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

返信ありがとうございます。

于 2012-10-19T13:17:07.900 に答える