Bug d’upload d’image avec le Wysiwyg sur Magento 1.4

Blog de l'équipe Magento

L’ajout d’image avec le wysiwyg de Magento 1.4 pose problème. Magento affiche ce code : /cms_wysiwyg/directive/___directive/ pour l’appel des images.

Initialement, l’ajout d’image fonctionne parfaitement bien dans le CMS mais pas depuis la fiche d’un produit, l’url qu’il ajoute est une url d’administration temporaire.

Prendre le fichier app/code/core/Mage/Cms/Helper/Wysiwyg/Images.php
Le copier dans  app/code/local/Mage/Cms/Helper/Wysiwyg/Images.php, pour éviter que le fichier soit écrasé lors de la mise à jour

Il faut remplacer la fonction getImageHtmlDeclaration par celle-ci :

public function getImageHtmlDeclaration($filename, $asIs = false)
    {
        $fileurl = $this->getCurrentUrl() . $filename;
$mediaPath = str_replace(Mage::getBaseUrl('media'), '', $fileurl);
$directive = sprintf('{{media url="%s"}}', $mediaPath);
$directive = $fileurl;
if ($asIs) {
$html = sprintf('', $directive);
} else {
$html = $directive;
// $directive = Mage::helper('core')->urlEncode($directive);
// $html = Mage::helper('adminhtml')->getUrl('*/cms_wysiwyg/directive', array('___directive' => $directive));
}
return $html;
    }
Cédric
co-fondateur de l'agence
Voir les articles de Cédric