- Posts: 181
- Thank you received: 0
Mise en page de Champs personalisée
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.
if(!empty($this->itemFields)){
qu'il fallait remplacée par:
if(in_array($this->element->main->product_code,array('Calendrier_de_poche_3','Calendrier_de_poche_2','Calendrier_de_poche_1')) && !empty($this->itemFields)){
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.
foreach($this->itemFields as $fieldName => $oneExtraField) {
par quelque chose comme cela:
foreach($this->itemFields as $fieldName => $oneExtraField) { if(!in_array($this->element->main->product_code,array('Calendrier_de_poche_3','Calendrier_de_poche_2','Calendrier_de_poche_1')) && $fieldName="my_field") continue;
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.
foreach($this->itemFields as $fieldName => $oneExtraField) { if($this->element->main->product_code=='Calendrier_de_poche_2'){continue;}
Please Log in or Create an account to join the conversation.
- Posts: 37
- Thank you received: 0
Je suis en train d'essayer mais quelques questions se posent a moi.
L'objectif: Avoir un champ perso sur 1 seul produit qui permette a l'internaute d'envoyer une image pour personnaliser le produit qu'il achete.
J'ai suivi ces consignes:
nicolas wrote:
Pas avec les options actuelles. Il faudra donc éditer le fichier show de la vue product et changer la ligne:
<?php if(!empty($this->fields)){?>
en:
<?php if($this->element->product_code=='produit_avec_champs' && !empty($this->fields)){?>
en prennant soin de remplacer produit_avec_champs par le code du produit sur lequel vous voulez les champs personnalisés.
Il faudra également que les champs ne soit pas requis.
Dans mon fichier show.php je trouve 2 fois le code:
Dois je le remplacer au 2 endroits?
Et lorsque je le remplace par:
Et bien sur le FO rien ne change j'ai toujours le champ d'upload sur toutes mes fiches produits, et si je ré-ouvre le fichier show.php, il n'a pas enregistré mes précédentes modifications.
Je n'ai pas oublié de remplacer "produit_avec_champs" par le code du produit sur lequel je voudrais voir mon champ d'upload.
Est ce que j'ai oublié quelque chose?
Si besoin vos id/mdp sont toujours actif sur le site.
Please Log in or Create an account to join the conversation.
Dans ce cas, il faut vérifier qu'hikashop puisse écrire dans le dossier templates/VOTRE_TEMPLATE/html/...
Il se pourrait aussi que vous n'éditiez pas le fichier pour le bon template. Veuillez vous assurer de cela.
Please Log in or Create an account to join the conversation.
- Posts: 37
- Thank you received: 0
Il se pourrait aussi que vous n'éditiez pas le fichier pour le bon template. Veuillez vous assurer de cela.
Non ca j'en suis sur :lol:
Je vais editer le fichier a l'ancienne direct sur par ftp on verra bien ce que ca donne...
Par contre je dois remplacer le code aux 2 endroits?
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.
- Posts: 37
- Thank you received: 0
/www/templates/MONTEMPLATE/html/com_hikashop/product
Mais rien ne change dans le FO.
Please Log in or Create an account to join the conversation.
Si cela change, cela veut dire que le fichier que vous modifiez est bien pris en compte. Sinon, cela veut dire que vous ne modifiez pas le bon fichier.
Please Log in or Create an account to join the conversation.
- Posts: 37
- Thank you received: 0
N'importe où dans le fichier show.php?
En 1er ligne c'est bon?
Please Log in or Create an account to join the conversation.
exit;
Pour le pas vous tromper, le mieux est de la mettre tout à la fin.
Please Log in or Create an account to join the conversation.
- Posts: 37
- Thank you received: 0
Par contre l'affichage de mon champ perso est toujours sur tous les produits
Please Log in or Create an account to join the conversation.
J'ai relu votre premier post et je vois que vous changez le code if(!empty($this->fields)){ qui est utilisé pour l'affichage des champs personnalisés de type produit. Or, vous mentionez ensuite que c'est pour un champ d'upload.
Donc j'imagine que vous voulez en fait changer le code pour les champs personnalisés de type article et non produit. Auquel cas, ce n'est pas ce code là qu'il faut modifier mais le code: if(!empty($this->itemFields)){
Please Log in or Create an account to join the conversation.
- Posts: 37
- Thank you received: 0
Vous imaginez bien
Je souhaiterai faire apparaitre sur la fiche d'un seul produit un champ d'upload pour que la personne personnalise le produit avec une image perso.
J'ai donc rectifié le tir, j'ai repris le fichier show.php d'origine et j'ai changé:
par
Je n'ai plus de message d'erreur mais en revanche le champ personnalises n'apparait plus nul part.
Please Log in or Create an account to join the conversation.
Peut être est ce parce que votre produit a des variants ? Auquel cas ce serait $this->element->main->product_code et non $this->element->product_code qu'il faudrait utiliser.
Please Log in or Create an account to join the conversation.