Jump to content

Utilisation d'une fonction PHP dans un TPL


Recommended Posts

Bonjour à tous.

 

Je travaille actuellement sur un module en BackOffice.

 

Je cherche à utiliser une fonction PHP perso

D'apres ce que j'ai pu lire sur different forum je la defini comme ça  

 function smarty_function_fonctiontest($params, &$smarty) {
    $texteaaficher = $params['texttest'];
    echo "Afficher : ".$texteaaficher; 

$textmodif = $texteaaficher."MODIF";
 return $textmodif;
}

Bien su ma fonction final ne fera pas que afficher un texte mais une fois que j'aurais compris le principe ça devrais bien se passer

 

et dans mon tpl je la lance comme ça :

  {foreach from=$ProductList2 item=ProductLists2}
                                    
  
      {fonctiontest( texttest=  {$ProductLists2.name})}

    {$fonctiontest}
                          {/foreach}
     

Et du coup quand j'appelle ma page je me retrouve avec une erreur 500

Pour l'instant je declare ma fonction dans monmodule.php et je pense que le problème et là.

 

Je bloque depuis un petit moment merci d'avance pour votre aide.

 

 

 

 

 

Link to comment
Share on other sites

42 minutes ago, doekia said:

Toute fonction native php ainsi que toute fonction statique est utilisable directement (au détail de structurer les arguments avec la bonne syntaxe) depuis n'importe quel tpl

Merci pour ta réponse qui ne me fait pas avancé du tout.

Link to comment
Share on other sites

59 minutes ago, doekia said:

Toute fonction native php ainsi que toute fonction statique est utilisable directement (au détail de structurer les arguments avec la bonne syntaxe) depuis n'importe quel tpl

Ça veux dire quoi ???? j'ai mal structurer les arguments ??? La syntaxe est pas bonne ???? Tu peux me donner un exemple ????

Link to comment
Share on other sites

OK je te remercie meme si ton exemple marche pas

php

public static function fonctiontest($params)
   {
    echo "Afficher : ".$params;

$textmodif = $params."MODIF";
 return $textmodif;
}

et pour le TPL

  {Lkm_InfoProd::fonctiontest({$ProductSearched.id_product})}

 

Merci ça fait deux fois que tu me donne des demi solutions .  t'as droit à un café

 

Edited by leakimd (see edit history)
Link to comment
Share on other sites

et pourquoi ne pas pas créer un hook, tout simplement ?

 

<?php
    public function hookmaFct($params)
    {
        return 'LE super produit indispensable : '.$params['nomduproduit'];
    }
    
    
    
    
et en tpl :
{hook h="maFct" nomduproduit=$product.name}

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...