web-dev-qa-db-ja.com

WYSIWYGエディタの改行処理を改善するにはどうすればよいですか?

私はいつもエディタでHTMLモードになっていて、段落の間の区切りのような単純なものを正しく表示するために<p></p>を使っています。それは普通ですか?私が使うことができるより良いエディタがありますか?

5
tooshel

TinyMCEはHTMLソースの二重改行を<p></p>に、そしてその逆に変換します。投稿のコンテンツがレンダリングされると、<p/><p>が追加されるため、保存後にHTMLソースに手動で入力した</p>は実際に削除されます。

Auto -<p>の置き換えは、<?php the_content() ?>を使用して投稿のコンテンツをレンダリングしている場合にのみ機能します。直接$post->post_contentを出力する場合は、同じ書式設定フックを通過せず、改行や段落がなくても見やすくなります。

レンダリングされたマークアップにたくさんの<br/>タグが必要な場合は、おそらくCSSとmarginまたはpadding CSSプロパティの使用に基づくより良い解決策を見つけるべきです。

8

私は上記の記事のいくつかに、WYSIWYGエディタの継続的な使用を前提とした質問への直接の回答として同意します。しかし、裁判の後、少なくとも再考してHTMLエディタに切り替えることをお勧めします。

あなたがまだ私と一緒にいると仮定して(あなたはそれをオプションと考えています)、もっとあります。 「ああ、あなたは言います、「HTMLエディタはまだ改行を加えます、そして、一般的に私と混同します!」そう、これがauto-pフィルタを削除する必要がある理由です。可能な限り純粋なHTMLに切り替えているので、良い方法として、波引用符のようなものを処理するtexturizerを取り出します。

あなたのテーマエディタに行きます。 "テーマ関数"(functions.php)ファイルに行きます。以下を追加してください。

remove_filter ('the_content', 'wpautop');
remove_filter('the_content', 'wptexturize');

ただし、投稿/ページの抜粋を使用する予定の場合は、これも追加します。

remove_filter ('the_excerpt', 'wpautop');
remove_filter('the_excerpt', 'wptexturize');

それが役立つことを願っています!率直に言って...私はビジュアルエディタと並んでフィルタを無効にしようとしたことがありません!多分それは実際にその点でも同様に役立ちますか!

5
Greg

TinyMCE Advancedをお勧めします また、サイト上でユーザーが編集可能なHTMLコードをもっと制御したいと思います。トリックを実行するオプションStop removing the P and BR tags when saving and show them in the HTML editorがあります、それはデフォルトではチェックされていないので、いったんインストールされたら、あなたは設定に入ってそれを有効にする必要があります。もう1つの利点は、エディタのさまざまな側面を表示/非表示にできることです。これにより、エンドユーザーがプレイする可能性のあるボタンを削除して、コンテンツの書式設定でクリエイティブになろうとすることができます。デフォルトでは多くの不要なオプションがオンになっているため、不要なオプションを削除して削除する必要があります。

2
Rick Curran

私は Disable WPautopプラグイン を使用します。これは、予想通り、 wpautop関数 を無効にします。状況によっては便利かもしれません。

1

一言で言えば:はい。それは普通です。

いいえそれ以上の編集者はいません。

TinyMCE Advanced を試してみて、それが役立つかどうかを確認してください。

また、このサイトでバッククォート( `)を使用すると、HTMLからエスケープされます。

<br />

1
John P Bloch

あなたが問題を抱えている理由はWordPressが使うのを好むからです

タグ。改行よりも意味があります。

0
scribu