web-dev-qa-db-ja.com

エディタが<p>タグを削除してnbspタグに置き換えないようにします。

投稿/ページのWYSIWYGエディタにコンテンツを入力しても、段落を終了するときに<p>が表示されず、&nbspsが表示されます。手動で<p></p>をHTMLモードにすると、 'visual'モードに切り替えるとすぐに削除されます。これはいくつかのサイトで繰り返されています(私はそれがテーマだと思ったがそうではありません)。

私は何十ものトピックと答えを読んだことがありますが、どれも私の問題を解決しません。 functions.phpファイルでadd/remove wpautopを試しましたが、役に立ちません。

私はTinymceプラグインを使いたくありません。

5
Nona Man

私は詳細な調査をして答えを見つけました - 私は今 'tiny_mce_before_init'のフックを使っています。

他の答え (回答#2 @Chip Bennett に感謝します)に基づいて、段落の切れ目を確実にするためにfunctions.phpで次のコードを使いました(エディタのHTMLモードでは_と表示されます)。&nbspがフロントエンドの段落になります):

function tinymce_config_59772( $init ) {
   // Don't remove line breaks
   $init['remove_linebreaks'] = false; 
   // Convert newline characters to BR tags
   $init['convert_newlines_to_brs'] = true; 
   // Do not remove redundant BR tags
   $init['remove_redundant_brs'] = false;

   // Pass $init back to WordPress
   return $init;
}
add_filter('tiny_mce_before_init', 'tinymce_config_59772');

あなたはtinyMCE site さまざまな可能な設定で見つけることができます。

3
Nona Man

あなたはCKEditorを試すことができます

WordpressのCKEditor

1
Androliyah

また、TinyMCEはWordPressと統合され、HTMLエディターは一部の文字を削除して&nbspを削除すると言うこともできます。これは元々セキュリティとbelief<br><p>はもう必要ありませんでした

1
Damien