Ответы в темах

Просмотр 1 ответа (всего 1)
  • Нет основная идея это загружать картинку и уже потом её редактировать, выберать область для обрезки, переворачивать и тд.

    Редактор после обработки создаёт копию с новым именем

    $path = get_attached_file($post_id);
    	$path_parts = pathinfo52( $path );
    	$filename = $path_parts['filename'];
    	$suffix = time() . rand(100, 999);
    
    	if ( defined('IMAGE_EDIT_OVERWRITE') && IMAGE_EDIT_OVERWRITE &&
    		isset($backup_sizes['full-orig']) && $backup_sizes['full-orig']['file'] != $path_parts['basename'] ) {
    
    		if ( 'thumbnail' == $target )
    			$new_path = "{$path_parts['dirname']}/{$filename}-temp.{$path_parts['extension']}";
    		else
    			$new_path = $path;
    	} else {
    		while( true ) {
    			$filename = preg_replace( '/-e([0-9]+)$/', '', $filename );
    			$filename .= "-e{$suffix}";
    			$new_filename = "{$filename}.{$path_parts['extension']}";
    			$new_path = "{$path_parts['dirname']}/$new_filename";
    			if ( file_exists($new_path) )
    				$suffix++;
    			else
    				break;
    		}
    	}

    Генерит случайный суффикс так сказать.
    Но функция the_post_thumbnail берёт именно из оригинала.
    Вот это место

    function the_post_thumbnail( $size = 'post-thumbnail', $attr = '' ) {
    	echo get_the_post_thumbnail( NULL, $size, $attr );
    }
    
    /**
     * Retrieve Post Thumbnail.
     *
     * @since 2.9.0
     *
     * @param int $post_id Optional. Post ID.
     * @param string $size Optional. Image size.  Defaults to 'thumbnail'.
     * @param string|array $attr Optional. Query string or array of attributes.
      */
    function get_the_post_thumbnail( $post_id = NULL, $size = 'post-thumbnail', $attr = '' ) {
    	global $id;
    	$post_id = ( NULL === $post_id ) ? $id : $post_id;
    	$post_thumbnail_id = get_post_thumbnail_id( $post_id );
    	$size = apply_filters( 'post_thumbnail_size', $size );
    	if ( $post_thumbnail_id ) {
    		do_action( 'begin_fetch_post_thumbnail_html', $post_id, $post_thumbnail_id, $size ); // for "Just In Time" filtering of all of wp_get_attachment_image()'s filters
    		$html = wp_get_attachment_image( $post_thumbnail_id, $size, false, $attr );
    		do_action( 'end_fetch_post_thumbnail_html', $post_id, $post_thumbnail_id, $size );
    	} else {
    		$html = '';
    	}
    	return apply_filters( 'post_thumbnail_html', $html, $post_id, $post_thumbnail_id, $size, $attr );
    }
    
    ?>

    Увы не так хорошо владею английским как хотелось бы

Просмотр 1 ответа (всего 1)