web-dev-qa-db-ja.com

tinymce内で自動追加されるpタグを削除するにはどうすればよいですか

私はtinymce 4.0.1を使用しており、入力を開始するかEnterキーを押すとpタグが自動的に追加されます。これらのpタグを動的に削除してから、コンテンツをエディターに再挿入する方法を教えてください。

24
Juan Gonzales

Tinymceには、コンテンツをスタイルできるようにするために、デフォルトで段落である root block element が必要です。したがって、tinymceはこれをルートブロック要素として使用することを強制されるため、これらの段落を削除すると、すべてのコンテンツが1つの段落にラップされます。

13
Thariama

initステートメントに次の行を追加する必要があります

forced_root_block : ""

したがって、完全なコードは次のようになります。

    <script>tinymce.init({forced_root_block : "",selector:'textarea'});</script>

よろしく!

50
turco_7

Tinymceセットアップにforced_root_block : falseを追加して「p」タグを削除するか、statusbar: falseでステータスバーを非表示にできます

3
Fadel

どう?

$("p").each(function(){$(this).parent().append($(this).html()); $(this).remove()})
2
gnuger

Initステートメントに次の行を追加する必要があります。

forced_root_block : ""
2
user3212640

呼び出しjavascriptでのみこれを追加します。

forced_root_block : false
1
Rodrigo Prazim

これをfunctions.phpファイルと標準に追加します

タグは、tiny_mce_before_initフックにいくつかのパラメーターを追加することにより削除されます。仕組みを確認したい場合は、このページでさらに読むことができます。 https://codex.wordpress.org/TinyMCE

////////////////////////////////////////////////////////////////////////
//////////REMOVE STANDARD <P> FROM TINYMCE EDITOR/////////////////////////
///////////////////////////////////////////////////////////////////////
function my_format_TinyMCE( $in ) {
$in['forced_root_block'] = "";
$in['force_br_newlines'] = TRUE;
$in['force_p_newlines'] = FALSE;
return $in;
}
add_filter( 'tiny_mce_before_init', 'my_format_TinyMCE' );
0
Nateno

テーマに挿入functions.php次のコード:

add_filter('tiny_mce_before_init', 'my_switch_tinymce_p_br'); 

function my_switch_tinymce_p_br($settings) {
    $settings['forced_root_block'] = false;
    return $settings;
}

ルートの「p」タグを他のタグに置き換える場合は、「false」を「div」に置き換えます(たとえば)。

0
Mikle Gardener