Haandler Posted July 31, 2018 Share Posted July 31, 2018 Bonjour ! Je souhaite savoir comment retirer le numéro de téléphone des bons de livraison généré au format PDF ? En effet, quand un client commande, ce bon de livraison est généré et nous le mettons également sous enveloppe à fenêtre. Le problème c'est que le numéro vient s'ajouter en dessous de l'adresse et c'est pas nécessaire.. Dans PDF > dlivery-slip.adresses-tab.tpl j'ai uniquement {$delivery_address}. J'ai regardé dans les différents controller mais impossible de trouver dans lequel les informations son bouclées.. Merci de votre aide ! Link to comment Share on other sites More sharing options...
Eolia Posted July 31, 2018 Share Posted July 31, 2018 2 solutions: - soit vous les supprimez du format d'adresse dans localisation -> Pays -> France Soit vous rentrez la valeur en bdd (fonction écrite par Prestashop mais ils ont juste oublié de la rendre paramétrable) dans le champ PS_INVCE_DELIVERY_ADDR_RULES mais ca dépend des versions^^ Ce tableau étant utilisé dans la classe Addressformat, fonction generateAddress() : public static function generateAddress(Address $address, $patternRules = array(), $newLine = "\r\n", $separator = ' ', $style = array()) { $addressFields = AddressFormat::getOrderedAddressFields($address->id_country); $addressFormatedValues = AddressFormat::getFormattedAddressFieldsValues($address, $addressFields); $addressText = ''; foreach ($addressFields as $line) { if (($patternsList = preg_split(self::_CLEANING_REGEX_, $line, -1, PREG_SPLIT_NO_EMPTY))) { $tmpText = ''; foreach ($patternsList as $pattern) { if ((!array_key_exists('avoid', $patternRules)) || (is_array($patternRules) && array_key_exists('avoid', $patternRules) && !in_array($pattern, $patternRules['avoid']))) { $tmpText .= (isset($addressFormatedValues[$pattern]) && !empty($addressFormatedValues[$pattern])) ? (((isset($style[$pattern])) ? (sprintf($style[$pattern], $addressFormatedValues[$pattern])) : $addressFormatedValues[$pattern]).$separator) : ''; } } $tmpText = trim($tmpText); $addressText .= (!empty($tmpText)) ? $tmpText.$newLine: ''; } } $addressText = preg_replace('/'.preg_quote($newLine, '/').'$/i', '', $addressText); $addressText = rtrim($addressText, $separator); return $addressText; } Autrement vous devez remplacer array() par vos valeurs à échapper dans la ligne $formatted_delivery_address = AddressFormat::generateAddress($delivery_address, array(), '<br />', ' '); de HTMLTemplateDeliverySlip.php donc array() devient dans votre cas: array('avoid' => array('phone', 'phone_mobile')) $formatted_delivery_address = AddressFormat::generateAddress($delivery_address, array('avoid' => array('phone', 'phone_mobile')), '<br />', ' '); 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