サポート » テーマ » raindrops 自動挿入されるp、brタグを削除する方法

  • 解決済 kashiwa

    (@kashiwa)


    固定ページに自動挿入されるp、brタグを削除したいと思っています。
    いろいろなサイトに、

    p、brタグの自動挿入を無効にしたいページの the_content タグの前に、以下のように追加記述します。
    <?php remove_filter (‘the_content’, ‘wpautop’); ?>
    <?php the_content(); ?>

    と書いてありますが、テーマ raindropsでは、<?php the_content(); ?>がpage.phpなどに見当たらないのですが、どうすればいいかご存知でしたら教えてください

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • nobita

    (@nobita)

    こんにちは

    ページは、htmlで入力するので、余計なp要素の追加はいらないといいうことだと思いますが、

    the_content hookは、Raindropsでも利用できます。
    the_contentに相当する関数は、raindrops_entry_content()になります。

    提示された

    remove_filter( 'the_content', 'wpautop');

    は、そのままでは、twentyfourteen raindrops ともに動作しないようでした。
    ( 細かくは、追っかけていません )

    代替案

    <?php
    add_filter( 'the_content', 'wpautop2', 5 );
    add_filter( 'the_content', 'wpautop3', 11 );
    
    function wpautop2( $content ) {
    
        if ( is_page() ) {
    
            return str_replace( "\n", '', $content );
        }
    }
    
    function wpautop3( $content ) {
        if ( is_page() ) {
            return str_replace( array( "<p>", "</p>" ), '', $content );
        }
    }

    ただし、このフィルタだと、投稿本文のすべての改行を除去します。

    WordPress3.9になって、P要素のおかしな動作は、だいぶ改善されたみたいですので、(tdやdivの内側やoption要素あたり)一応チェックをお勧めします。

    nobita

    (@nobita)

    すみません 代替案 コード間違えました

    本文に書いたp要素も消えるので、

    functions.phpの先頭(<?phpの前)に追加

    <?php
    add_filter( 'the_content', 'wpautop2', 5 );
    add_filter( 'the_content', 'wpautop3',11 );
    
    function wpautop2( $content ) {
    
        if ( is_page() ) {
    
            return str_replace( array('<p>', '</p>',"\n",),
                                array('<p class="paragraph">','</p class="paragraph">', '' ),
                                $content );
        }
    }
    
    function wpautop3( $content ) {
        if ( is_page() ) {
            return str_replace( array( "<p>", "</p>" , '<p class="paragraph">','</p class="paragraph">'),
                                array( '','','<p>','</p>'),
                                $content );
        }
    }
    ?>

    スレッド開始 kashiwa

    (@kashiwa)

    ありがとうございます

    いただいたコードで実現できました。

    助かりました。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「raindrops 自動挿入されるp、brタグを削除する方法」には新たに返信することはできません。