web-dev-qa-db-ja.com

HTMLエディタのテキスト領域のプレースホルダ?

特定の投稿タイプのデフォルトのHTMLエディタにプレースホルダを表示するようにしています。コードは次のようになります。

add_filter('the_editor','add_placeholder_event');
function add_placeholder_event( $html ){
if ( 'event' == $post->post_type )
    $html = preg_replace('/<textarea/', '<textarea placeholder="my place holder text" ', $html);
return $html;
}

ただし、if ( 'event' == $post->post_type )を削除すると機能しません(ただし、WordpressのすべてのHTMLテキストエディタに適用されます)。

私が悪いことをしているという考えはありますか?

1
jockebq

それを解決しました:

function add_placeholder_event( $html ){
$screen = get_current_screen();
$post_type = $screen->post_type;

if( $post_type == 'event' ) {
    $html = preg_replace('/<textarea/', '<textarea placeholder="John Doe" ', $html);
}
return $html;
}
add_filter('the_editor','add_placeholder_event');
2
jockebq