- Posts: 2696
- Thank you received: 74
où placer views/user/view.html.php
où placer ./components/com_hikashop/views/user/view.html.php pour faire un override ?
dans ./templates/MONTPL/html/com_hikashop/user/view.html.php ça ne marche pas
le <table width="100%" class=""><tr><td style="text-align: center;" width="120px"> ect ... est codé dedans et il faut pouvoir le modifier
idem pour tous vos fichier view.html.php , le style ne pouvant bien évidement pas faire partie du code en dur
merci
Please Log in or Create an account to join the conversation.
Ce que vous pouvez essayer, c'est de faire un plugin système pour cela en mettant le contenu du fichier dans le fichier du plugin.
Quelle genre de modification avez-vous besoin de faire ?
Please Log in or Create an account to join the conversation.
comment connaissez vous le design pour dire que c'est center de 120px ?
j'ai modifie la fonction
le problème c'est que tout ce boulot est a tracer et a refaire a chaque mise a jour
dans tous votre code nettoyer les balises HTML et CSS qui imposent un style comme ce div hikashop_module qui empeche des float left ou non si on en a besoinQuelle genre de modification avez-vous besoin de faire ?
ou la balise style dans le HEAD que j'ai supprime
Please Log in or Create an account to join the conversation.
Il faudrait surtout déporter cela dans une vue.
Et je suis tout à fait d'accord avec vous. Ca n'aurait pas dû être fait comme cela à la base.
Pourquoi cela a été fait comme cela ? Pour gagner du temps. C'est un simple copier/coller du code utilisé sur le dashboard du back end d'HikaShop qui provient du dashboard d'AcyMailing.
Si vous faites un plugin système d'override cela vous éviterez de devoir le refaire à chaque mise à jour...
Please Log in or Create an account to join the conversation.
disons que vu que je retouchais le code autant y aller de bon coeurDans ce cas là, le CSS n'aurait pas aidé vu que vous avez changé tout l'HTML.
au lieu de table on a de gros avantages souvent a utiliser des div display:table et table-cell ca evite les problemes de float et la lourdeur des table , une simple class pour les departager et on fait ce qu'on veut
pourquoi ne fournissez vous pas ce plugin pour ceux que ça intéresse ? et pas pour une view.html.php mais pour toutes
vous avez une piste ou un tuto quelque part pour faire ce type de plugin system ,ou un plugin system existant sur lequel je pourrais me baser ?
je viens de .net C# et je n'ai pas fait beaucoup de reecriture de Joomla dans ce sens
merci
Please Log in or Create an account to join the conversation.
Cela permet d'avoir le meme rendu et très flexible également avec le CSS.
Pour le plugin, ca n'est pas très compliqué à partir du moment où vous savez faire des plugins pour joomla en général:
Copiez collez le plugin system hikashopuser (deux fichiers: plugins/system/hikashopuser.php et plugins/system/hikashopuser.xml).
renommer les fichiers et dans le xml adapter le nouveau nom du fichier pour que cela corresponde.
Ensuite, copiez/collez le code du view.html.php à la place du code dans le fichier php de votre plugin.
Ensuite, zippez les deux fichiers ensemble et vous avez votre paquet d'installation du plugin d'override pour ce fichier. Vous pouvez l'installer et le publier via le gestionnaire d'extensions de joomla.
Cette méthode est utilisable pour quasiment n'importe quelle classe d'HikaShop.
Attention, si vous avez un endroit ou une classe avec le même nom est utilisée, il faudra rajouter un check au début du fichier php comme ceci:
if($_GET!='com_hikashop' || $_GET!='user') return;
Cela évitera de charger votre override pour une autre page du site.
Please Log in or Create an account to join the conversation.
merci bien
Please Log in or Create an account to join the conversation.
pour avoir un nom de class différent j'ai renommé la class userViewUser extends JView en plgSystemHikashopuserview extends JView et tout le site plante , une page blanche, meme si je vais dans l'admin et que j'essaye d’éditer le plugin l'admin plante
mais on ne peut pas avoir 2 fois la meme class ou alors l faudrait des namespaceAttention, si vous avez un endroit ou une classe avec le même nom est utilisée, il faudra rajouter un check au début du fichier php comme ceci:
if($_GET!='com_hikashop' || $_GET!='user') return;
comment faire pour que ça ne plante pas je n'ai rien fait d'autre que coller le contenu et changer le nom de la class ?
si je garde le meme nom et que je met
if($_GET!='com_hikashop' || $_GET!='user') return;
c'est votre view.html.php qui est lu
Please Log in or Create an account to join the conversation.
Le fichier view.html.php original ne sera pas du tout chargé par Joomla si la classe userViewUser existe déjà, donc il n'y aura pas de conflit et le système utilisera automatiquement la classe de votre plugin.
Vous avez changer la classe pour le nom de classe d'un plugin Joomla normal mais vous avez laissé l'extend sur JView. Donc joomla essaie d'utiliser votre classe en pensant que c'est un plugin alors que c'est une vue. Normal que cela fasse crasher tout le site.
Please Log in or Create an account to join the conversation.
./plugins/system/hikashopuserview/hikashopuserview.php et c'est toujours ./components/com_hikashop/views/user/view.html.php qui est lu
et si j'enleve if($_GET!='com_hikashop' || $_GET!='user') return; le site plante
il est bien sur active
Please Log in or Create an account to join the conversation.