web関連

「Search Regex」プラグインでカスタム投稿も置換できるようカスタマイズ

「Search Regex」プラグインでカスタム投稿も置換できるようカスタマイズ

webサイトのリニューアルでssl化したから投稿・固定ページ内の画像のリンクを修正しようと「Search Regex」プラグインを使ったらカスタム投稿が置換できなかったのでカスタマイズした時のメモ

プラグイン内のファイル「post_content.php」を修正

プラグインフォルダ「plugins/search-regex/searches」内に「post_content.php」があります。
それを開くと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;

// 修正後
$sql = "SELECT ID, post_content, post_title FROM {$wpdb->posts} WHERE post_status != 'inherit' ORDER BY ID ".$orderby;

AND post_type IN ('post','page')の部分のみ削除してます。

これでカスタム投稿タイプ全部に置換をかけることができます。

全てのカスタム投稿じゃなくて一部のカスタム投稿だけに置換をかけたいときは以下のようにすれば任意のカスタム投稿を指定できます。

AND post_type IN ('post','page','カスタム投稿01')
プラグインもバージョンによって書き方変わってるから注意した方がいいかも

「Search Regex」プラグインの使い方

プラグインを有効化したら「ツール」→「Search Regex」で設定画面に入る。

設定は特に変更はいらず、以下のように設定されてれば「Search pattern(置換前)」「Replace pattern(置換後)」を入力して、「Replace & Save »」を押せば置換されます。
※置換後は元に戻せないので注意した方がいい

  • Source:Post content
  • Limit to:No limit
  • Order By:Ascending
  • Search pattern:置換をかけたい文字やURL
  • Replace pattern:置換をかけた後の文字やURL

下の「Regex:」は特にチェックする必要はありません。

ボタンが3つ「Search »」「Replace »」「Replace & Save »」と並んでるけど、実際に押して置換をかける時は「Replace & Save »」を押さないと置換はされません。
「Search »」「Replace »」2つのボタンは押しても反映されないので押して試してください。
検索と置換後のテキスト・URLが確認できます。

詳しく説明しているサイトあるのでそっち見た方がわかりやすいかも

参考

▼【常時SSL化】「Search Regex」画像URLを「http→https」に一括置換する方法【WordPressプラグイン】
https://osusume-houhou.com/search-regex-how-to-globally-replace-the-image-url-to-https-from-http/

初めて使ったけど、使い勝手がいいと思う。 カスタマフィールドは置換できなかったので手作業