lolymeupy Posted October 29, 2010 Share Posted October 29, 2010 Bonjour, :-) j'ai dupliqué le module Blockadvertising (en suivant les nombreux Posts qui traitent du sujet)Et donc, j'ai bien un nouveau bloc Publicité, qui apparait bien dans le BO, et que je peux déplacer sans problème.Mais j'ai un souci au niveau du lien de l'image.En effet, quand je ma modifie dans l'un des mes 2 blocs Publicité, elle est automatiquement recopié dans l'autre ? :-S Et je ne vois pas à quel niveau du code cela se joue...Je colle ici le code des 2 fichiers .tpl et .php du second module :Fichier blockadvertising2.php : <?php class BlockAdvertising2 extends Module { public $adv_link; public $adv_img; public $adv_imgname; function __construct() { $this->name = 'blockadvertising2'; $this->tab = 'Blocks'; $this->version = 0.1; parent::__construct(); $this->displayName = $this->l('Block advertising2'); $this->description = $this->l('Adds a block to display an advertising'); $this->adv_imgname = 'advertising_custom.jpg'; if (!file_exists(dirname(__FILE__).'/'.$this->adv_imgname)) $this->adv_img = _MODULE_DIR_.$this->name.'/advertising.jpg'; else $this->adv_img = _MODULE_DIR_.$this->name.'/'.$this->adv_imgname; $this->adv_link = htmlentities(Configuration::get('BLOCKADVERT_LINK'), ENT_QUOTES, 'UTF-8'); } function install() { Configuration::updateValue('BLOCKADVERT_LINK', 'http://www.prestashop.com'); if (!parent::install()) return false; if (!$this->registerHook('rightColumn') OR !$this->registerHook('leftColumn')) return false; return true; } public function postProcess() { global $currentIndex; $errors = false; if (Tools::isSubmit('submitAdvConf')) { $file = false; if (isset($_FILES['adv_img']) AND isset($_FILES['adv_img']['tmp_name']) AND !empty($_FILES['adv_img']['tmp_name'])) { if ($error = checkImage($_FILES['adv_img'], 4000000)) $errors .= $error; elseif (!move_uploaded_file($_FILES['adv_img']['tmp_name'], dirname(__FILE__).'/'.$this->adv_imgname)) $errors .= $this->l('Error move uploaded file'); $this->adv_img = _MODULE_DIR_.$this->name.'/'.$this->adv_imgname; } if ($link = Tools::getValue('adv_link')) { Configuration::updateValue('BLOCKADVERT_LINK', $link); $this->adv_link = htmlentities($link, ENT_QUOTES, 'UTF-8'); } } if ($errors) echo $this->displayError($errors); } public function getContent() { $this->postProcess(); echo ' <form action="'.$_SERVER['REQUEST_URI'].'" method="post" enctype="multipart/form-data"> '.$this->l('Advertising block configuration').' adv_link.'" target="_blank" title="'.$this->l('Advertising').'">'; if ($this->adv_img) echo 'adv_img.'" alt="'.$this->l('Advertising image').'" style="margin-left: 100px;"/>'; else echo $this->l('no image'); echo ' '.$this->l('Change image').' <input id="adv_img" type="file" name="adv_img" /> '.$this->l('Image link').' <input id="adv_link" type="text" name="adv_link" value="'.$this->adv_link.'" /> <input class="button" type="submit" name="submitAdvConf" value="'.$this->l('validate').'" style="margin-left: 200px;"/> </form> '; } /** * Returns module content * * @param array $params Parameters * @return string Content */ function hookRightColumn($params) { global $smarty, $protocol_content, $server_host; $smarty->assign('image', $protocol_content.$server_host.$this->adv_img); $smarty->assign('adv_link', $this->adv_link); return $this->display(__FILE__, 'blockadvertising2.tpl'); } function hookLeftColumn($params) { return $this->hookRightColumn($params); } } ?> Fichier blockadvertising2.tpl : <!-- MODULE Block advertising2 --> <!-- /MODULE Block advertising2 --> J'ai l'impression que ça se joue au niveau du 'BLOCKADVERT_LINK', mais je ne sais même pas où cela se "gère" ...Merci de votre aide. Link to comment Share on other sites More sharing options...
lolymeupy Posted October 29, 2010 Author Share Posted October 29, 2010 Ok,n'ayant pas de réponse et ne trouvant ps par moi-même, je me suis aventuré sur le forum anglophone ;-P Et j'y ai trouvé mon bonheur :http://www.prestashop.com/forums/viewthread/71031/configuring___using_prestashop/link_issue_when_having_4_block_advertisingDonc autant pour moi :red: Ca m'a permis d'apprendre encore quelques petites choses sur le fonctionnement de PS. 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