Skip to content

Imagens não aparecem redimensionadas

fevereiro 21, 2009

Pode ser por vários motivos, mas um deles pode ser este.

O arquivo da imagem não é encontrado porque o diretório uploads definidos nas configurações via área de administração está errado.

Aí ocorre o seguinte:

/**
* Retrieve HTML content of icon attachment image element.
*
* @since 2.0.0
* @deprecated Use {@link wp_get_attachment_image()}
* @see wp_get_attachment_image() Use instead of.
*
* @param int $id Optional. Post ID.
* @param bool $fullsize Optional, default to false. Whether to have full size image.
* @param array $max_dims Optional. Dimensions of image.
* @return string HTML content.
*/
function get_attachment_icon( $id = 0, $fullsize = false, $max_dims = false ) {
$id = (int) $id;
if ( !$post = & get_post($id) )
return false;

if ( !$src = get_attachment_icon_src( $post->ID, $fullsize ) )
return false;

list($src, $src_file) = $src;  /*aqui, $src_file recebe um caminho até a imagem errado, pois este caminho é montado com base no diretório padrão de uploads do blog, que por algum motivo está errado*/

// Do we need to constrain the image?
if ( ($max_dims = apply_filters(‘attachment_max_dims’, $max_dims)) && file_exists($src_file) ) {

/* consequentemente file_exists($src_file) retorna falso e nenhum resize é feito */

$imagesize = getimagesize($src_file);

if (($imagesize[0] > $max_dims[0]) || $imagesize[1] > $max_dims[1] ) {
$actual_aspect = $imagesize[0] / $imagesize[1];
$desired_aspect = $max_dims[0] / $max_dims[1];

if ( $actual_aspect >= $desired_aspect ) {
$height = $actual_aspect * $max_dims[0];
$constraint = “width='{$max_dims[0]}’ “;
$post->iconsize = array($max_dims[0], $height);
} else {
$width = $max_dims[1] / $actual_aspect;
$constraint = “height='{$max_dims[1]}’ “;
$post->iconsize = array($width, $max_dims[1]);
}
} else {
$post->iconsize = array($imagesize[0], $imagesize[1]);
$constraint = ”;
}
} else {
$constraint = ”;
}

$post_title = attribute_escape($post->post_title);

$icon = “<img src=’$src’ title=’$post_title’ alt=’$post_title’ $constraint/>”;

return apply_filters( ‘attachment_icon’, $icon, $post->ID );
}

Anúncios
No comments yet

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: