Search the Community
Showing results for tags 'réassurance'.
-
salut , pourrais-je transformer les inputs du module bloc réassurance en une zone de text tinymce ? merci d'avance
-
Ce module prestashop (compatible 1.6 et 1.7) permet d'ajouter un certain nombre événements aux blocs de réassurance tels que : Un titre Une description Un lien (pouvant pointer vers un CMS) Une image Un effet d'affichage Et surtout, on peut positionner en ensemble de réassurance à des endroits de son choix comme on veut : Header Footer Home page Page produit Page panier Etc ..... En plus : Référencement la boutique. Les attributs "alt." et "title", des images sont mieux renseignés de sorte à mieux être indexés par les moteurs de recherche. Possibilité de customiser chaque élément à sa guise : Lien vers n’importe quel contenu du site, description, descriptif, texte du lien, etc, … Augmentation du taux de conversion sur votre boutique.
-
- réassurance avancée
- confiance client
-
(and 1 more)
Tagged with:
-
Hello I am trying to put the customer reassurance block to the top of my ordering page, so only people who go to the checkout see it. How is this done? I've been trying all sorts of positions, but none of them work. Is there some kind of code i need to add to allow the block to be hooked to specific positions? shotsglas.dk Thanks!
-
hi, i have ps theme with custom modules i want to edit a footer module, for implement second text, and modify the Configuration page at backoffice for adding text from it! can help me? look: http://tmp0000.anchinitendenze.it/ is the "reinsurance" module on footer where is written "Rimborso Garantito Sostituzione in-store Spedizione in 24 ore Free Shipping Processo di pagamento sicuro al 100%" i want to add a small paragraph for each one changing the php and tpl file of module can help me?
-
Saludos, Estoy modificando el diseño del módulo: Customer reassurance block para mostrar los últimos 5 artículos del blog. Lo suyo sería que me lo cogiera directamente del wordpress, pero me valdría si pudiera añadir al módulo dos campos para que desde el backoffice pudiera rellenarlos. Me gustaría que quedara de la siguiente forma: Título (no está contemplado en el módulo) Imágen (ya está incluído) -- Pongo la imagen de la portada del artículo Texto descriptivo (ya está incluído) --Pongo un resumén del artículo Enlace ver más (no esta inclído) -- Pongo el enlace que lleva al artículo Este es el código que viene por defecto. Que debería añadir para lo que comentado? <?php /* * 2007-2013 PrestaShop * * NOTICE OF LICENSE * * This source file is subject to the Academic Free License (AFL 3.0) * that is bundled with this package in the file LICENSE.txt. * It is also available through the world-wide-web at this URL: * http://opensource.org/licenses/afl-3.0.php * If you did not receive a copy of the license and are unable to * obtain it through the world-wide-web, please send an email * to [email protected] so we can send you a copy immediately. * * DISCLAIMER * * Do not edit or add to this file if you wish to upgrade PrestaShop to newer * versions in the future. If you wish to customize PrestaShop for your * needs please refer to http://www.prestashop.com for more information. * * @author PrestaShop SA <[email protected]> * @copyright 2007-2013 PrestaShop SA * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) * International Registered Trademark & Property of PrestaShop SA */ if (!defined('_CAN_LOAD_FILES_')) exit; include_once _PS_MODULE_DIR_.'blockreinsurance/reinsuranceClass.php'; class Blockreinsurance extends Module { public function __construct() { $this->name = 'blockreinsurance'; if (version_compare(_PS_VERSION_, '1.4.0.0') >= 0) $this->tab = 'front_office_features'; else $this->tab = 'Blocks'; $this->version = '2.0'; parent::__construct(); $this->displayName = $this->l('Customer reassurance block'); $this->description = $this->l('Adds an information block aimed at offering helpful information to reassure customers that your store is trustworthy.'); } public function install() { return parent::install() && $this->installDB() && Configuration::updateValue('blockreinsurance_nbblocks', 5) && $this->registerHook('footer') && $this->installFixtures(); } public function installDB() { $return = true; $return &= Db::getInstance()->execute(' CREATE TABLE IF NOT EXISTS `'._DB_PREFIX_.'reinsurance` ( `id_reinsurance` INT UNSIGNED NOT NULL AUTO_INCREMENT, `id_shop` int(10) unsigned NOT NULL , `file_name` VARCHAR(100) NOT NULL, PRIMARY KEY (`id_reinsurance`) ) ENGINE='._MYSQL_ENGINE_.' DEFAULT CHARSET=utf8 ;'); $return &= Db::getInstance()->execute(' CREATE TABLE IF NOT EXISTS `'._DB_PREFIX_.'reinsurance_lang` ( `id_reinsurance` INT UNSIGNED NOT NULL AUTO_INCREMENT, `id_lang` int(10) unsigned NOT NULL , `text` VARCHAR(300) NOT NULL, PRIMARY KEY (`id_reinsurance`, `id_lang`) ) ENGINE='._MYSQL_ENGINE_.' DEFAULT CHARSET=utf8 ;'); return $return; } public function uninstall() { // Delete configuration return Configuration::deleteByName('blockreinsurance_nbblocks') && $this->uninstallDB() && parent::uninstall(); } public function uninstallDB() { return Db::getInstance()->execute('DROP TABLE IF EXISTS `'._DB_PREFIX_.'reinsurance`') && Db::getInstance()->execute('DROP TABLE IF EXISTS `'._DB_PREFIX_.'reinsurance_lang`'); } public function addToDB() { if (isset($_POST['nbblocks'])) { for ($i = 1; $i <= (int)$_POST['nbblocks']; $i++) { $filename = explode('.', $_FILES['info'.$i.'_file']['name']); if (isset($_FILES['info'.$i.'_file']) && isset($_FILES['info'.$i.'_file']['tmp_name']) && !empty($_FILES['info'.$i.'_file']['tmp_name'])) { if ($error = ImageManager::validateUpload($_FILES['info'.$i.'_file'])) return false; elseif (!($tmpName = tempnam(_PS_TMP_IMG_DIR_, 'PS')) || !move_uploaded_file($_FILES['info'.$i.'_file']['tmp_name'], $tmpName)) return false; elseif (!ImageManager::resize($tmpName, dirname(__FILE__).'/img/'.$filename[0].'.jpg')) return false; unlink($tmpName); } Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'reinsurance` (`filename`,`text`) VALUES ("'.((isset($filename[0]) && $filename[0] != '') ? pSQL($filename[0]) : ''). '", "'.((isset($_POST['info'.$i.'_text']) && $_POST['info'.$i.'_text'] != '') ? pSQL($_POST['info'.$i.'_text']) : '').'")'); } return true; } else return false; } public function removeFromDB() { $dir = opendir(dirname(__FILE__).'/img'); while (false !== ($file = readdir($dir))) { $path = dirname(__FILE__).'/img/'.$file; if ($file != '..' && $file != '.' && !is_dir($file)) unlink($path); } closedir($dir); return Db::getInstance()->execute('DELETE FROM `'._DB_PREFIX_.'reinsurance`'); } public function getContent() { $html = ''; $id_reinsurance = (int)Tools::getValue('id_reinsurance'); if (Tools::isSubmit('saveblockreinsurance')) { if ($id_reinsurance = Tools::getValue('id_reinsurance')) $reinsurance = new reinsuranceClass((int)$id_reinsurance); else $reinsurance = new reinsuranceClass(); $reinsurance->copyFromPost(); $reinsurance->id_shop = $this->context->shop->id; if ($reinsurance->validateFields(false) && $reinsurance->validateFieldsLang(false)) { $reinsurance->save(); if (isset($_FILES['image']) && isset($_FILES['image']['tmp_name']) && !empty($_FILES['image']['tmp_name'])) { if ($error = ImageManager::validateUpload($_FILES['image'])) return false; elseif (!($tmpName = tempnam(_PS_TMP_IMG_DIR_, 'PS')) || !move_uploaded_file($_FILES['image']['tmp_name'], $tmpName)) return false; elseif (!ImageManager::resize($tmpName, dirname(__FILE__).'/img/reinsurance-'.(int)$reinsurance->id.'-'.(int)$reinsurance->id_shop.'.jpg')) return false; unlink($tmpName); $reinsurance->file_name = 'reinsurance-'.(int)$reinsurance->id.'-'.(int)$reinsurance->id_shop.'.jpg'; $reinsurance->save(); } $this->_clearCache('blockreinsurance.tpl'); } else $html .= '<div class="conf error">'.$this->l('An error occurred while attempting to save.').'</div>'; } if (Tools::isSubmit('updateblockreinsurance') || Tools::isSubmit('addblockreinsurance')) { $helper = $this->initForm(); foreach (Language::getLanguages(false) as $lang) if ($id_reinsurance) { $reinsurance = new reinsuranceClass((int)$id_reinsurance); $helper->fields_value['text'][(int)$lang['id_lang']] = $reinsurance->text[(int)$lang['id_lang']]; } else $helper->fields_value['text'][(int)$lang['id_lang']] = Tools::getValue('text_'.(int)$lang['id_lang'], ''); if ($id_reinsurance = Tools::getValue('id_reinsurance')) { $this->fields_form[0]['form']['input'][] = array('type' => 'hidden', 'name' => 'id_reinsurance'); $helper->fields_value['id_reinsurance'] = (int)$id_reinsurance; } return $html.$helper->generateForm($this->fields_form); } else if (Tools::isSubmit('deleteblockreinsurance')) { $reinsurance = new reinsuranceClass((int)$id_reinsurance); if (file_exists(dirname(__FILE__).'/img/'.$reinsurance->file_name)) unlink(dirname(__FILE__).'/img/'.$reinsurance->file_name); $reinsurance->delete(); $this->_clearCache('blockreinsurance.tpl'); Tools::redirectAdmin(AdminController::$currentIndex.'&configure='.$this->name.'&token='.Tools::getAdminTokenLite('AdminModules')); } else { $helper = $this->initList(); return $html.$helper->generateList($this->getListContent((int)Configuration::get('PS_LANG_DEFAULT')), $this->fields_list); } if (isset($_POST['submitModule'])) { Configuration::updateValue('blockreinsurance_nbblocks', ((isset($_POST['nbblocks']) && $_POST['nbblocks'] != '') ? (int)$_POST['nbblocks'] : '')); if ($this->removeFromDB() && $this->addToDB()) { $this->_clearCache('blockreinsurance.tpl'); $output = '<div class="conf confirm">'.$this->l('The block configuration has been updated.').'</div>'; } else $output = '<div class="conf error"><img src="../img/admin/disabled.gif"/>'.$this->l('An error occurred while attempting to save.').'</div>'; } } protected function getListContent($id_lang) { return Db::getInstance()->executeS(' SELECT r.`id_reinsurance`, r.`id_shop`, r.`file_name`, rl.`text` FROM `'._DB_PREFIX_.'reinsurance` r LEFT JOIN `'._DB_PREFIX_.'reinsurance_lang` rl ON (r.`id_reinsurance` = rl.`id_reinsurance`) WHERE `id_lang` = '.(int)$id_lang.' '.Shop::addSqlRestrictionOnLang()); } protected function initForm() { $default_lang = (int)Configuration::get('PS_LANG_DEFAULT'); $this->fields_form[0]['form'] = array( 'legend' => array( 'title' => $this->l('New reassurance block.'), ), 'input' => array( array( 'type' => 'file', 'label' => $this->l('Image:'), 'name' => 'image', 'value' => true ), array( 'type' => 'textarea', 'label' => $this->l('Text:'), 'lang' => true, 'name' => 'text', 'cols' => 40, 'rows' => 10 ) ), 'submit' => array( 'title' => $this->l('Save'), 'class' => 'button' ) ); $helper = new HelperForm(); $helper->module = $this; $helper->name_controller = 'blockreinsurance'; $helper->identifier = $this->identifier; $helper->token = Tools::getAdminTokenLite('AdminModules'); foreach (Language::getLanguages(false) as $lang) $helper->languages[] = array( 'id_lang' => $lang['id_lang'], 'iso_code' => $lang['iso_code'], 'name' => $lang['name'], 'is_default' => ($default_lang == $lang['id_lang'] ? 1 : 0) ); $helper->currentIndex = AdminController::$currentIndex.'&configure='.$this->name; $helper->default_form_language = $default_lang; $helper->allow_employee_form_lang = $default_lang; $helper->toolbar_scroll = true; $helper->title = $this->displayName; $helper->submit_action = 'saveblockreinsurance'; $helper->toolbar_btn = array( 'save' => array( 'desc' => $this->l('Save'), 'href' => AdminController::$currentIndex.'&configure='.$this->name.'&save'.$this->name.'&token='.Tools::getAdminTokenLite('AdminModules'), ), 'back' => array( 'href' => AdminController::$currentIndex.'&configure='.$this->name.'&token='.Tools::getAdminTokenLite('AdminModules'), 'desc' => $this->l('Back to list') ) ); return $helper; } protected function initList() { $this->fields_list = array( 'id_reinsurance' => array( 'title' => $this->l('Id'), 'width' => 120, 'type' => 'text', ), 'text' => array( 'title' => $this->l('Text'), 'width' => 140, 'type' => 'text', 'filter_key' => 'a!lastname' ), ); if (Shop::isFeatureActive()) $this->fields_list['id_shop'] = array('title' => $this->l('ID Shop'), 'align' => 'center', 'width' => 25, 'type' => 'int'); $helper = new HelperList(); $helper->shopLinkType = ''; $helper->simple_header = true; $helper->identifier = 'id_reinsurance'; $helper->actions = array('edit', 'delete'); $helper->show_toolbar = true; $helper->imageType = 'jpg'; $helper->toolbar_btn['new'] = array( 'href' => AdminController::$currentIndex.'&configure='.$this->name.'&add'.$this->name.'&token='.Tools::getAdminTokenLite('AdminModules'), 'desc' => $this->l('Add new') ); $helper->title = $this->displayName; $helper->table = $this->name; $helper->token = Tools::getAdminTokenLite('AdminModules'); $helper->currentIndex = AdminController::$currentIndex.'&configure='.$this->name; return $helper; } public function hookHome($params) { // Check if not a mobile theme if ($this->context->getMobileDevice() != false) return false; $this->context->controller->addCSS($this->_path.'style.css', 'all'); if (!$this->isCached('blockreinsurance.tpl', $this->getCacheId())) { $infos = $this->getListContent($this->context->language->id); $this->context->smarty->assign(array('infos' => $infos, 'nbblocks' => count($infos))); } return $this->display(__FILE__, 'blockreinsurance.tpl', $this->getCacheId()); } public function installFixtures() { $return = true; $tab_texts = array( array('text' => $this->l('Money back guarantee.'), 'file_name' => 'reinsurance-1-1.jpg'), array('text' => $this->l('In-store exchange.'), 'file_name' => 'reinsurance-2-1.jpg'), array('text' => $this->l('Payment upon shipment.'), 'file_name' => 'reinsurance-3-1.jpg'), array('text' => $this->l('Free Shipping.'), 'file_name' => 'reinsurance-4-1.jpg'), array('text' => $this->l('100% secure payment processing.'), 'file_name' => 'reinsurance-5-1.jpg') ); foreach($tab_texts as $tab) { $reinsurance = new reinsuranceClass(); foreach (Language::getLanguages(false) as $lang) $reinsurance->text[$lang['id_lang']] = $tab['text']; $reinsurance->file_name = $tab['file_name']; $reinsurance->id_shop = $this->context->shop->id; $return &= $reinsurance->save(); } return $return; } }
-
Bonjour, Le bloc réassurance semble pouvoir s'afficher à divers endroits dans le footer. Par défaut, il apparait au sommet du footer. Il peut apparaitre aussi n'importe où dans le footer, en particulier lorsqu'on le greffe sur un footer déjà en place. Comment positionner exactement le bloc réassurance à un endroit précis dans le footer - par exemple en bas du footer plutôt qu'en haut ? Un visuel. Merci
-
- reassurance
- reinsurance
-
(and 3 more)
Tagged with:
-
Bonjour à tous. J'aimerai changer les images du block réassurance, ce que j'arrive à faire très bien, toutefois j'aimerai changer ces petite images par a peu près les mêmes (par exemple une horloge et non pas un smiley qui sourit etc.) et je ne trouve pas des équivalent sur les sites de prestashop, pensez vous que je dois en créer moi même (avec photoshop etc.) ou bien je peu en trouver via prestashop?