Comment transformer un shortcode en code PHP?
-
-
Créez unthèmeenfantet modifiez lefichier spécifique.L'utilisation du Codex WordPresset de Google vousguidera àtravers.Make a child theme and change the specific file. Using the WordPress Codex and Google will take you through it.
- 0
- 2015-11-05
- flomei
-
J'utilise unthèmeenfant,maisje ne saispas comment lefairefonctionner.I am using a child theme, but I am lost as to how to make it work out.
- 0
- 2015-11-05
- damann
-
Que voulez-vous dire?Copiez le header.php dans votrethèmeenfant,modifiez-leet enregistrez-le.Lorsque vous utilisez votrethèmeenfant,le header.phpmodifié sera utilisé ...What do you mean? Copy the header.php to your child theme, modify and save it. When you use your child theme, the modified header.php will be used...
- 0
- 2015-11-05
- flomei
-
Jene saispas commentprendre leàdans le code ci-dessuset le remplacerpar un shortcode ... Jene saispas comment lefaireet lefairefonctionner.Dois-je simplement ajouter [shortcode]?I don't know how to take thetoin the above code and replace it with a shortcode... I don't know how to do it and make it work. Do I just throw in [shortcode]?
- 0
- 2015-11-05
- damann
-
Ce que Milo a dit ...What Milo said...
- 0
- 2015-11-05
- flomei
-
Qu'est-ce que * "mls" *?What is *"mls"*?
- 0
- 2020-02-01
- Peter Mortensen
-
3 réponses
- votes
-
- 2015-11-05
Engénéral,inséreret exécuter des shortcodes directement dans desfichiersmodèlesn'estpas unebonneidéeet cen'estpas à quoi servent les shortcodes. À laplace,vous devez utiliser le rappel de code court commen'importe quelle autre fonction PHP oubalise demodèle .
Parexemple,imaginons ce shortcode:
add_shortcode('someshortocode', 'someshortocode_callback'); function someshortocode_callback( $atts = array(), $content = null ) { $output = "Echo!!!"; return $output; }
Ensuite,au lieu defaire ceci:
echo do_shortcode( '[someshortocode]' );
Vous devriezfaire ceci:
echo someshortocode_callback();
Évidemment,pour utiliser le rappel de shortcode commebalise demodèle,le shortcode doit être codé demanière àpermettre cette utilisation,donc cen'estpeut-êtrepaspossible (même sije n'aijamaistrouvé de shortcode quin'autorisepas l'utilisation de le rappel directement,ilpeutexister). Dans ce cas,et seulement dans ce cas,j'utiliserais
do_shortcode( '[someshortcode]' )
(jene l'utiliseraisjamais vraiment).Notez que les shortcodes sont desespaces réservés PHP à utiliser là où le code PHPne peutpas êtreinséré,c'estpourquoi celan'a aucun senspourmoi de les utiliser dans des scripts PHP.
In general, inserting and executing shortcodes directly into templates files is not good idea and it is not what shortcodes are intented for. Instead, you should use the shortcode callback just like any other PHP function or template tag.
For example, let's imaging this shortcode:
add_shortcode('someshortocode', 'someshortocode_callback'); function someshortocode_callback( $atts = array(), $content = null ) { $output = "Echo!!!"; return $output; }
Then, instead of doing this:
echo do_shortcode( '[someshortocode]' );
You should do this:
echo someshortocode_callback();
Obviously, to use the shortcode callback as template tag, the shortcode must be coded in a way it allows this use, so it may be not possible (although I've never found a shortcode that don't allow the use of the callback directly, it may exist). In this case, and only in this case, I would use
do_shortcode( '[someshortcode]' )
(I've never would use it really).Note that shortcodes are PHP placeholders to be used where PHP code can not be inserted, that is why it has no sense for me to use them in PHP scripts.
-
Oui,le shortcode quej'utilisene serapas disponiblepour utiliser laméthodepréférée que vous recommandez. Etje ne veuxpas utiliser le shortcode dans lefichierphp.s'il y avait unmoyen de supprimer labarre de recherche quiest codéeen dur dans lephpet demettre le shortcode queje dois utiliser dans l'en-tête,au-dessus de l'imageen rotation,celafonctionneraittrèsbien pourmoi.Yeah, the shortcode that I am using is not going to be available to do the preferred method you recommend. And I don't WANT to use the shortcode in the php file. if there was a way to remove the searchbar that is hardcoded in the php and put the shortcode I have to use in the header, on top of the rotating image, that would work great for me.
- 0
- 2015-11-05
- damann
-
- 2015-11-05
Utilisez
do_shortcode
pourgénérer un shortcode dans votremodèle.echo do_shortcode( '[theshortcode]' );
Use
do_shortcode
to output a shortcode in your template.echo do_shortcode( '[theshortcode]' );
-
D'accord,j'ai remplacétout le code quej'aipostépar celui d'écho,ne fonctionnepas dutout.Okay, I replaced the entire code I posted with the echo one, doesn't work at all.
- 1
- 2015-11-05
- damann
-
Certains codes courtsne fonctionnentpasen dehors du contexte d'unepublication dans laboucle.Sans savoirexactement ce quefait le shortcodeet comment,je nepeuxpasproposer de solution.Some shortcodes don't work outside of the context of a post in the loop. Without knowing exactly what the shortcode does and how, I can't offer a solution.
- 1
- 2015-11-05
- Milo
-
C'est un shortcodemlspour rechercher desbiensimmobilierset ilestplutôt compliqué,éditera l'OP avec le code court.It is a mls shortcode to search for realestate and it rather convoluted, will edit the OP with the shortcode code.
- 0
- 2015-11-05
- damann
-
C'est le shortcode,mais vous devriez regarder lafonction quigère la sortie de ce shortcodepour déterminerpourquoi celane fonctionnepas.Ilpeut êtreplusfacile de demander de l'aide à celui qui l'a écrit.That's the shortcode, but you would have to look at the function that handles the output of that shortcode to determine why it's not working. It may be easier to ask whomever wrote it for assistance.
- 0
- 2015-11-05
- Milo
-
- 2016-09-29
Vouspouvez utiliser ceci.
<?php echo do_shortcode('[Shortcode_goes_here]') ?>
You can use this.
<?php echo do_shortcode('[Shortcode_goes_here]') ?>
-
Pouvez-vouspréciser votre réponse?May you please elaborate you answer?
- 1
- 2016-09-29
- Ethan O'Sullivan
-
Utilisez simplement le rappel attribué au shortcode.`do_shortcode ()`est…meh.Just use the callback that is assigned for the shortcode. `do_shortcode()` is … meh.
- 0
- 2016-09-29
- kaiser
-
@ EthanJinksO'Sullivan remplacez le shortcode_goes_herepar le shortcode que leplugin vous donne,puis ajoutez-le aufichierphp.@EthanJinksO'Sullivan replace the shortcode_goes_here with the shortcode that the plugin gives you and then add it to the php file.
- 0
- 2016-10-03
- Charles Xavier
J'aibesoin d'ajouter un shortcode dans l'un desfichiers PHP (en remplaçant un code-barres de recherche codéen dur dans lefichier PHP d'en-tête). Comment ajouter un shortcode aufichier PHP d'en-tête?
Voici le code queje regarde:
Etje dois supprimer le search-form-wrap avec un autreformulaire de recherche de shortcode (pourmls).
Voici le shortcode queje doisgérer:
[idx_search link="###########" detail_search="off" destination="local" user_sorting="off" location_search="on"property_type_enabled="on"theme="hori_round_light" orientation="horizontal" width="730"title_font="Arial"field_font="Arial"border_style="round" widget_drop_shadow="off"background_color="#ffffff"title_text_color="# 000000"field_text_color="# 545454" détaillé_search_text_color="# 234c7a" submit_button_shine="shine" submit_button_background="# 59cfeb" submit_button_text_color="# 000000"]