|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() cedric besse Inscription : mai 2010 Messages : 12 ![]() |
Bonjour,
je souhaiterais savoir s'il est possible d'afficher le module d'un script sur un autre script tout deux étant sur le même serveur dans deux répertoires distinct. Mon soucis est que j'utilise prestashop et openauto classified et j'aimerais par exemple faire afficher le module nouveauté du script prestashop sur la sidebar du script openauto classified. J'ai essayé de faire un include tout simple par rapport à la doc smarty mais j'ai un message qui me dit qu'il ne trouve pas le chemin J'ai aussi essayé de faire un include sur une simple page php pour voir ce que cela donné et page blanche Ma question serait de savoir si déjà cela est possible et bien sur comment, un exemple serait le bienvenue En cherchant pendant un bon moment je suis tombé sur la fonction php curl mais je ne sais pas quel url mettre pour appeler uniquement le module... Merci |
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() ![]() Inscription : décembre 2004 Messages : 1 957 ![]() |
Bonjour
Normalement l'include template du module prestashop devrait marcher sur openauto classified Peut on voir comment tu fais l'include du module et à quoi ça se ressemble + le message d'erreur exact?
__________________
Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! ! Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells |
|
|
00
|
|
|
#3 | |||
|
Invité de passage
![]() cedric besse Inscription : mai 2010 Messages : 12 ![]() |
Merci krachik,
par rapport à ce que j'ai fait par exemple si je souhaite afficher le module homecarousel de Pretashop qui se trouve dans l'arboresence: ../boutique/modules/homecarousel/homecarousel.tpl sur la page d'index de Open auto classified qui se trouve: ../templates/Default/index.tpl (le script Open auto classified étant à la racine du site et le script Prestashop dans le dossier boutique) J'ai rajouté sur ../templates/Default/index.tpl Code :
{include file="../boutique/modules/homecarousel/homecarousel.tpl"} ce qui affiche l'erreur suivante la ou il devrait s'afficher sur la page d'index de Open auto classified: Citation:
Dans Smarty.class.php de la ligne 1086 à la ligne 1109 Code :
|
|||
|
|
00
|
|
|
#4 |
|
Expert Confirmé
![]() ![]() Inscription : décembre 2004 Messages : 1 957 ![]() |
ils sont sur le même serveur mais est ce qu'ils sont sur le même domaine?
J'ai l'impression que ton include fait dans Open auto classified est positionné par rapport à prestashop et non à Open auto classified. Avec l'index ../templates/Default/index.tpl faut juste voir comment est situé le dossier boutique de prestashop par rapport à au dossier template de Open auto classified Tu peux préciser l'arborescence des 2 CMS, tu peux mettre des XXX si tu veux histoire de voir juste les débuts de dossiers genre : /home/xxxx/xxxx/... /boutique/modules/homecarousel/homecarousel.tpl
__________________
Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! ! Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() cedric besse Inscription : mai 2010 Messages : 12 ![]() |
Alors oui ils sont tous deux sur le même domaine
dans le même dossier car j'ai en faite deux domaines sur ce serveur un .fr et .eu le .eu pointe sur le dossier monsite.eu le chemin: /public_html/monsite.eu j'ai installé le script open auto directement dans ce dossier du coup le chemin du template de l'index est: /public_html/monsite.eu/templates/Default/index.tpl Dans le même dossier (monsite.eu) j'ai rajouté un dossier nomé boutique_auto et j'ai mis dedans tous les fichiers de prestashop le chemin du dossier: /public_html/monsite.eu/boutique_auto et le chemin du module à installer /public_html/monsite.eu/boutique_auto/modules/homecarous/homecarousel.tpl (j'ai fait des "copier coller" de filezilla des chemins en remplaçant juste le nom du site) Par contre je peux vous donner l'adresse du site si ça ne dérange pas et si cela peu être utile. Merci en tous cas |
|
|
00
|
|
|
#6 |
|
Expert Confirmé
![]() ![]() Inscription : décembre 2004 Messages : 1 957 ![]() |
Je vois mieux ce que tu veux faire
Essaies avec ceci en chemin absolu Code :
{include file='file:/public_html/monsite.eu/boutique_auto/modules/homecarous/homecarousel.tpl'}
__________________
Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! ! Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells |
|
|
00
|
|
|
#7 | |
|
Invité de passage
![]() cedric besse Inscription : mai 2010 Messages : 12 ![]() |
Merci, mais malheureusement ça ne marche pas non plus
Je reçois le même message d'erreur: Citation:
du serveur empêche la lecture de homecarousel.tpl ? |
|
|
|
00
|
|
|
#8 | |
|
Expert Confirmé
![]() ![]() Inscription : décembre 2004 Messages : 1 957 ![]() |
ah dans ce cas c'est peut être ceci qu'il faut mettre
Code :
{include file='file:/home/digicars/public_html/monsite.eu/boutique_auto/modules/homecarous/homecarousel.tpl'} Citation:
.Comme j'ai dit les 2 CMS n'ayant pas les mêmes configurations smarty cause ton soucis. Le code de ton module que tu veux mettre ressemble à quoi?
__________________
Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! ! Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells |
|
|
|
00
|
|
|
#9 | |||||
|
Invité de passage
![]() cedric besse Inscription : mai 2010 Messages : 12 ![]() |
Effectivement en rajoutant ce qui manquait ça change tout mais
(/home/digicars) du coup si je met: Code :
{include file='file:/home/digicars/public_html/digicars.eu/boutique_auto/modules/homecarousel/homecarousel.tpl'} Citation:
Si je fais par contre: Code :
cela m'affiche sur la page le code sans les valeurs peu être est-ce une piste? Code php :
|
|||||
|
|
00
|
|
|
#10 |
|
Expert Confirmé
![]() ![]() Inscription : décembre 2004 Messages : 1 957 ![]() |
C'est juste le tag displayWtPrice qui est pas reconnu et encore là c'est dû aux dépendances liées a prestashop.
Je ne pensais pas que le tpl du module avait autant de variable, et donc ton include ne peut pas passer car il faut aussi tenir compte des variables et où elles ont été initialisées. Il faut trouver le php associé a ton tpl Je te déconseille l'include php de ton tpl, déjà qu'un include php pur doit être durement justifié, faire un include php d'un tpl alors ![]() Fais voir le php du module pour voir ce qu'on peut faire Une autre solution serait d'inclure en frame sur ta page open auto classified le lien vers ton module prestashop (c'est a dire que tu crées au niveau de prestashop une page dédiée au module que tu mettras en frame au niveau de l'autre CMS)
__________________
Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! ! Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells |
|
|
00
|
|
|
#11 | ||
|
Invité de passage
![]() cedric besse Inscription : mai 2010 Messages : 12 ![]() |
ok merci beaucoup, parce que je comprend la logique de smarty et ce qu'on essaie de faire la, mais c'est loin d'être innée pour moi.
Pour les frames j'y ai pensé mais apparemment ce n'est pas super super point de vue référencement à ce que j'avais compris? Mais en dernier recours, je pense que je le l'utiliserais à ce moment la le code de homecarousel.php: Code :
|
||
|
|
00
|
|
|
#12 | |||
|
Expert Confirmé
![]() ![]() Inscription : décembre 2004 Messages : 1 957 ![]() |
Citation:
Pour revenir au problème, c'est beaucoup plus compliqué que ça, il y a pas mal de dépendances vu le code php et pour pouvoir le placer hors de son cadre il faut ajuster tout ça. En plus il y a les fichiers js, css etc à ajouter pour avoir l'effet voulu. Ce qui fait que même un include de HomeCarousel.php dans le php de open auto classified ne suffirait pas. Ce dont tu as besoin c'est : Code :
__________________
Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! ! Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells |
|||
|
|
00
|
|
|
#13 |
|
Invité de passage
![]() cedric besse Inscription : mai 2010 Messages : 12 ![]() |
Vraiment je te dis merci pour ton aide!
Pour les fichiers css et js le fichier homecarousel.tpl les appelle je suppose que ce sera une question de chemin par la suite, j espère... Et donc du coup il faudra carrément appeler toutes les variables directement sur open auto, mais il faudra placer le code ou ça? (Car il y a le fichier index.tpl, un fichier template cache (qui se modifie tout seul d'ailleur quand je modifie le .tpl) il s'appelle index.tpl.php et l'index.php à la racine) Du coup j'ai du mal à comprendre lequel traite index.tpl Merci encore, pas sympas de ma part de t'embêter le week-end par contre... |
|
|
00
|
|
|
#14 | ||||||
|
Expert Confirmé
![]() ![]() Inscription : décembre 2004 Messages : 1 957 ![]() |
Désolé du retard
Citation:
Citation:
Je viens de voir de plus près comment prestashop gérait ses modules, les structures sont bien définies et bien précises et ce qui corse la chose c'est qu'il faut exporter un module sur une autre config de smarty. Pour les tags non reconnu comme displayWtPrice, c'est parce que prestashop défini aussi ses propres fonctions pour smarty dans core.assemble_plugin_filepath.php, ensuite il faut faire des définitions dans init.php etc, bref toute une bonne structure qui ne marchera pas dans une autre config de smarty différente. C'est intéressant Les solutions que je te proposerais : -Vu qu'il s'agit d'un module payant, tu peux toujours essayer de voir avec eux s'il n'ont pas prévu quelque chose pour ce que tu veux faire -D'après ce que j'ai vu du module en question, pour ton affichage tu as juste besoin de la liste de produit + les infos comme le prix, l'image et le nom : ce que tu peux faire juste en te connectant à la base et en sachant sur quelles tables jouer, et après pour l'animation t'as le js et le css. Je vais te donner un exemple indicatif: Supposons que tu veux afficher la chose sur l'index, dans ton index.php open auto classified, tu vas juste faire une requête SQL pour récupérer la liste de produits sur prestashop; ce que fait la fonction getProducts présente dans le module homecarousel.php et donc tu sais sur quelles tables jouer Exemple Code :
Comme ça si tu mets la liste de produits dans la variable $products tu peux dans l'index.php Code :
$smarty->assign("products", $products); Code :
-Ou tu optes pour la solutions de frame pointant vers une page qui présente l'affiche -Ou alors la même chose que le point précédent mais en js en se servant de l'ajax
__________________
Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! ! Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells |
||||||
|
|
00
|
|
|
#15 |
|
Invité de passage
![]() cedric besse Inscription : mai 2010 Messages : 12 ![]() |
Merci beaucoup krachik,
je vais essayer cela et l'adapter en fonction. je te dirais si j'arrive à me dépatouiller, Merci encore! |
|
|
00
|
|
|
#16 |
|
Invité de passage
![]() cedric besse Inscription : mai 2010 Messages : 12 ![]() |
Bonsoir,
et bien j'ai finalement réussi, j'ai revue les cours sur smarty et sur les jointures de table ici même et ça ma beaucoup aidé et j'ai appris pas mal de chose par la même occasion. Il ne me reste que deux soucis: Un souci sur les accents du genre é ou à qui s'affiche avec un symbole carré pourtant j'ai bien bien enregistré mes pages en UTF-8 cela donne dans la base de donné Multimètre pour Multimètre qui s'affiche comme ça Multim�tre En faisant de cette manière Code :
{$product.name|escape:htmlall:'UTF-8'|truncate:45} Après le dernier soucis c'est sur le ORDER BY aléatoire, sur le code du homecarousel.php posté un peu plus haut je vois qu'il y a une condition qui le défini, mais dans la ligne du ORDER BY j'ai une erreur qui me dit qu'il ne connait pas la fonction .pSQL Du coup j'avais cherché une autre solution pour un ORDER BY plus accessible à mon niveau, j'ai donc trouvé cette astuce qui ne marche pas avec moi bizarement... cf. SQL Server : Renvoyer les données aléatoirement Tri aléatoire ou tirage aléatoire par Christian Robert Du coup voila s'il peu y avoir des astuces qui me permettrait de corriger ses deux problèmes ce serait super. Merci mille fois en tous cas! |
|
|
00
|
|
|
#17 | |||||
|
Expert Confirmé
![]() ![]() Inscription : décembre 2004 Messages : 1 957 ![]() |
Cool, tu as réussi à avoir ce que tu voulais
![]() -En ce qui concerne l'encodage, je suppose que tu as réécris la fonction qui récupère la liste de produits : vérifies si tu n'as pas mis un ut8_encode là dedans, si ton charset en bien en utf-8 ou encore si tes fichiers sont en utf-8 (tpl et php). - Citation:
Dans le fichier nommé en haut ça donne ça : Code :
Concernant l'autre question, il ne s'agit pas d'un tirage aléatoire mais de fixer l'ordre de récupération et suivant un champs déterminé et tu sais à quoi ressemble tes variables Code :
J'espère avoir répondu à tes questions
__________________
Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! ! Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells |
|||||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com