Advertisement
rAthus

[WordPress] requête SQL export CPT et métas

Dec 8th, 2022 (edited)
733
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 2.06 KB | None | 0 0
  1. SELECT DISTINCT
  2. ID AS "ID" /* ID du post */
  3. , post_title AS "Titre" /* titre du post */
  4. , post_date AS "Date publication" /* date de création du post */
  5. , post_content AS "Description" /* contenu du post */
  6.  
  7. /* récupérer la méta 'client' */
  8. , IFNULL((SELECT meta_value FROM wp_postmeta WHERE wp_postmeta.meta_key = 'client' AND wp_postmeta.post_id = wp_posts.ID), '') AS "ID client"
  9.  
  10. /* récupérer la méta 'adresse_email' d'un CPT lié par la méta 'client' */
  11. , IFNULL((SELECT meta_value FROM wp_postmeta a WHERE a.meta_key = 'adresse_email' AND a.post_id = (SELECT meta_value FROM wp_postmeta b WHERE b.meta_key = 'client' AND b.post_id = wp_posts.ID)), '') AS "Email client"
  12.  
  13. /* récupérer les valeurs de la colonne 'therapeute' d'un ACF type répéteur 'horaires_par_pieces', les dédoublonner et les regrouper en les séparant par un point-virgule */
  14. , IFNULL((SELECT GROUP_CONCAT(DISTINCT wp_postmeta.meta_value SEPARATOR ';') FROM wp_postmeta WHERE wp_postmeta.meta_key LIKE 'horaires_par_pieces_%_therapeute' AND wp_postmeta.meta_value!="" AND wp_postmeta.post_id = wp_posts.ID), '') AS "Thérapeute(s)"
  15.  
  16. /* la même sauf qu'on va récupérer la méta 'nom' du CPT d'un CPT lié à la valeur de la colonne 'therapeute' qui est un ID pointant vers un CPT */
  17. , IFNULL((SELECT meta_value FROM wp_postmeta a WHERE a.meta_key = 'nom' AND a.post_id = (SELECT GROUP_CONCAT(DISTINCT wp_postmeta.meta_value SEPARATOR ';') FROM wp_postmeta WHERE wp_postmeta.meta_key LIKE 'horaires_par_pieces_%_therapeute' AND wp_postmeta.meta_value!="" AND wp_postmeta.post_id = wp_posts.ID)), '') AS "Thérapeute"
  18.  
  19. /* récupérer la somme des valeurs numériques de la colonne 'quantite' d'un ACF type répéteur 'quantites_totales' */
  20. , IFNULL((SELECT SUM(wp_postmeta.meta_value) FROM wp_postmeta WHERE wp_postmeta.meta_key LIKE 'quantites_totales_%_quantite' AND wp_postmeta.meta_value!="" AND wp_postmeta.post_id = wp_posts.ID), 0) AS "Unités achetées"
  21.  
  22. FROM wp_posts /* table des posts */
  23. WHERE post_type = 'reservation' /* slug du CPT */
  24. ORDER BY post_title, post_content /* ordre de tri */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement