サポート » 使い方全般 » the_excerpt()

  • こんにちは。
    WordPress 2.9.2を使っています。
    これですが↓
    Plugin API/Filter Reference/excerpt more

    MySQL5.0.51aでは動作しますが、 .MySQL 4.1.2では動作しません。
    後者の方は、バージョン 2.8.x 以前の場合の例文では動作します。

    皆さんの処も同じですか? 教えてください。

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • モデレーター IKEDA Yuriko

    (@lilyfan)

    このフィルターフックはどう見ても MySQL に依存しません。おそらく、MySQL *以外の* 何か違う点があるのではないかと思います。サーバー環境の違いを書いてもらえますか?

    トピック投稿者 munus

    (@munus)

    lilyfanさん、回答ありがとうございます。
    MySQL5がheteml、MySQL4は、Wadaxです。
    両サーバーで、サイト専用テーマとdefault テーマで試しました。
    Wadaxは、やはり機能しませんでした。
    hetemlは、どちらも機能しました。
    やはり、DB環境でしょうか。それともサーバーの問題でしょうか。

    モデレーター Seisuke Kuraishi

    (@tenpura)

    WP Multibyte Patch をお使いである場合は、excerpt_more フックは WP Multibyte Patch 内で実行されることと思います。
    心配になったので念のため動作テストをしてみましたが問題はないようです。
    また、lilyfan さんがおっしゃっているように MySQL のバージョンに依存するということは考えにくいです。
    ブラウザのキャッシュが残っているということはありませんか?

    モデレーター IKEDA Yuriko

    (@lilyfan)

    もし、excerpt_more フックで置き換えたい文字列が日本語だったら、文字コードの違いが問題になりそうです。FTP/SFTP でサーバーに転送するとき、文字コードが変更されてしまっていて文字化けしているとか、mbstring の http_output で文字コードが自動変更されているとか、そのへんが理由かもしれません。

    具体的にお作りになった excerpt_more にフィルターする関数を教えてください。

    トピック投稿者 munus

    (@munus)

    tenpuraさん、lilyfanさん、色々とありがとうございます。
    キャッシュ、文字コードの問題ではないようです。
    実際に置換するものは、<img … />(リンク画像)です。
    ただ、例文のように[…]から[…..]にしてもフックされません。

    また、今は次のようにフックさせていますが、

    function new_excerpt_more($excerpt)
    {
    $default_excerpt_word = ‘[…]’;
    $new_excerpt_word = “…<img ….. />“;
    return str_replace($default_excerpt_word, $new_excerpt_word, $excerpt);
    }

    add_filter(‘wp_trim_excerpt’, ‘new_excerpt_more’);

    index.phpでは、the_content()を使わず、the_excerpt()としていますが、
    これがサイト内の検索では、置換されず […] のままなんです。(T_T)

    プラグインかもしれないし、とにかくこうなったら、
    一度、同じWadaxサーバーにテスト環境を作り、原因を究明しようと思います。
    地道にやっていきます。原因がわかりましたら、また投稿致します。

    トピック投稿者 munus

    (@munus)

    現状直ってます。
    原因は、よくわかりませんが、操作手順は、
    1)プラグインで「wp-pagenavi」オフ。
    2)同プラグインを新規にアップデート。
    その際、wp-pagenaviプラグインコードにおいて、ラインブレークの混在があるため、ラインブレークをUnix(LF)に統一。
    3)Wordpress 2.9.2 標準装備の「wp-multibyte-patch」で、バージョン 1.1.7が配布されていたので、ダウンロードして 手動で更新アップデート。

    サイト内の検索(Search.php)での挙動は、search_excerpt-1.2(ylsy_search_excerpt.php)が原因でした。
    このプラグイン、更新日が古いですね。
    同様な事ができるプラグインがありましたら、どうか 教えてください。

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • トピック「the_excerpt()」には新たに返信することはできません。