Wp media regenerate (WP-CLI)
Versie door Jeroen Strompf (overleg | bijdragen) op 31 aug 2022 om 16:44
wp media regenerate:
- Regenerates thumbnails for one or more attachments.
- Dit blijkt de oplossing te zijn voor update-lag zoals ik die ervoer in maart 2021 - Update-lag (WordPress)
$ wp help media regenerate NAME wp media regenerate DESCRIPTION Regenerates thumbnails for one or more attachments. SYNOPSIS wp media regenerate [<attachment-id>...] [--image_size=<image_size>] [--skip-delete] [--only-missing] [--yes] OPTIONS [<attachment-id>...] One or more IDs of the attachments to regenerate. [--image_size=<image_size>] Name of the image size to regenerate. Only thumbnails of this image size will be regenerated, thumbnails of other image sizes will not. [--skip-delete] Skip deletion of the original thumbnails. If your thumbnails are linked from sources outside your control, it's likely best to leave them around. Defaults to false. [--only-missing] Only generate thumbnails for images missing image sizes. [--yes] Answer yes to the confirmation message. Confirmation only shows when no IDs passed as arguments. EXAMPLES # Regenerate thumbnails for given attachment IDs. # $ wp media regenerate 123 124 125 Found 3 images to regenerate. 1/3 Regenerated thumbnails for "Vertical Image" (ID 123). 2/3 Regenerated thumbnails for "Horizontal Image" (ID 124). 3/3 Regenerated thumbnails for "Beautiful Picture" (ID 125). Success: Regenerated 3 of 3 images. # Regenerate all thumbnails, without confirmation. # $ wp media regenerate --yes Found 3 images to regenerate. 1/3 Regenerated thumbnails for "Sydney Harbor Bridge" (ID 760). 2/3 Regenerated thumbnails for "Boardwalk" (ID 757). 3/3 Regenerated thumbnails for "Sunburst Over River" (ID 756). Success: Regenerated 3 of 3 images. # Re-generate all thumbnails that have IDs between 1000 and 2000. # $ seq 1000 2000 | xargs wp media regenerate Found 4 images to regenerate. 1/4 Regenerated thumbnails for "Vertical Featured Image" (ID 1027). 2/4 Regenerated thumbnails for "Horizontal Featured Image" (ID 1022). 3/4 Regenerated thumbnails for "Unicorn Wallpaper" (ID 1045). 4/4 Regenerated thumbnails for "I Am Worth Loving Wallpaper" (ID 1023). Success: Regenerated 4 of 4 images. # Re-generate only the thumbnails of "large" image size for all images. # $ wp media regenerate --image_size=large Do you really want to regenerate the "large" image size for all images? [y/n] y Found 3 images to regenerate. 1/3 Regenerated "large" thumbnail for "Sydney Harbor Bridge" (ID 760). 2/3 No "large" thumbnail regeneration needed for "Boardwalk" (ID 757). 3/3 Regenerated "large" thumbnail for "Sunburst Over River" (ID 756). Success: Regenerated 3 of 3 images.
Examples 2021.03
wp media regenerate 19328 # 19328 = attachment-id
# Regenerate all images # # * Approx. 33.000 images (x several presets) # * Processing speed: About 100 images/minute # * Total time: 8h24min # wp media regenerate
Examples 2022.08
- 3.398 images
- Server-sided
Optimize with parallelisation
This doesn't work yet - Maybe something wrong with seq
as it is quite new to me, but promising nevertheless:
################################################################################ # Regenerate all thumbnails ################################################################################ # regenerate_all_thumbnails() { # # Regenerate all thumbnails ######################################## # # # Initialisation ######################################## # echo ""; echo ""; echo "### regenerate_all_thumbnails()..."; echo "" if [ -z "$path" ]; then echo " Variable 'path' not provided. Exiting"; exit; fi if [ -z "$number_of_images" ]; then echo " Variable 'number_of_images' not provided. Exiting"; exit; fi if [ -z "$number_of_threads" ]; then echo " Variable 'number_of_threads' not provided. Exiting"; exit; fi cd $path offset_tmp=$(($number_of_images/$(($number_of_threads-1)))) echo " offset_tmp: $offset_tmp" i=0 for ((i; i<=$number_of_images; ((i=i+$offset_tmp)))) do end_tmp=$(($i+$offset_tmp-1)) # echo "Start: $i" echo "End: $end_tmp" seq $i $end_tmp | xargs wp media regenerate & done }