Ändern von geschützten Bildgrößen: Verwenden Sie “add_image_size ()” oder “update_option ()”?

Ich finde widersprüchliche Informationen darüber, ob es in Ordnung ist, geschützte WordPress-Bildgrößen ( thumbnail, medium, medium_large, and large ) mit add_image_size() außer Kraft zu setzen. Einige Dokumente geben an, dass es besser ist, dies mit update_option () zu tun. Gibt es einen praktischen Unterschied zwischen diesen Code-Gruppen?

 function mytheme_image_sizes() { add_image_size('thumbnail', 200, 200, true); add_image_size('medium', 480, 480, true); } 

vs

 function mytheme_image_sizes() { update_option( 'thumbnail_size_w', 200 ); update_option( 'thumbnail_size_h', 200 ); update_option( 'thumbnail_crop', 1 ); update_option( 'medium_size_w', 480 ); update_option( 'medium_size_h', 480 ); update_option( 'medium_crop', 1 ); } 

Hinweis: Ich gebe diese in meinem Theme an, um zu verhindern, dass Administratoren willkürlich die Größe ändern und die Post-4.4-Responsive-Images-function vermasseln, und wahrscheinlich entferne ich die Admin-Oberfläche, um die Bildgrößen zu ändern.

Solutions Collecting From Web of "Ändern von geschützten Bildgrößen: Verwenden Sie “add_image_size ()” oder “update_option ()”?"

Es gibt wenig Unterschied, standardmäßig ist crop auf false .

 function add_image_size( $name, $width = 0, $height = 0, $crop = false ) { global $_wp_additional_image_sizes; $_wp_additional_image_sizes[ $name ] = array( 'width' => absint( $width ), 'height' => absint( $height ), 'crop' => $crop, ); } 

Und auch während des Evaluierungsprozesses

 if ( isset( $_wp_additional_image_sizes[ $size ] ) ) { $width = intval( $_wp_additional_image_sizes[ $size ]['width'] ); $height = intval( $_wp_additional_image_sizes[ $size ]['height'] ); $crop = ( $nocrop ) ? false : $_wp_additional_image_sizes[ $size ]['crop']; } else { $height = get_option( "{$size}_size_h" ); $width = get_option( "{$size}_size_w" ); $crop = ( $nocrop ) ? false : get_option( "{$size}_crop" ); } 

Die Variable $_wp_additional_image_sizes wird berücksichtigt. Abgesehen davon, dass es sehr einfach ist, werden Optionen nur dann aus der Optionstabelle gelesen, wenn sie nicht definiert sind.

Bitte beachten Sie auch : Die database wp_options Tabelle wird gelesen, bevor functions.php verarbeitet wurde.