Je développe un champ de téléchargement d'image personnalisé dans WordPress, mais j'ai beaucoup de difficulté à traiter l'image une fois qu'elle a été téléchargée. En plus du téléchargement, j'ai besoin de redimensionner l'image pour utiliser une vignette. Chaque fois que j'essaie de travailler avec l'image téléchargée, j'obtiens une erreur d'être incapable de trouver le fichier (même si je peux le voir dans un navigateur et c'est clairement dans le répertoire). Les images sont 666 par défaut lorsqu'elles sont téléchargées, mais j'ai également essayé de manipuler une à 777 avec les mêmes résultats. La fonction de redimensionnement est appelée seule après le téléchargement de l'image. Voilà l'une des tentatives que j'ai fait:Champ de téléchargement d'image personnalisé dans WordPress
function resize_author_picture($filename) {
$filename = $_POST['file'];
$file = fopen($filename, 'r');
$data = fread($file);
fclose($file);
$dimensions = getimagesize($filename);
$dir = dirname($filename);
$crop = wp_crop_image($data, $dimensions[0], $dimensions[1], 0, 0, 250, 280, null, $dir."/image.jpg");
die("crop: ".var_dump($crop)." file: ".$filename." path: ".$dir."/image.jpg");
}
Ici, j'utilisé fopen() comme une deuxième tentative fournissant une fois juste le chemin de l'image ne fonctionne pas. Voici la tentative précédente:
function resize_author_picture($file) {
$file = $_POST['file'];
$dimensions = getimagesize($file);
$dir = dirname($file);
$crop = wp_crop_image($file, $dimensions[0], $dimensions[1], 0, 0, 250, 280, null, $dir."/image.jpg");
die("crop: ".var_dump($crop)." file: ".$file." path: ".$dir."/image.jpg");
}
Les deux renvoient un objet d'erreur WP dans ce sens:
string(123) "File <http://site.local/wp-content/uploads/2010/09/squares-wide.jpeg> doesn't exist?"
à court d'idées, toute entrée est appréciée!
Même avec la modification, ma réponse est toujours valide. Je l'ai mis à jour avec un exemple concret. –