タグ: wp_trim_words

  • wp_trim_words、文字列を指定した文字数で html タグを除去して取得できる便利な関数がそれ。

    wp_trim_words、文字列を指定した文字数で html タグを除去して取得できる便利な関数がそれ。

    WordPress を使ってちょっと込み入ったことをやりたい、ってときに便利なやつです。

    最近よく使うのでメモ。

     

    Codex

    Codex、ほんと助かります。

     

    wp_trim_words の引数

    <?php $trimmed = wp_trim_words( $text, $num_words = 55, $more = null ); ?>

    ひきすうは3つ。

    • $text…必須、切り取りたい文字列
    • $num_words…切り取りたい文字数。デフォルト値は 55文字。
    • $more…切り取った文字列の後に追加したい文字や html。デフォルトは値 null

    配列とかややこしいのは出てこないので使いやすいですね。

    注意するのは WordPress 3.3 以上でないとこの関数を実装していないことです。

     

    wp_trim_words を使ってみる

    使ってみれば簡単に理解できますきっと。

    yahoo.co.jp サイトの文字列を 50文字切り取って出力するサンプル。

    <?php
    $html = file_get_contents( 'http://www.yahoo.co.jp/' );
    $html = wp_trim_words( $html, 50, '' );
    echo $html;
    ?>
    出力結果は↓
    
    Yahoo! JAPAN ヘルプ Yahoo! JAPANトップページの全機能をご利用いただくには、

     

    はい、文字列だけ取得・出力できました。

    html タグは一切残りません、べんり!

     

    $more 部分に html タグなんかを入れたいってときはこんな感じで。

    <?php
    $html = file_get_contents( 'http://www.yahoo.co.jp/' );
    $html = wp_trim_words( $html, 50, '…<a href="http://yahoo.co.jp">Yahoo はこちら</a>' );
    echo $html;
    ?>

     

    まとめ

    使い方次第で応用が効くので、抜粋の表示をオリジナルにしたい時や1行に収めてリストで色々出力したいときに使うといいかも。