Configuration des zones

  • Posts: 361
  • Thank you received: 28
  • Hikashop Multisite
1 year 2 months ago #355072

Bonjour,
J'ai un peu de mal à comprendre comment configurer des zones pour la livraison.

J'ai besoin de configurer des zones par districts. Dans chaque district, j'ai des communes.
Le but est d'utiliser les communes dans le passage en caisse pour calculer le prix de livraison. Le prix de livraison se fera en fonction du district.

Pourriez vous m'éclairer sur la manière de procéder ?
J'imagine que je dois créer un type de zone "District" (mais je ne vois pas comment) ou utiliser les existants et ensuite créer les communes associées à chaque districts ?

Et second point, est-il possible d'uploader une liste des communes directement ?


“Si tu ne travaille pas pour tes rêves, quelqu'un t'embauchera pour travailler pour les siens" - Steeve Jobs
"La sagesse, c’est d’avoir des rêves suffisamment grands pour ne pas les perdre de vue quand on les poursuit." - Oscar Wilde

Please Log in or Create an account to join the conversation.

  • Posts: 4747
  • Thank you received: 644
  • MODERATOR
1 year 2 months ago #355075

Bonjour,

Le plus simple va être de crée des zones shipping comme montrer dans ma screenshot :
Dans HikaShop Configuration sur System dropdown => Zones



Puis un Address Custom field :
Dans HikaShop Configuration sur Display dropdown => Custom field


Maintenant pour ajouter plusieurs zone en même temps, cela sera possible directement dans PhpMyAdmin.
Etapes par étapes :
1. Nous suggérons de créer d'abord 1 ou 2 zone pour servir de modéle
2. Faire un export dans votre table "XXXX_hikashop_zone"
3. Editez votre fichier CSV obtenu pour ajouter en reprenant donc le modéle des 2 autres zones présentes
4. Fait un Import de ce fichier éditer avec vos nouvelles zones

En espérant que cela vous aide
Cordialement

Last edit: 1 year 2 months ago by Philip.

Please Log in or Create an account to join the conversation.

  • Posts: 361
  • Thank you received: 28
  • Hikashop Multisite
1 year 2 months ago #355124

Bonjour, ok merci, mais je ne suis pas sur de comprend pas comment ajouter des prix par district.
Mon idée était de configurer des districts en y attribuant des communes. Puis de configurer un frais de livraison pour le district 1, idem pour le 2, etc.

Donc si je comprend, ça veut dire que dans les frais de livraison, je dois créer chaque district et ensuite dans le champs zone, je mets les communes concernées par ce district, c'est bien cela ?

Et pour la partie champ perso c'est le champ district (qui en fait va s'appeler commune) qui permet de choisir la zone (donc la commune) qui est affectée à mon groupement, donc mon district, qui gère les frais de livraison ?


“Si tu ne travaille pas pour tes rêves, quelqu'un t'embauchera pour travailler pour les siens" - Steeve Jobs
"La sagesse, c’est d’avoir des rêves suffisamment grands pour ne pas les perdre de vue quand on les poursuit." - Oscar Wilde

Please Log in or Create an account to join the conversation.

  • Posts: 361
  • Thank you received: 28
  • Hikashop Multisite
1 year 2 months ago #355126

Pour l'import, j'ajoute donc ma liste en dessous des derniers. Mais je vois qu'il crée une zone namekey, dois-je reproduire ça sur mes imports ?


“Si tu ne travaille pas pour tes rêves, quelqu'un t'embauchera pour travailler pour les siens" - Steeve Jobs
"La sagesse, c’est d’avoir des rêves suffisamment grands pour ne pas les perdre de vue quand on les poursuit." - Oscar Wilde
Attachments:
Last edit: 1 year 2 months ago by thefbi.

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
1 year 2 months ago #355125

Bonjour,

Lorsque vous créez des méthodes de livraison de type "manual" dans HikaShop, vous pouvez les restreindre en fonction: du poids, du volume, de la zone sélectionnée (dans address_state ou address_country), du groupe utilisateur, ou en fonction du code postal.

Si vous créez un champ address_district, comme le suggérait Philippe, vous n'avez alors aucun moyen de limiter les méthodes de livraison en fonction de ce qui est sélectionné dans ce champ, et donc vous ne pouvez pas configurer différents tarifs pour différentes valeurs de ce champ.

Normalement, une commune a un code postal. Donc, normalement, il n'y a pas besoin de configurer des zones pour vos districts puisqu'ils sont des regroupement de communes, d'après ce que vous dites. Ainsi, avec le champ "Regex Code Postal" de vos méthodes de livraison, vous pouvez limiter la méthode de livraison à un district en y renseignant les code postaux à prendre en compte.
Par exemple, si vous configurez le regex

^(69000|69001|69002|69003|69004|69005|69006|69007|69008|69009|69100)$
dans une méthode de livraison, alors cette méthode de livraison (avec son prix associé) ne sera disponible durant que le passage en caisse que si l'utilisateur renseigne l'un de ces codes postaux (ce sont les codes postaux des arrondissements de Lyon et de Villeurbanne, en France).

Alternativement, vous pourriez créer des zones de type "state" à la place des départements/provinces actuellement pour votre pays pour permettre à l'utilisateur de sélectionner ces states propre à votre situation.
Ensuite, vous pourriez utiliser l'option "zone" de vos méthodes de livraison pour les limiter en fonction de ces zones.
Notez cependant que faire cela peut avoir des conséquences négatives. En effet, certains plugins de paiement vont utiliser la valeur renseigné par l'utilisateur dans address_state. Et si cela ne correspond pas à la réalité, par exemple aux Etats Unis, la sélection de l'état est quelque chose d'important, et est souvent relayée à la plateforme de paiement.
Alors qu'avec l'utilisation des codes postaux, c'est le fonctionnement standard et il n'y aura pas ce genre de problème potentiel.

Please Log in or Create an account to join the conversation.

  • Posts: 361
  • Thank you received: 28
  • Hikashop Multisite
1 year 2 months ago #355157

Bonjour,
OK, donc je peut effectivement oublié la configuration de zones, et simplement utiliser la fonction regex comme vous le suggérez ?

Effectivement, les districts sont des groupements de communes avec des codes postaux.
Donc en fait je reprend votre exemple, je change les codes postaux en fonction de la zone (du district) en créant le mode de livraison ?

J'imagine que le mode prend en compte l'adresse de livraison au niveau du code postal et non l'adresse de facturation ?


“Si tu ne travaille pas pour tes rêves, quelqu'un t'embauchera pour travailler pour les siens" - Steeve Jobs
"La sagesse, c’est d’avoir des rêves suffisamment grands pour ne pas les perdre de vue quand on les poursuit." - Oscar Wilde
Last edit: 1 year 2 months ago by thefbi.

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
1 year 2 months ago #355160

Bonjour,

Donc en fait je reprend votre exemple, je change les codes postaux en fonction de la zone (du district) en créant le mode de livraison ?

Tout à fait.

J'imagine que le mode prend en compte l'adresse de livraison au niveau du code postal et non l'adresse de facturation ?

Tout à fait.

Please Log in or Create an account to join the conversation.

  • Posts: 361
  • Thank you received: 28
  • Hikashop Multisite
1 year 1 month ago #355672

Bonjour,
Je suis en train de tester avec les regex mais ça ne fonctionne pas, ou alors j'ai raté un truc.
Voici un exemple pour le district de Lausanne :

^(1092|1033|1023|1066|1008|1000|1052|1094|1008|1009|1020|1032|1001|1002|1003|1004|1005|1006|1007|1010|1011|1012|1014|1018|1023|1032|1033|1052|1053)$

J'ai créé une méthode de livraison manuelle, avec un prix et le code dans le champs Post code RegEx.

Si je tente une commande et que je mets 1004 dans le champ code postale, j'ai le message "pas de méthode de livraison disponible".


“Si tu ne travaille pas pour tes rêves, quelqu'un t'embauchera pour travailler pour les siens" - Steeve Jobs
"La sagesse, c’est d’avoir des rêves suffisamment grands pour ne pas les perdre de vue quand on les poursuit." - Oscar Wilde
Attachments:

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
1 year 1 month ago #355713

Bonjour,

Il faut rajouter des délimiteurs au regex. Par exemple :

#^(1092|1033|1023|1066|1008|1000|1052|1094|1008|1009|1020|1032|1001|1002|1003|1004|1005|1006|1007|1010|1011|1012|1014|1018|1023|1032|1033|1052|1053)$#
www.php.net/manual/en/regexp.reference.delimiters.php
Cela permet de rajouter des pattern modifiers, genre i (pour case insensitive):
www.php.net/manual/en/reference.pcre.pattern.modifiers.php

Please Log in or Create an account to join the conversation.

  • Posts: 361
  • Thank you received: 28
  • Hikashop Multisite
1 year 1 month ago #355720

Hello,
OK, oui comme ça ça fonctionne, merci.


“Si tu ne travaille pas pour tes rêves, quelqu'un t'embauchera pour travailler pour les siens" - Steeve Jobs
"La sagesse, c’est d’avoir des rêves suffisamment grands pour ne pas les perdre de vue quand on les poursuit." - Oscar Wilde
The following user(s) said Thank You: Philip

Please Log in or Create an account to join the conversation.

Time to create page: 0.094 seconds
Powered by Kunena Forum