Chrisdooweet Posted January 29, 2013 Share Posted January 29, 2013 Bonjour à tous, Je me prépare à lancer mon site http://dooweet-records.com/index.php J'ai un gros souci avec l'un des modules : celui en page d'accueil, "NEWS PRODUCT". J'ai bien édité la taille de l'image dans l'administration du module (que j'ai mis à max 150px par 150px), mais rien n'a changé et l'image est toujours "écrasée". Comment puis-je changer la largeur de chaque "nouveau produit" s'il vous plait, afin d'avoir une pochette d'album carrée et non écrasée ? Merci Link to comment Share on other sites More sharing options...
be_tnt Posted January 29, 2013 Share Posted January 29, 2013 (edited) Bonjour, Je suppose que tu as modifié la taille des images dans préférences->image? Si c'est le cas, sache que tu dois créer un type d'image avec ton nom de thème. Si je regarde le tpl dans le module, il utilise le type medium. Tu dois donc avoir un type d'image appelé medium_{nom de ton thème} ou {nom de ton thème}_medium. Là où cela se corse, c'est qu'il y a 2 bugs dans la classe ImageType: 1. le champ 'name' pour un type d'image est trop petit. Pour ma part, je l'ai augmenté à 85 (il était à 16). Il te faut pour cela overrider la variable $definition et aussi modifier la table ImageType. 2. la fonction qui récupère le nom du type d'image devrait retourner les valeurs par défaut (et donc dans ton cas, le type = medium_default) mais ce n'est pas le cas. Tu dois là aussi overrider la fonction getFormatedName Cela donne pour l'override de la classe ImageType: class ImageType extends ImageTypeCore { /** * @see ObjectModel::$definition */ public static $definition = array( 'table' => 'image_type', 'primary' => 'id_image_type', 'fields' => array( 'name' => array('type' => self::TYPE_STRING, 'validate' => 'isImageTypeName', 'required' => true, 'size' => 85), 'width' => array('type' => self::TYPE_INT, 'validate' => 'isImageSize', 'required' => true), 'height' => array('type' => self::TYPE_INT, 'validate' => 'isImageSize', 'required' => true), 'categories' => array('type' => self::TYPE_BOOL, 'validate' => 'isBool'), 'products' => array('type' => self::TYPE_BOOL, 'validate' => 'isBool'), 'manufacturers' => array('type' => self::TYPE_BOOL, 'validate' => 'isBool'), 'suppliers' => array('type' => self::TYPE_BOOL, 'validate' => 'isBool'), 'scenes' => array('type' => self::TYPE_BOOL, 'validate' => 'isBool'), 'stores' => array('type' => self::TYPE_BOOL, 'validate' => 'isBool'), ), ); public static function getFormatedName($name) { $theme_name = Context::getContext()->shop->theme_name; $name_without_theme_name = str_replace(array('_'.$theme_name, $theme_name.'_'), '', $name); //check if the theme name is already in $name if yes only return $name if (strstr($name, $theme_name) && self::getByNameNType($name)) return $name; else if (self::getByNameNType($name_without_theme_name.'_'.$theme_name)) return $name_without_theme_name.'_'.$theme_name; else if (self::getByNameNType($theme_name.'_'.$name_without_theme_name)) return $theme_name.'_'.$name_without_theme_name; else return $name_without_theme_name.'_default'; } } Maintenant si tu n'es pas à l'aise avec la modification de la db, tu peux juste overrider la fonction getFormatedName et utiliser les types _default pour ajuster la taille de tes images. Voilà j'espère que cela solutionnera ton problème Edited January 29, 2013 by be_tnt (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now