Séparer les custom fields dans form

  • Posts: 163
  • Thank you received: 11
10 years 7 months ago #150490

-- url of the page with the problem -- : Merci de me demander par message privé
-- HikaShop version -- : 2.3.0 + Hikamarket 1.3.2
-- Joomla version -- : 3.2.2
-- PHP version -- : 5.4.22
-- Browser(s) name and version -- : Firefox 27.0.1
-- Error-message(debug-mod must be tuned on) -- : aucun message d'erreur

Bonjour,

Me revoilà avec une nouvelle question.

J'ai modifié la vue du formulaire d'ajout de produits pour classer les différents champs de façon plus intuitive.

J'ai donc un tableau de ce type :

Présentation du produitFichiers téléchargeablesProduits Physiques
Champ 1Champ 4Champ personnalisé C
Champ 2Champ personnalisé BChamp 7
Champ 3Champ 5Champ 9
Champ personnalisé AChamp 6

Vous l'aurez sans doute compris, les champs personnalisés A, B et C, sont pour l'instant appelés les uns à la suite des autres. J'aimerais les séparer.

Je ne pense pas que ce soit possible par défaut mais auriez-vous une technique pour le faire "proprement" depuis la vue ?

Je vous remercie pour votre aide !
Cordialement, Nossibé

Last edit: 10 years 7 months ago by nossibe63.

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

  • Posts: 26158
  • Thank you received: 4028
  • MODERATOR
10 years 7 months ago #150494

Bonjour,

Comme vous pouvez voir dans la vue "productmarket | form", il y a une boucle qui va parcourir tous les custom fields produit afin de les afficher.
Vous pouvez néanmoins ne pas utiliser cette boucle ou exclure certains champs afin de les afficher autre part.

$this->fields est un tableau associatif. La clé de ce tableau est le namekey du champs personnalisé.
Il est également appelé $fieldName dans le code faisant la boucle sur les champs personnalisés.

vous pouvez donc utiliser

$fieldName = 'my_custom_field';
if(isset($this->fields[$fieldName])) {
	$oneExtraField = $this->fields[$fieldName];
	/* Affichage... */
	unset($this->fields[$fieldName]);
}
et ensuite poser le code qui s'occupe d'afficher le champs personnalisés (en copiant/collant le code à l'intérieur de la boucle).
Le unset après l'affichage vous permet d'enlever le champs de la liste. Ainsi, dans la boucle (que vous devez forcement laisser après) les champs déjà affichés ne seront pas de nouveau affichés.

Cela vous permet de ne pas "oublier" des champs personnalisés si jamais votre configuration change.

En espérant que mes indications sont assez claires et vous aiderons dans votre personnalisation d'HikaMarket.
Cordialement,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

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

Moderators: Obsidev
Time to create page: 0.060 seconds
Powered by Kunena Forum