Amazon JS(WordPressのプラグイン)のショートコードを削除する方法〜WP-CLI(wp search)と正規表現による置換

先日、Amazon JS(WordPressのプラグイン)で”Product Advertising APIのエラー”が表示される件について(新しいタブで開く)という記事を書きました。
Product Advertising APIのエラーが表示されるため、Amazon JSを停止・削除した方も多いのではないでしょうか。ただAmazon JSを停止・削除すると、”[amazonjs asin=…]”で始まるAmazon JS特有のショートコードが残ってしまいます。
WP-CLIで文字列を削除する方法
そのショートコードが1つか2つぐらいならば手動で削除してもそれほど手間はかからないでしょう。問題は手動で削除しきれないほどAmazon JSのショートコードが存在する場合です。
その場合は「何らかの手段」でまとめてショートコードを削除するhouga良いでしょう。以下の文章では、ショートコードをまとめて削除する方法をご紹介します。
WP-CLIの活用
WordPress専用のコマンドツールであるWP-CLIには“wp serach-replace”(新しいタブで開く)というコマンドがあります。WordPressのデータベース内にある任意の文字列を一括で置換できるコマンドですが、オプションをつけると置換する文字列に正規表現を用いることができます。
# wp search-replace '(置換前の文字列)' '(置換後の文字列)' --regex --regex-flags='i'
ショートコードをまとめて削除するwpコマンドの構文は上記のとおりとなります。ドキュメントルートを指し示す”path”オプションはなくても差し支えはありません。
置換する文字列の正規表現
次に構文の中で使用する、’(置換前の文字列)’と’(置換後の文字列)’を考えます。上記の構文のうち’(置換後の文字列)’は、’(なし)’となります(Amazon JSのショートコードがなくなれば良いので)。
一方、(置換する文字列)には正規表現を用います。正規表現とは文字列の検索パターンを表現するための記法のことを言います。したがって(置換する文字列)にはAmazon JSに関するあらゆる文字列の検索パターンを網羅する表現が必要となります。
'\[amazonjs asin="(.+)" locale="(.+)" title="(.+)"\]'
結論から言うと、(置換する文字列)は上記の検索パターンとして表現されます。
“\[“と”\]”
Amazon JSのショートコードの中で最初と最後に使われている、”[“と”]”は基本的にはメタ文字です。メタ文字は、その文字自体を表わさず、代わって特別な解釈が行われるため、メタ文字を打ち消すメタ文字の”\(バックスラッシュ)”を使います。
(.+)
“.”は改行を除く任意の一文字を表します。”+”は1回以上の繰り返しを表します。”(.+)”とすることで商品の名前として使われているどんな文字列もカバーすることができます。
wp search-replaceの実行内容
# wp search-replace '\[amazonjs asin="(.+)" locale="(.+)" title="(.+)"\]' '' --regex --regex-flags='i'
以上、wp search-replaceの構文と正規表現を合わせると、Amazon JSのショートコードを削除するための、コマンドは上記の通りとなります。プラグインを停止・削除したものの、ショートコードの残骸が残ってしまって困っている方という方はぜひ参考にしてください。
- Amazon JS
- Amazon JS Product Advertising APIのエラー
- Amazon JS エラー
- Amazon JS ショートコード 削除する SQL文
- Amazon JS ショートコード 削除するMySQL
- Amazon JS ショートコード 削除する方法
- Amazon JS ショートコード 正規表現 置換
- Amazon JS 動かない
- Amazon JS 商品が表示されない
- Amazon JS 表示されない
- Amazon アソシエイト
- Product Advertising APIのエラー
- Product Advertising API経由の売上実績
- WordPress
- WordPressのプラグイン
- wp search-replace
- wp search-replaceでショートコードを削除
- WP-CLI
- WP-CLIでAmazon JSのショートコードを削除
- アフィリエイト
- 正規表現