- Create a new LocalWP Site.
- Unzip the db_name.sql.gz into the /app/public directory
- Open the Site Shell
- Visit the MySQL subshell using the command:
wp db query
# 1. Save the commands.sh file somewhere (no need to commit to repository). | |
# 2. Run `chmod +x ./commands.sh` to allow permission to run the file. | |
# 3. Run `./commands.sh` to run the file. | |
env="@99999.develop" | |
sites=$(vip $env -- wp site list --field=url) | |
for site in $sites; do | |
vip $env -- wp user set-role michaelsumner administrator --url=$site | |
done |
wp db query
<?php | |
add_filter( 'coauthors_guest_author_fields', 'add_guest_author_fields', 10, 2 ); | |
/** | |
* Adds the custom guest author fields to the coauthors guest author fields array. | |
* | |
* @param array $fields_to_return The fields to return. | |
* @param array $groups The groups to return. | |
* @return array The fields to return. |
wp post update $(wp post list --post_type=resource --field=ID) --nostore |
# wp site list --field=url | xargs -I % sh -c 'wp user set-role <user-login> <role> --url=%' | |
# | |
# For example: | |
wp site list --field=url | xargs -I % sh -c 'wp user set-role testuser administrator --url=%' |
# Example: loop through all post ids and update the post meta for each post_id to assign the post_date | |
for post_id in $(terminus remote:wp examplesite.environment -- post list --format=ids); do terminus remote:wp examplesite.environment -- post meta update "$post_id" examplemeta_start_date "$(terminus remote:wp examplesite.environment -- post get $post_id --field=post_date)"; done |
capability="upload_files" | |
wp role list --fields=role --format=csv | tail -n +2 | while IFS= read -r role; do | |
if wp cap list "$role" | grep -q $capability; then | |
echo "$role" | |
fi | |
done |
# replace "Hello, World!" with appropriate string to search for | |
# replace `post_title` with appropriate column to search for | |
wp site list --fields=url,blog_id | while IFS= read -r line; do | |
url=$(echo "$line" | awk -F'\t' '{print $1}') | |
blog_id=$(echo "$line" | awk -F'\t' '{print $2}') | |
wp post list --field=url --ignore_sticky_posts=1 --orderby=date --order=DESC --post__in=$(wp db query "SELECT ID FROM wp_${blog_id}_posts WHERE post_title LIKE '%Hello, World!%' AND post_status='publish' AND post_type='post'" --skip-column-names --url=${url} | paste -s -d ',' -) --url=${url} | |
done >> log.txt |
wp site list --field=url | xargs -I % sh -c 'wp plugin is-active wordpress-seo --url=% && echo "Plugin is activated on site %"' |
<?php | |
// Disable WordPress core attempts to redirect old posts. | |
add_filter( 'old_slug_redirect_post_id', '__return_zero' ); | |
add_filter( 'redirect_canonical', '__return_empty_string' ); |