Alexandre Carette Posted March 28, 2017 Share Posted March 28, 2017 (edited) Bonjour, j'avais besoin de restreindre les commandes par codes postaux... 1) en bdd on crée une nouvelle table ps_pincode_restriction-colonne 1 // id --> INT(11)-colonne 2 // zip_code --> INT(11) 2) on crée un override de la classe Address.php pour y ajouter une nouvelle fonction <?php /** * 2007-2016 PrestaShop * * NOTICE OF LICENSE * * This source file is subject to the Open Software License (OSL 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/osl-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-2016 PrestaShop SA * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) * International Registered Trademark & Property of PrestaShop SA */ class Address extends AddressCore { public static function checkzip($zip_code) { $sql = new DbQuery(); $sql->select('zip_code'); $sql->from('pincode_restriction'); $sql->where('zip_code = '.(int)$zip_code); $result = Db::getInstance()->executeS($sql); if( $result ){ $result = true; }else{ $result = false; } return $result; } } dans le tpl du theme (order_opc.tpl pour ma part) on crée un assign smarty (qui appelle la fonction) et une condition pour afficher ou non les tpl carrier et paiement: {assign var=checkzip value=Address::checkzip($addresses[0].postcode)} {if $checkzip == true} {include file="$tpl_dir./order-carrier.tpl"} {include file="$tpl_dir./order-payment.tpl"} {else} We can't ship your product ! {/if} Edited March 28, 2017 by Alexandre Carette (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