問題
カスタム投稿タイプの記事を一括置換したい。
一括置換にはSearch Regexが定番だが、カスタム投稿タイプには対応していない。
そこでSearch Regexをカスタマイズして、カスタム投稿タイプの記事を一括置換できるようにする。
手順
Search Regexのカスタマイズ
プラグインのプラグインエディターから、エディタ画面を開く。
検索するプラグインにSearch Regexを選び、選択ボタンを押す。
編集箇所の7行目は以下のようになっている。
$sql = "SELECT ID, post_content, post_title FROM {$wpdb->posts} WHERE post_status != 'inherit' AND post_type IN ('post','page') ORDER BY ID ".$orderby;
カスタム投稿タイプのみ一括置換したいのであれば、以下のようにする。カスタム投稿タイプは、仮にmodernthemesのportfolioテーマのworkとする。
$sql = "SELECT ID, post_content, post_title FROM {$wpdb->posts} WHERE post_status != 'inherit' AND post_type IN ('work') ORDER BY ID ".$orderby;
記事と固定ページも置換したいのであれば、以下のようにする。
$sql = "SELECT ID, post_content, post_title FROM {$wpdb->posts} WHERE post_status != 'inherit' AND post_type IN ('post','page','work') ORDER BY ID ".$orderby;
Search Regexの使い方
Post Contentを選択すると、カスタム投稿タイプが対象になるよう変更されている。
以下は、カスタム投稿タイプの記事の先頭と末尾にショートコードを追加する例。
Search pattern
/^(.*)$/
Replace pattern
[su_animate type="fadeInUp" duration="2" delay="0.5"]$1[/su_animate]