image_size_input_fields() – Retrieve HTML for the size radio buttons with the specified one checked.

You appear to be a bot. Output may be restricted

Description

Retrieves HTML for the size radio buttons with the specified one checked.

Usage

$array = image_size_input_fields( $post, $check );

Parameters

$post
( WP_Post ) required
$check
( bool|string ) optional

Returns

array

Source

File name: wordpress/wp-admin/includes/media.php
Lines:

1 to 68 of 68
function image_size_input_fields( $post, $check = '' ) {
  
/**
 * Filters the names and labels of the default image sizes.
 *
 * @since 3.3.0
 *
 * @param string[] $size_names Array of image size labels keyed by their name. Default values
 *                             include 'Thumbnail', 'Medium', 'Large', and 'Full Size'.
 */
  $size_names = apply_filters(
    'image_size_names_choose',
    array(
      'thumbnail' => __( 'Thumbnail' ),
      'medium'    => __( 'Medium' ),
      'large'     => __( 'Large' ),
      'full'      => __( 'Full Size' ),
    )
  );

  if ( empty( $check ) ) {
    $check = get_user_setting( 'imgsize', 'medium' );
  }

  $out = array();

  foreach ( $size_names as $size => $label ) {
    $downsize = image_downsize( $post->ID, $size );
    $checked  = '';

    // Is this size selectable?
    $enabled = ( $downsize[3] || 'full' === $size );
    $css_id  = "image-size-{$size}-{$post->ID}";

    // If this size is the default but that's not available, don't select it.
    if ( $size == $check ) {
      if ( $enabled ) {
        $checked = " checked='checked'";
      } else {
        $check = '';
      }
    } elseif ( ! $check && $enabled && 'thumbnail' !== $size ) {
      /*
			 * If $check is not enabled, default to the first available size
			 * that's bigger than a thumbnail.
			 */
      $check   = $size;
      $checked = " checked='checked'";
    }

    $html = "<div class='image-size-item'><input type='radio' " . disabled( $enabled, false, false ) . "name='attachments[$post->ID][image-size]' id='{$css_id}' value='{$size}'$checked />";

    $html .= "<label for='{$css_id}'>$label</label>";

    // Only show the dimensions if that choice is available.
    if ( $enabled ) {
      $html .= " <label for='{$css_id}' class='help'>" . sprintf( '(%d&nbsp;&times;&nbsp;%d)', $downsize[1], $downsize[2] ) . '</label>';
    }
    $html .= '</div>';

    $out[] = $html;
  }

  return array(
    'label' => __( 'Size' ),
    'input' => 'html',
    'html'  => implode( "\n", $out ),
  );
}
 

 View on GitHub View on Trac