Jump to content

[Prestashop 1.7.6.4] checkout_session_data


Recommended Posts

Oui, c'est le dernier champ de la table

Si je dump la variable, j'obtiens ce code

array:1 [
  0 => array:1 [
    "checkout_session_data" => "{"checkout-personal-information-step":{"step_is_reachable":true,"step_is_complete":true},"checkout-addresses-step":{"step_is_reachable":true,"step_is_complete":true,"use_same_address":true},"checkout-delivery-step":{"step_is_reachable":true,"step_is_complete":false},"checkout-payment-step":{"step_is_reachable":false,"step_is_complete":false},"checksum":"e9e39f0e030766d389993757a57dd334017fc7fc"}"
  ]
]

 

Link to comment
Share on other sites

Merci pour ton aide, mais les données rapportées dans $this->context->cart ne comprennent pas le champ checkout_session_data, donc je vais tenter de créer un hook.

Mais comme c'est pas un jour avec, bah ça fonctionne pas 😡

Dans la fonction install de mon module j'ai enregistré mon hook ! $this -> registerHook ( 'displayPersoContact' )

Dans le même fichier j'ai créer la fonction public hookDisplayPersoContact (){...}

J'ai ensuite dans le dossier views/templates/hook j'ai créer un fichier displayPersoContact.tpl

En dans mon theme enfant j'ai ajouté { hook h = 'displayPersoContact' mod='nb_persoContact'}

Ensuite j'ai réinstallé mon module et vérifié dans position que nom module est bien greffé et vlannnnn rien sur ma page !!!

Pourtant les tutos que j'ai consulté n'indique pas d'autre action à effectuer. Je craque

 

Merci en tout cas pour votre aide

Link to comment
Share on other sites

cache désactivé et force recompile templates en place.

Voici ma function :

    /**
     * @param array $params
     * @return string
     */
    public function hookDisplayAdherentActif($params)
    {
        $this->context = Context::getContext();
        // Récupération id du customer
        $id_customer = $this->context->customer->id;
        // Récupération date de fin adhesion
        $DateFinAdhesion = Db::getInstance()->ExecuteS("SELECT date_fin FROM "._DB_PREFIX_."adherent WHERE id_customer = ".$id_customer);

        if(isset($DateFinAdhesion)) {
            $this->context->smarty->assign([
                'DateFinAdhesion' => $DateFinAdhesion
            ]);
        } else {
            $this->context->smarty->assign([
                'DateFinAdhesion' => 'toto'
            ]);
        }

        return $this->display(__FILE__, '/views/templates/hook/displayAdherentActif.tpl');
    }

Dans le fichier displayAdherentActif.tpl

    <div class="card-block">
        {$DateFinAdhesion}
    </div>

Et dans le theme enfant =

    {block name='hook_display_adherent_actif'}
        {hook h='displayAdherentActif' mod='nb_clientadherent'}
    {/block}

 

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...