Aller au contenu principal

Custom Query Shortcode

(code court de requête personnalisée)

Custom Query Shortcode (code court de requête personnalisée) est un plugin WordPress qui implémente la fonctionnalité WP_Query sous forme de shortcode. Il vous permet également d'intégrer des requêtes dans le corps d'une page ou d'un article.

Le plugin vous permet également de personnaliser la sortie des résultats, soit en ligne avec le html, à travers des modèlespersonnalisés, ou si vous utilisez Twig dans votre thème, vous pouvez même passer le nom d'un modèle Twig.

Paramètres du code court

Ce code court acceptera la plupart des paramètres (méthodes) de la classe WP_Query, qui sont de simples paires clé/valeur. Pour des raisons de complexité, il n'accepte pas les tableaux imbriqués. De plus, le plugin accepte également les paramètres suivants :

  • content_limit (nombre entier) - limite le nombre de mots à afficher, utilisé en conjonction avec la balise {CONTENT}. Si aucune valeur n'est fournie, l'intégralité du contenu de l'article sera affichée.
  • thumbnail_size (chaîne) - spécifie une taille d'image définie, utilisée avec la balise {THUMBNAIL}.
  • featured - (booléen) - lorsqu'il est passé à VRAI, et qu'il existe des articles collants, il retournera les articles collants ou "en vedette".
  • shortcode - (booléen) - s'il est passé à VRAI, traitera tous les autres shortcodes qui existent dans le contenu.
  • lens - (chaîne) - le nom d'un modèle pour afficher vos articles.
  • twig_template - (chaîne) - Spécifie un modèle Twig à utiliser pour afficher vos messages.
  • posts_separator - (chaîne) - Une chaîne pour séparer les messages, par exemple ', ' ou '<br>'
  • paramètres de la grille - vous pouvez lister vos articles dans une grille simple, en utilisant les paramètres suivants :
    • cols - (nombre entier) - nombre de colonnes de la grille
    • rows - (nombre entier) - nombre de lignes de la grille

HTML en ligne avec des balises

Lorsque vous enveloppez le code de tri avec des balises d'ouverture et de fermeture, vous pouvez utiliser des balises HTML et certaines balises de sélection pour produire vos articles. Les balises disponibles sont celles qui utilisent des crochets.

  • {URL} - le lien de l'article
  • {TITLE} - le titre du message
  • {AUTHOR} - correspond à la fonction get_the_author(), qui affiche le nom de l'auteur.
  • {AUTHOR_URL} - obtient le lien vers la page d'archive de l'auteur, utilise la fonction get_author_posts_url(),
  • {DATE} - la date à laquelle l'article a été écrit - utilise la fonction get_the_date(), formatée dans le format de date et d'heure de votre site.
  • {EXCERPT} - utilise la fonction get_the_excerpt() pour renvoyer l'extrait du message
  • {COMMENT_COUNT} - Nombre de commentaires sur l'article, utilise la fonction get_comments_number()
  • {THUMBNAIL} - affiche la vignette du message en utilisant la taille "thumbnail" par défaut ; la taille peut être personnalisée en utilisant le paramètre "thumbnail_size".
  • {CONTENT} = affiche le contenu de l'article, soit le contenu complet, soit une quantité limitée de mots, soit une quantité limitée via le paramètre 'content_limit'.

Exemple de code HTML en ligne :

[query posts_per_page="5" cat="3"]
{TITLE} ({COMMENT_COUNT})
[/query]

Modèles (paramètre 'lens')

Nous avons fourni un nombre limité de modèles simples ou "lentilles" que vous pouvez passer par le paramètre "lens" pour afficher votre contenu.

Exemple:

[query posts_per_page="5" featured="true" lens="carousel"]

Liste des modèles inclus

  • ul - liste non ordonnée de titres d'articles liés
  • ul-title-date - liste non ordonnée avec le titre lié et la date de publication
  • article-excerpt - extrait d'article (titre lié, image vedette, extrait)
  • article-excerpt-date - extrait d'article avec la date d'affichage
  • cards - vignette de l'article, titre lié et extrait - aucun style n'est fourni.
  • Composants Bootstrap
    • accordion -accordéon
    • carousel - carrousel
    • tabs - onglets - le titre de l'article devient le titre de l'onglet et l'extrait de l'article est placé dans le panneau de contenu relié.
    •  

Vous pouvez également fournir les noms de vos propres modèles PHP personnalisés. Il recherchera le fichier dans votre thème actif, dans les sous-dossiers suivants :

  • query-shortcode-templates/
  • partials/query-shortcode-lenses/
  • html/lenses/

Support pour des modèles Twig

À partir de la version 0.4, vous pouvez utiliser des modèles Twig pour vos résultats. Le support de Twig est fourni par la bibliothèque Timber.

Cela nécessite que Timber 2.x soit installé en tant que dépendance de Composer.

Pour utiliser un modèle Twig pour votre requête, utilisez simplement le paramètre "twig_template" au lieu du paramètre "lens", et indiquez le chemin d'accès à votre modèle. Par défaut, Timber cherche dans le dossier views de votre thème actif. Vous pouvez modifier l'emplacement par défaut du modèle dans Timber.

Exemples :

[query twig_template="nom-du-modèle.twig"]
[query twig_template="folder/template-name.twig"]

Prise en charge des anciens widgets

Puisque WordPress n'autorise pas les shortcodes dans les zones de widgets par défaut, j'ai ajouté un filtre pour l'autoriser.

Support de l'éditeur de blocs

Bien que vous puissiez utiliser Custom Query Shortcode en utilisant le bloc Code court, et que cela fonctionne sur le front-end, ce plugin ne supporte pas la prévisualisation des résultats dans l'éditeur de bloc. Je ne prévois pas de fournir un support complet de l'éditeur de blocs pour ce plugin.

Si vous voulez un outil de requête entièrement natif utilisant l'éditeur de blocs, je vous suggère d'utiliser soit le bloc WordPress Boucle de requête (Query Loop), soit pour des utilisations plus complexes, le plugin Advanced Query Loop.

Type de projet
Languages
Étiquettes