Cette action est un outil pour le webmaster.

Elle permet de repérer rapidement les pages non indexées, avec un titre trop court ou trop long, sans description, ...

🆙 jcontent_metadata : pour contrôle des metadonnées

Cliquer pour lire la documentation

liste des articles d'une ou plusieurs catégories avec mise en évidence des informations pour référencement
syntaxe 1 : {up jcontent-metadata=id-categorie(s) | template=##title-link##}
syntaxe 2 : {up jcontent-metadata=id-categorie(s)}##title-link##{/up jcontent-metadata}
--- Les mots-clés :
##title## ##title-link## ##subtitle## ##maintitle## ##link## ##id##
##intro## ##intro-text## ##intro-text,100## ##content##
##image## ##image-src## ##image-alt##
##date-crea## ##date-modif## ##nivaccess## ##id##
##author## ##note## ##cat## ##cat-link## ##new## ##featured## ##hits## ##tags-list##
##upnb## : nbre actions UP dans la page - ##uplist## : nbre par actions
##date-publish## ##date-publish-end## ##date-featured## ##date-featured-end##
##meta-index## ##meta-follow## ##meta-title## ##meta-desc## ##meta-key##
@author: LOMART @version: UP-3.1 @license: GNU/GPLv3 @tags: Joomla
  • jcontent_metadata: ID(s) catégorie(s) séparé(s) avec virgule, vide pour celle de l'article actuel ou 0 pour toutes
  • filter: conditions. Voir doc action filter
  • maxi: Nombre maxi d'articles dans la liste. Vide = tous
  • exclude: liste des id des catégories non reprises si option principale=0
  • current = 1: 1 pour inclure l'article en cours
  • nivaccess = 1: liste des groupes pour niveau d'accés. 1=public only, 0=tous, 1,9=public et guest
  • content-plugin: prise en compte des plugins de contenu pour ##intro et ##content##
  • no-published (no_published) = 1: Liste aussi les articles non publiés
  • author: filtre sur auteur: liste des id ou article, current
  • sort-by = publish_up: tri: title, ordering, created, modified, publish_up, id, hits, random
  • sort-order = desc: ordre de tri : asc, desc
  • no-content-html = aucun article ne correspond aux critéres ...[br]no item matches the criteria ...: texte si aucune correspondance. 0=aucun texte

Modéles de présentation

  • template (item-template): modéle de mise en page. Si vide le modéle est le contenu

Balise et style pour le bloc principal

  • main-tag (block) = div: balise pour le bloc englobant tous les articles. 0 pour aucun
  • main-style: classes et styles inline pour bloc principal
  • main-class: classe(s) pour bloc principal (obsoléte)

Balise et style pour un article

  • item-tag = div: balise pour le bloc d'un article. 0 pour aucun
  • item-style: classes et styles inline pour un article
  • item-class: classe(s) pour un article (obsoléte)

Paramétre pour l'image

  • image-src: lorempixel.com/300/300', // image par défaut
  • image-alt = news: image, texte alternatif par défaut

Format pour les mots-clés

  • date-format = %d/%m/%Y: format pour les dates
  • date-locale: localisation pour les dates. Par défaut, celle du navigateur client.
  • new-days = 30: nombre de jours depuis la création de l'article
  • new-html = [span class="badge bg-red t-white"]nouveau[/span]: code HTML pour badge NEW
  • featured-html = &#x2B50: code HTML pour article en vedette
  • tags-list-prefix: texte avant les autres éventuels tags
  • tags-list-style = badge;margin-right:4px: classe ou style affecté à une balise span par mot-clé
  • tags-list-separator: séparateur entre mots-clés

spécifique jcontent-metadata

  • meta-title-min = 30: nombre de caractéres minimum/raisonnable pour la balise title de la page. Nom du site inclus selon config
  • meta-title-max = 65: nombre de caractéres maximum pour la balise title de la page. Nom du site inclus selon config
  • meta-desc-min: nombre de caractéres minimum/raisonnable pour la balise meta/description de la page
  • meta-desc-max = 160: nombre de caractéres maximum pour la balise meta/description de la page

Style CSS

  • id: identifiant
  • css-head (base-css): code CSS dans le head

Utilisation

Cette action est une variante de l'action jcontent-by-categories, je vais donc me contenter de fournir un exemple d'utilisation.


Lien meta
title
meta
desc
meta
key
cat création modif accès index follow début
publication
fin
publication
Epinglé
début
Epinglé
fin
322 - Version 5 21/65 0/160 News 21/01/2024 21/01/2024 Accès public index no-follow 21/01/2024
321 - Version 3.1.2 25/65 0/160 News 08/11/2023 08/11/2023 Accès public index no-follow 08/11/2023
320 - snippet 19/65 0/160 Actions 25/09/2023 30/10/2023 Accès public index follow 30/10/2023
318 - media-video ~ vidéo en HTML5 41/65 0/160 Actions 12/09/2023 30/10/2023 Accès public index follow 30/10/2023
317 - random ~ choix aléatoire 37/65 0/160 Actions 25/09/2023 30/10/2023 Accès public index follow 30/10/2023
316 - Version 3.1 23/65 0/160 News 28/09/2023 01/11/2023 Accès public index no-follow 01/11/2023
315 - Sommaire 20/65 0/160 Général 01/07/2023 29/09/2023 Accès public index follow 01/07/2023
312 - jcontent-metadata ~ contrôle des metadonnées 58/65 0/160 Actions 01/09/2023 30/10/2023 Accès public index follow 30/10/2023
311 - readmore ~ volet déroulant "lire la suite" 55/65 0/160 Actions 01/09/2023 03/10/2023 Accès public index follow 01/09/2023
307 - popup 17/65 0/160 Actions 15/04/2023 21/01/2024 Accès public index follow 12/05/2023
306 - masonry 19/65 0/160 Actions 21/03/2023 09/09/2023 Accès public index follow 11/05/2023
305 - Version 3.0 23/65 0/160 News 02/04/2023 20/05/2023 Accès public index no-follow 13/05/2023
304 - date 16/65 0/160 Actions 10/02/2023 02/06/2023 Accès public index follow 08/05/2023
303 - addfilehead 23/65 0/160 Actions 08/02/2023 20/05/2023 Accès public index follow 08/04/2023
300 - data2table 22/65 0/160 Actions 18/02/2023 30/10/2023 Accès public index follow 02/05/2023

La table ci-dessus affiche des informations sur les cinq derniers articles de ce site. Il est possible de rechercher un texte et de trier toutes les colonnes (même les dates !).

  • La colonne meta-title contient le nombre de caractères de la balise title dans le head de la page suivi de la taille maximale. Il correspond à la longueur du titre majoré selon la configuration du site du nom du site. Une taille orange signifie que le nombre de caractères est inférieur à l'option meta-title-min ou supérieur à meta-title-max
  • La colonne meta-desc contient le nombre de caractères de la balise description dans le head de la page. La couleur orange dépend des valeurs de meta-desc-min et meta-desc-max
    Son utilité est discutable selon webrankinfo. Personnellement, je n'en mets pas.
  • La colonne meta-key affiche le contenu du champ "Publication/Mots clés" de l'article. Elle me semble totalement inutile, mais comme Joomla la conserve ...
  • Les colonnes index et follow tiennent compte de la configuration générale du site, de celle de la catégorie et enfin de l'article.
    Pour faciliter la lecture les valeurs restrictives sont en rouge.
  • les colonnes date publication et épinglé correspondent aux dates dans l'onglet publication de l'article. Elles sont en rouge si la date début est postérieure à la date actuelle ou si la date de fin est échue.

Voici les 3 shortcodes utilisés dans l'ordre d'interprétation :

  • jcontent_metadata récupère les données dans la BD de joomla
  • csv2table transforme les données reçues au format CSV en tableau HTML
  • table-sort apporte les fonction de recherche et de tri au tableau
{up table-sort
| col-type=a-n-n-a-a-d-d-a-a-a-d-d-d-d
| pagination=20}
{up csv2table
| header=Lien;meta[br]title;meta[br]desc;meta[br]key;cat;création; modif;accès;index;follow;début[br]publication;fin[br]publication;Epinglé[br]début;Epinglé[br]fin
| col=15-c5-c5-c5-c-c-c-c-c-c-c-c-c-c | style=display:block;overflow-x:scroll;
} {up jcontent_metadata=0 | maxi=5 | main-tag=0 | item-tag=0 | sort-by=id | template=##id## - ##title-link## ; ##meta-title##; ##meta-desc## ; ##meta-keys## ; ##cat## ; ##date-crea## ; ##date-modif## ; ##nivaccess## ; ##meta-index## ; ##meta-follow## ; ##date-publish## ;  ##date-publish-end## ; ##date-featured## ; ##date-featured-end## } {/up csv2table} {/up table-sort}

Quelques précisions sur les options utilisées :

2 - col-type contient le type de données des colonnes pour le tri. Depuis la version 3.1 de UP, le tri par date est possible.

3 - bien qu'inutile dans notre cas, pagination facilite la lecture des longues listes

5 - header définit les titres du tableau. Depuis la version 3.1 de UP, le BBCode est autorisé

6 - col est utile pour définir la largeur relative et la justification des colonnes et style pour ajouter un ascenseur sur les petits écrans

8 - l'argument 0  pour l'action jcontent-metadata permet de prendre en compte tous les articles. On peut aussi indiquer les ID des catégories séparées par des virgules ou vide pour celle de l'article actuel 

9 - diverses options pour définir la clé de tri pour la récupération des données (sort-by), le nombre maxi d'articles. main-tag et item-tag à zéro pour éviter des balises HTML sur la liste CSV retournée

10 - les mots clés pour les données à récupérer. Remarquez le traditionnel point-virgule pour séparer les colonnes du format CSV. La liste complète des mots-clés est disponible dans le bandeau bleu de la documentation en début de cette démo ou dans le tableau des mots-clés

Les options

La table ci-dessous est un comparatif des options proposées par les différentes actions Jxxx
A: jcontent-in-content, AL: jcontent-list, AC: jcontent-by-categorie (jnews), AS: jcontent-by-subcat, AT: jcontent-by-tags, CT: jcategories-by-tags, CM: jcontent-metadata
Si vous avez appelé ce tableau à partir de la démo d'une action, la colonne la concernant est sur fond jaune.

Option A AL AC AS AT CT CM Description
principale ID(s) catégorie(s) séparé avec virgule, vide pour celui de l'article actuel ou 0 pour tout les IDs
maxi nombre maxi d'articles dans la liste. non précisé (par défaut) = tous
exclude 0 pour exclure l'article en cours
current toutes les catégories seront sélectionnées sauf celles indiquées dans l'option principale
no-published liste aussi les articles non publiés. Vrai par défaut
content-plugin prise en compte des plugins de contenu pour mots-clé content et intro. Peut échouer en cas d'appels récursifs
sort-by ordre de tri: title, ordering,created,modified,publish_up (par défaut),id,hits
sort-order ordre de tri : asc, desc (par défaut)
author filtre sur auteur: aucun (par défaut) OU id1,id2 OU article auteur de l'article en cours OU current utilisateur connecté.
template modèle de mise en page. Si vide le modèle est le contenu
main-tag balise pour le bloc englobant tous les articles. div par défaut, 0 pour aucun
main-style classes et styles inline pour bloc principal (inactif si main-tag=0)
main-class classe(s) pour bloc principal (inactif si main-tag=0)
item-tag balise pour le bloc d'un article. div par défaut, 0 pour aucun.
item-style classes et styles inline pour un article (inactif si art-tag=0)
item-class classe(s) pour un article (obsoléte) (inactif si art-tag=0)
date-format format pour les dates. '%e %B %Y' par défaut. (1)
date-locale localisation pour les dates au format 'fr_FR'. Celui du client par défaut.
featured-html code HTML pour article en vedette. Défaut: ⭐ ⭐
new-days 30 par défaut. nombre de jours depuis sa création pour considérer un article comme nouveau
new-html Code HTML pour le badge NEW. nouveau par défaut
image-src image utilisée si aucune image n'est trouvée dans l'article. Défaut: '//lorempixel.com/300/300'
image-alt texte alternatif si aucune image n'est trouvé dans l'article
tags-list-separator séparateur entre les mots-cles
tags-list-prefix texte avant les autres clés éventuelles si tag {tag-list}
tags-list-style classe ou style pour les autres mots-clés
no-content-html texte si aucun contenu
css-head code CSS dans le head
spécifique jcontent-list (ex article-category)
title titre HTML si article trouvé.
title-tag niveau du titre
title-style classes et styles inline pour le titre
title-class classe(s) pour le titre
list-style classes et styles inline pour la liste
list-class classe(s) pour la liste
class idem main-class (conservé pour compatibilité descendante)
style idem main-style (conservé pour compatibilité descendante)
spécifique jcontent-by-subcat
cat-level 0 a 99 - niveau maxi des sous-categories explorées
cat-tag Balise pour les lignes catégories. LI pour passer en mode list arborescente
cat-class classes et styles inline pour les catégories
cat-style classes et styles inline pour les catégories
cat-template modèle pour les lignes de categories
cat-root-view affiche l'unique categorie racine. si root=jamais, si plusieurs=toujours
cat-separator pour separer l'arborescence des categories
spécifique jcontent-metadata
meta-title-min alerte coloré si le titre contient moins de lettres
meta-title-max alerte coloré si le titre contient plus de lettres
meta-desc-min alerte coloré si la description contient moins de lettres
meta-desc-max alerte coloré si la description contient plus de lettres

(1) - Le format d'affichage est défini par l'option date-format. Sa valeur par défaut est : %e %B %Y qui affiche la date sous la forme 1 mai 2019.
Il s'agit de la codification PHP pour la fonction strftime. Les codes usuels sont %y année sur 2 chiffres, %Y année sur 4 chiffres, %m mois sur 2 chiffres, %b nom mois abrégé en 3 lettres, %B nom mois complet, %e jour (1-31), %d jour sur 2 chiffres (01-31), %A nom jour complet, %a nom jour abrégé, %H heure (00-23), %M minutes (00-59)

Les mots-clés

La table ci-dessous est un comparatif des mots-clés utilisés par les différentes actions Jxxx.
A: jcontent-in-content, AL: jcontent-list, AC: jcontent-by-categorie (jnews), AS: jcontent-by-subcat, AT: jcontent-by-tags, CT: jcategories-by-tags, CM: jcontent-metadata
Si vous avez appelé ce tableau à partir de la démo d'une action, la colonne la concernant est sur fond jaune.

Mot-clé A AL AC AS AT CT CM Description
##id## ID de l'article
##title## titre de l'article sans lien vers l'article
##title-link## titre de l'article avec lien vers l'article
##subtitle## sous-titre (partie du titre après le tilde) (1)
##maintitle## titre (partie du titre avant le tilde) (1)
##link## à utiliser comme argument de l'attribut href d'une balise a.
##intro## texte d'introduction de l'article au format HTML. (2)
##intro-text## texte d'introduction de l'article au format texte sans aucune balise HTML. (2)
##intro-text,100## variante qui permet de limiter le nombre de caractères affichés (100 dans cet exemple). (2)
##content## Le contenu si existant. (2)
##image## image d'introduction de l'article ou à défaut la première image trouvée dans le texte d'introduction....
##image-link## image avec lien vers l'article
##image-src## variante du mot-clé précédent qui permet un plus grand contrôle sur le résultat. (4)
##image-alt## idem
##date-crea## date de création (4)
##date-modif## date de modification (4)
##date-publish## date de publication de l'article (4)
##date-publish-end## date de fin de publication de l'article (4)
##date-featured## date de mise en vedette de l'article (4)
##date-featured-end## date de fin de mise en vedette de l'article (4)
##author## nom de l'auteur de l'article
##note## note sur l'article
##cat## nom de la catégorie
##cat-link## lien vers la catégorie
##new## badge nouveau si l'article est récent. Voir les options ‘new-jours’ et ‘new-html’
##featured## si article en vedette
##count## nombre d'article dans la catégorie
##hits## le nombre de vues de l'article
##tags-list## liste des mots-clés
##uplist## liste des actions dans l'article
##upnb## nombre d'actions dans l'article
##CF## CustomField. Remplacer CF par son nom ou son ID. Voir modèle avec %label%, %value% et %rawvalue%
##access## niveau d'accès requis
##meta-index## index ou no-index
##meta-follow## index ou no-index
##meta-title## longueur de la meta  title avec alerte colorée
##meta-desc## longueur de la meta description avec alerte colorée
##meta-key## liste des meta keywords
spécifique jcontent-by-subcat
##catpath## chemin des catégories parentes

(1) - il s'agit d'une astuce que j'utilise pour décomposer le titre d'un article en titre et sous-titre en les séparant par le caractère tilde (~). En dehors de la possibilité de styler différemment les 2 parties, un titre plus long est meilleur pour le référencement.
Concrétement, si le tag {subtitle} est présent dans votre template et que le titre contient un tilde, il sera scindé en {titre] et {subtitle}. Dans le cas contraire, le {subtitle} sera vide et {title}: contiendra la totalité du titre de l'article.

(2) - A la différence de Joomla, si l'introtext n'existe pas, il n'est pas remplacé par le contenu. Et vice-versa. Si le besoin existe, on peut créer un mot-clé "article,X" qui insère les X premiers caractères en supprimant les shortcodes UP.

(3) - Exemple de template: <img src="/{image-src}" alt="{image-alt}" class="img-sepia left" width="100px">.
si l'article ne contient pas d'image, le reste du code sera quand même inséré.

(4) - Le format d'affichage est défini par l'option date-format. Sa valeur par défaut est : %e %B %Y qui affiche la date sous la forme 1 mai 2019. Il s'agit de la codification PHP pour la fonction strftime. Les codes usuels sont %y année sur 2 chiffres, %Y année sur 4 chiffres, %m mois sur 2 chiffres, %b nom mois abrégé en 3 lettres, %B nom mois complet, %e jour (1-31), %d jour sur 2 chiffres (01-31), %A nom jour complet, %a nom jour abrégé, %H heure (00-23), %M minutes (00-59)

Attention : ne pas utiliser les mots-clés dans votre contenu

Si cela est impossible, remplacez l'accolade ouvrante par son code &#123;, soit pour id : &#123;id}.
Une autre méthode est de mettre en gras une partie : {<b>id</b>}.

Si vous l'utilisez avec une action csv2table, pour éviter le conflit avec le séparateur point-virgule, changer le séparateur utilisé ou mettre le contenu de la cellule entre guillemets. "&amp;#123;id}" ou {<b>id</b>}

Pour info, cette page utilise 10 action(s) :
upactionslist (1) tabslide (1) toc (1) table-sort