web-dev-qa-db-ja.com

The_content()の特定の段落にクラスを追加する

最初の段落にボディクラスを追加して、最初の段落を太字にしたいとしましょう。の出力をフィルタリングする方法はありますか

the_content();

それとも他の段落?第一段落?最後の段落?

JavascriptまたはCSS(:firstchild)を使用してこれを実行できることはわかっていますが、ネイティブのWordPress方法はありますか?

ありがとう。

J

2
jw60660

次のコードは、the_contentによって出力される最初の段落にクラスを追加します。

function first_paragraph($content){
    return preg_replace('/<p([^>]+)?>/', '<p$1 class="intro">', $content, 1);
}
add_filter('the_content', 'first_paragraph');

あなたのテーマのfunctions.phpファイルに上記を追加してください。

それではあなたのCSSに次のようなものを追加してください:

p.intro { font-weight:bold; }

私はこの解決策の功績を主張することはできません(_ -WPフォーラムの this thread を参照してください)が、私はそれをテストしました。あなたはあなたの心が望むどのパラグラフを目標とするために必要に応じてそれを修正することができるはずです。

6
Ryan