web-dev-qa-db-ja.com

メインの投稿入力エリアにプレースホルダのテキストを配置する方法

私はイギリスの大学のためのコースプラグインを作っています。デフォルトのプレースホルダテキストをメインの投稿コンテンツ領域の管理者側に配置します。そのリッチテキストエディタは私がそれを後回しにして欲しいです。間違った言葉をタイプしているだけかもしれませんが、ここでそれを見つけることができません。

基本的に「コースの紹介文を書くためにこの領域を使う...」のようなものです。

ありがとう

2
danbrown

デフォルトのコンテンツを適用する投稿タイプを 'post'に変更できます。

add_filter( 'default_content', 'wpse57907_default_content', 10, 2 );
function wpse57907_default_content( $content, $post ) {
    if ( 'post' == $post->post_type )
        $content = 'Use this area to write an introduction to the course...';

    return $content;
}

編集する

私はあなたが することができるかどうかわかりません プレインホルダのテキストを最少の編集者に追加することができます。 followngメソッドは、基礎となるテキストエリアにプレースホルダを追加します( 'html'で見ることができます。間もなく 'text'タブになります)。

add_filter('the_editor','wpse57907_add_placeholder');
function wpse57907_add_placeholder( $html ){
    $html = preg_replace('/<textarea/', '<textarea placeholder="my place holder text" ', $html);
    return $html;
}

しかし、これはビジュアルエディタには表示されません(私が言っているように、プレースホルダーがTinyMCEで動作するかどうかはわかりません - 誰かが方法を知っている場合、コメントしてください)。

4
Stephen Harris

私がTinyMCE用に見つけたプレースホルダープラグインを基にして、私はそれをWordPressのために働くように適合させて、そしてそれのために特にレポを作成しました。私にとっては完璧に動作します。

https://github.com/tripflex/wp-tinymce-placeholder

1
sMyles

これが答えかもしれません: http://codepen.io/flesler/pen/AEIFc

次のCSSを追加するだけで、プレースホルダーのように機能します。

[contenteditable=true]:empty:before {
    content: attr(placeholder);
    display: block; /* For Firefox */
}

TinyMCEのcontenteditable要素にdata-attributeを追加し、編集可能なコンテンツに影響を与えるためにCSSを少し追加する方法を見つける必要があります。

0
Hooman Askari