CCCPaste

Wildcard search and replace for WP Engine dom...

Change "example.com" to your desired replaced domain.
--dry-run flag ensures no replacements are actually made

=====================
*.wpengine.com
=====================

for domain in $(wp db query "
SELECT DISTINCT SUBSTRING_INDEX(SUBSTRING_INDEX(t.val, '.wpengine.com', 1), '//', -1) AS subdomain
FROM (
  SELECT option_value AS val FROM wp_options
  UNION ALL
  SELECT meta_value AS val FROM wp_postmeta
  UNION ALL
  SELECT post_content AS val FROM wp_posts
) AS t
WHERE t.val LIKE '%wpengine.com%' AND t.val LIKE '%//%';
" --skip-column-names); do
  if [ -n "$domain" ]; then
    echo "Running search-replace for: $domain.wpengine.com"
    wp search-replace "//${domain}.wpengine.com" "//www.example.com" \
      --precise --all-tables --skip-columns=guid,user_email --report-changed-only --dry-run
  fi
done

=====================
*.wpenginepowered.com
=====================

for domain in $(wp db query "
SELECT DISTINCT SUBSTRING_INDEX(SUBSTRING_INDEX(t.val, '.wpenginepowered.com', 1), '//', -1) AS subdomain
FROM (
  SELECT option_value AS val FROM wp_options
  UNION ALL
  SELECT meta_value AS val FROM wp_postmeta
  UNION ALL
  SELECT post_content AS val FROM wp_posts
) AS t
WHERE t.val LIKE '%wpenginepowered.com%' AND t.val LIKE '%//%';
" --skip-column-names); do
  if [ -n "$domain" ]; then
    echo "Running search-replace for: $domain.wpenginepowered.com"
    wp search-replace "//${domain}.wpenginepowered.com" "//www.example.com" \
      --precise --all-tables --skip-columns=guid,user_email \
      --report-changed-only --dry-run
  fi
done