サポート » プラグイン » 過去投稿の一括置換について

  • 先ほど preタグ 内を整形・着色してくれるPluginのcrayon-syntax-highlighterをインストールしたのですが、これまでずっとpreタグ内では < など全てHTMLエンコーディングをして記入していたため、プラグインの機能と重複してしまい< ではなく < とそのまま表示されてしまいます。

    過去の投稿内のpreタグ内にあるHTMLエスケープされている文字列を全て一括置換したいのですが具体的な解決方法が見つかりませんでした。

    おそらくこちらのプラグインと
    http://wordpress.org/plugins/search-regex/

    http://wordpress.stackexchange.com/questions/91720/replace-html-entities-in-posts-between-pre-tags
    で紹介されているこちらの関数を利用すればできるのだと思うのですが、力量不足で具体的にどう作業すればよいかわかりませんでした。

    add_filter( 'the_content', 'pre_content_filter', 0 );
    
    function pre_content_filter( $content ) {
        return preg_replace_callback( '|<pre.*>(.*)</pre|isU' , 'convert_pre_entities', $content );
    }
    
    function convert_pre_entities( $matches ) {
        return str_replace( $matches[1], html_entity_decode( $matches[1] ), $matches[0] );
    }

    上記のコードを functions.php に追記すればページの読み込み時に自動的に置換が行われるかと思って試してみましたが、それも動作していないようです。

    どうすれば一括で過去の投稿を置換できるでしょうか?

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • モデレーター Takayuki Miyoshi

    (@takayukister)

    タイトルが空の状態になっていましたので、こちらで内容に基づいたタイトルを付けさせていただきました。タイトルがないと一覧からたどれないため回答が非常に付きにくくなります。質問を投稿する際は内容に合ったタイトルを必ず付けるようにしてください。

    良いトピックタイトルをつける

    もし、タイトルを入力したはずなのに消えていた、というようなことがありましたら、何らかのシステム上のトラブルが発生していた可能性もありますので、原因究明のため以下の情報をご提供ください。

    • 設定したはずのタイトル(覚えていれば)
    • 投稿時に使用したブラウザとそのバージョン
    • そのほか何か気になったことがあれば
    トピック投稿者 ironsand

    (@ironsand)

    正確なタイトルは忘れてしまったのですが

    「crayon-syntax-highlighterをインストール後に過去のHTMLエンコードされた文字列を一括置換する方法について」

    といったものをつけていました。

    投稿はOSX10.7のおそらくChromeからだったと思います。

    投稿後にタイトルが長すぎて切れてしまっていましたが、2,3日後まではタイトルが表示されていたことを覚えています。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「過去投稿の一括置換について」には新たに返信することはできません。