- WordPress :6.1
- Statut : non résolu
- Ce sujet contient 8 réponses, 5 participants et a été mis à jour pour la dernière fois par
true-slmn, le il y a 7 mois.
-
AuteurMessages
-
27 avril 2023 à 17 h 45 min #2453458
Bonjour,
Ma configuration WP actuelle
- Version de PHP/MySQL : 8.2
- Thème utilisé : Divi thème
- Extensions en place :
- Nom de l’hébergeur : infomaniak
- Adresse du site : non déployé
Problème(s) rencontré(s) :
Bonjour, j’ai conçu une extension qui propose une interface dans l’admin avec un CRUD pour gérer une table en base de données. Tout cela est fonctionnel.
Désormais je souhaite exécuter une requête sql pour récupérer mes enregistrements et les afficher dans du html sur les pages du site.
Travaillant avec divi je peux ajouter un module code pour faire mon html comme je l’entends mais je ne suis pas certains de la meilleur manière de récupérer mes enregistrements à cet endroit là.
Je me penchais vers une requête en ajax.
L’idéal aurait été un shortcode ou un hook puis de passer les données du php au js mais j’ai du mal à voir comment m’y prendre, vue que je ne peux pas ajouter un fichier php dans le front.
Il reste l’option de construire un module divi custom avec une requete dans le php, cela serait le plus propre il me semble.
Si quelqu’un peut m’éclairer, entre actions, filtres, shortcode ou ajax je suis un peu perdu quand je veux appliquer ça dans le divi builder.
En vous remerciant.
27 avril 2023 à 19 h 00 min #2453471Bonjour,
êtes-vous sûr de poser la question sur le bon forum ?
Il me semble, quoique je puisse me tromper, qu’intervenir à ce niveau de code dépasse –un peu ? l’aide qu’on apporte généralement ici sur l’utilisation de WordPress.
D’autre part, Divi Builder étant un produit commercial, on sort du domaine de ce forum. Peut-être aurez-vous quelque chance en parcourant la documentation pour développeurs que propose Elegant Themes.
29 avril 2023 à 14 h 09 min #2453581J’entends votre réponse. Je vais m’orienter vers d’autre forum. Egalement je comprend que vous ne puissiez ici répondre vis-à-vis de divi.
Dans un second temps, si je devais formuler l’essentiel de ma question ce serait quels sont les meilleures moyen de récupérer un résultat SQL directement sur une page front.
Si jamais quelqu’un à des suggestions je suis preneur.
Merci pour votre réponse et bon week-end à vous.
29 avril 2023 à 14 h 22 min #2453582…récupérer un résultat SQL directement sur une page front.
Il y a plusieurs méthodes et ça dépend de ce que vous voulez récupérer. La méthode générale est d’utiliser la variable $wpdb, de faire une requête sql (select) et de donner le résultat sous forme de liste ou de tableau à l’endroit voulu en page front ou sur une autre page, à l’aide d’un filtre ou d’un shortcode. Voila à peu près tout ce qu’on peut dire.
-
Cette réponse a été modifiée le il y a 7 mois par
ferman.
29 avril 2023 à 14 h 25 min #2453584Le shortcode serait l’idéal. Je le glisse dans l’html et je reçois mon tableau. J’ai du mal à trouver de la doc pour ce cas précis des shortcode, peut être avez vous quelques choses à me proposer ?
29 avril 2023 à 14 h 28 min #245358529 avril 2023 à 14 h 55 min #2453586Bonjour, il semblerait que cette extension le fasse https://supsystic.com/documentation/database-source/
29 avril 2023 à 14 h 57 min #2453587Un exemple basique que j’ai déjà utilisé:
En front page, dans un simple widget texte placé dans le footer, on ajoute un shortcode. On fait une requête SQL et récupère le résultat (les 5 dernières mises à jour d’articles) dans le widget grâce au shortcode. (voir pj. Le shortcode en back, le shortcode en front, le résultat de la fonction)
function dernieres_mises_a_jour() {
ob_start();
global $wpdb;
$posts = $wpdb->get_results("SELECT post_modified, post_name FROM $wpdb->posts WHERE post_type = 'post' AND post_status = 'publish' ORDER BY post_modified DESC LIMIT 5");
foreach ($posts as $post)
{?>
<ul class="display_modifs">
<?php echo '<li>'.' '.$post->post_modified.' '.$post->post_name.'</li>';?>
</ul>
<?php }
return ob_get_clean();}
add_shortcode('shortcodewidget','dernieres_mises_a_jour');On peut remplacer le shortcode par un « hook » (générique wordpress (wp_footer, wp_head) ou, ce qui est mieux, dépendant du thème).
-
Cette réponse a été modifiée le il y a 7 mois par
ferman.
Fichiers joints :
Vous devez être connecté pour voir les fichiers joints.30 avril 2023 à 12 h 13 min #2453667Merci pour ces réponses. Finalement je m’y prenais bien pour les shortcodes, en local aucun souci mais sur le site aucun shortcode ne fonctionne, ni les natifs ni les custom… J’ai créé une page classique de worpress et rien ne s’affiche, certaines personnes ont rencontrés ce problème et se sont dirigés vers leurs hebergeur… je vous tiens informé.
-
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.