Meta titres des catégories
Bonjour,
Quand je clique sur ma catégorie, celle-ci affiche le meta titre + le nom du site automatiquement.
J'aimerais afficher uniquement le meta titre de ma categorie pour google.
J'ai modifié le header mais là ça n'affiche pas la balise titre de la catégorie, juste le nom de la categorie !
<title>
<?php
if($plxShow->mode() == 'home') {
// Page d'accueil → titre défini pour la page
$plxShow->pageTitle();
} elseif($plxShow->mode() == 'article') {
// Article → afficher uniquement le titre de l'article
$plxShow->artTitle();
} elseif($plxShow->mode() == 'categorie') {
// Page de catégorie → afficher uniquement le meta titre de la catégorie
$plxShow->catName('meta');
} else {
// Autres pages (statiques, recherche, etc.)
$plxShow->pageTitle();
}
?>
</title>
Mais $plxShow->catName('meta'); ne marche pas pour afficher le meta titre .
Comment faire ? Merci
0
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Solution pour le header pour ne pas afficher le titre du site dans le meta titre dans chaque page, article et cat, remplacer la balise titre par ceci :
<title> <?php $mode = $plxShow->mode(); // Page d'accueil if($mode == 'home') { $plxShow->pageTitle(); } // Page article elseif($mode == 'article') { $plxShow->artTitle(); } // Page de catégorie elseif($mode == 'categorie' || $mode == 'cat') { // On récupère les infos de la catégorie active $catId = $plxShow->plxMotor->cible; $titleHtml = $plxShow->plxMotor->aCats[$catId]['title_htmltag']; $catName = $plxShow->plxMotor->aCats[$catId]['name']; // Si le champ "Contenu balise title" est renseigné, on l'affiche if(!empty($titleHtml)) { echo plxUtils::strCheck($titleHtml); } else { // Sinon on affiche le nom de la catégorie echo plxUtils::strCheck($catName); } } // Autres pages else { $plxShow->pageTitle(); } ?> </title>Résolu
Bonjour,
Dans ton thème, utilise la balise (fichier header.php) comme ceci :
<title><?php $plxShow->pageTitle('categorie=#title'); ?></title>Voir la doc de plxShow::pageTitle() dans le fichier core/lib/class.plx.show.php (ligne 202)
Accès à mon dépôt de plugins et thèmes
installe PluXml plus vite que ton ombre avec kzInstall2
https://forum.pluxml.org/discussion/7878/modification-du-title-dans-une-categorie-de-pages#latest
auriez-vous une solution ?
@+
mes sites principaux : fonds d'écran gratuits - longue traîne - référencer votre site - brocante en ligne -
@bg62,
Pour les tags, c'est un peu plus compliqué. Mais ceci doit marcher :
<title><?php $plxShow->pageTitle('categorie=#title;tags=' . ucfirst($plxShow->plxMotor->cible) .' - #subtitle'); ?></title>Accès à mon dépôt de plugins et thèmes
installe PluXml plus vite que ton ombre avec kzInstall2
@bazooka07 super !!! ça fonctionne nickel ( tout en sachant qu'il ne faut pas faire de doublons avec les noms des catégories )
grands mercis
je m'y mets
mes sites principaux : fonds d'écran gratuits - longue traîne - référencer votre site - brocante en ligne -
Pas réussi à faire afficher la meta description d'une catégorie quand on a cliqué sur la catégorie...
Edit : ok en affichant la meta titre maintenant la meta description s'est affichée.
Je vous partage mon header avec le seo qui se remplit avec les parametres du site (schema basique, og, twitter), avec une image de bannière bg.webp. Si vous voyez des choses manquantes niveau seo n'hésitez pas.
Et sinon enlever la balise h5 du header du theme defaut svp, les sous-titres doivent s'afficher dans l'ordre, j'ai commenté ça :
PS: je viens de mettre à jour les og url et twitter url si un modérateur peut ajuster l'affichage du code...
<?php if (!defined('PLX_ROOT')) exit; ?> <!DOCTYPE html> <html lang="<?php $plxShow->defaultLang() ?>"> <head> <meta name="robots" content="index, follow"> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Organization", "name": "<?php echo html_entity_decode($plxShow->plxMotor->aConf['title'], ENT_NOQUOTES, 'UTF-8'); ?>", "description": "<?php echo html_entity_decode($plxShow->plxMotor->aConf['meta_description'], ENT_NOQUOTES, 'UTF-8'); ?>", "url": "<?php echo $plxShow->plxMotor->racine; ?>", "image": "<?php echo $plxShow->plxMotor->racine; ?>themes/defaut/img/pluxml-logo-black.png" } </script> <meta charset="<?php $plxShow->charset('min'); ?>"> <meta name="viewport" content="width=device-width, user-scalable=yes, initial-scale=1.0"> <!-- Préchargement du fichier CSS critique --> <link rel="preload" href="<?php $plxShow->template(); ?>/fonts/OpenSans-Regular-webfont.woff" as="font" type="font/woff" crossorigin="anonymous" /> <link rel="preload" href="<?php $plxShow->template(); ?>/css/plucss.min.css?v=1.3.1" as="style" type="text/css"> <link rel="preload" href="<?php $plxShow->template(); ?>/css/theme.min.css?v=5.8.21" as="style" type="text/css"> <link rel="preload" href="<?php $plxShow->template(); ?>/img/bg.webp" as="image" type="image/webp" fetchpriority="high"> <title><?php if($plxShow->mode() == 'home') { // Page d'accueil → titre défini pour la page $plxShow->pageTitle('categorie=#title'); } elseif($plxShow->mode() == 'article') { // Article → afficher uniquement le titre de l'article $plxShow->artTitle('categorie=#title'); } elseif($plxShow->mode() == 'tags') { // Page tags → ajouter le tag dans le titre $plxShow->pageTitle('categorie=#title;tags=' . ucfirst($plxShow->plxMotor->cible) . ' - #subtitle'); } else { // Autres pages (catégories, static, etc.) → titre par défaut $plxShow->pageTitle('categorie=#title'); } ?></title> <?php // meta description ob_start(); $plxShow->meta('description'); $meta = ob_get_clean(); // Extraire le contenu entre content="" preg_match('/content="([^"]*)"/', $meta, $matches); $desc = isset($matches[1]) ? html_entity_decode($matches[1], ENT_QUOTES, 'UTF-8') : ''; ?> <meta name="description" content="<?= $desc ?>"> <meta name="author" content="<?php echo html_entity_decode($plxShow->plxMotor->aConf['title'], ENT_NOQUOTES, 'UTF-8'); ?>" /> <?php $plxShow->meta('keywords'); ?> <meta property="og:type" content="article"> <meta property="og:url" content="<?php $mode=$plxShow->mode(); echo ($mode=='home')?$plxShow->racine():($mode=='article'?$plxShow->artUrl():($mode=='categorie'||$mode=='cat'?$plxShow->catUrl($plxShow->plxMotor->cible):($mode=='static'?$plxShow->staticUrl():($mode=='tags'?$plxShow->plxMotor->urlRewrite('?tag/'.plxUtils::urlify($plxShow->plxMotor->cible)):$plxShow->racine())))); ?>"> <meta property="og:title" content="<?php $mode=$plxShow->mode();if($mode=='home'){echo html_entity_decode($plxShow->pageTitle(),ENT_NOQUOTES,'UTF-8');}elseif($mode=='article'){echo html_entity_decode($plxShow->artTitle(),ENT_NOQUOTES,'UTF-8');}elseif($mode=='categorie'||$mode=='cat'){$catId=$plxShow->plxMotor->cible;$titleHtml=$plxShow->plxMotor->aCats[$catId]['title_htmltag'];$catName=$plxShow->plxMotor->aCats[$catId]['name'];if(!empty($titleHtml)){echo html_entity_decode(plxUtils::strCheck($titleHtml),ENT_NOQUOTES,'UTF-8');}else{echo html_entity_decode(plxUtils::strCheck($catName),ENT_NOQUOTES,'UTF-8');}}else{echo html_entity_decode($plxShow->pageTitle(),ENT_NOQUOTES,'UTF-8');}?>"> <?php ob_start(); $plxShow->meta('description'); $meta = ob_get_clean(); // Extraire le contenu entre content="" preg_match('/content="([^"]*)"/', $meta, $matches); $desc = isset($matches[1]) ? html_entity_decode($matches[1], ENT_QUOTES, 'UTF-8') : ''; ?> <meta property="og:description" content="<?= $desc ?>"> <meta property="og:image" content="<?php echo $plxShow->plxMotor->racine; ?>themes/defaut/img/bg.webp"> <meta name="twitter:card" content="summary_large_image"> <meta name="twitter:url" content="<?php $mode=$plxShow->mode(); echo ($mode=='home')?$plxShow->racine():($mode=='article'?$plxShow->artUrl():($mode=='categorie'||$mode=='cat'?$plxShow->catUrl($plxShow->plxMotor->cible):($mode=='static'?$plxShow->staticUrl():($mode=='tags'?$plxShow->plxMotor->urlRewrite('?tag/'.plxUtils::urlify($plxShow->plxMotor->cible)):$plxShow->racine())))); ?>"> <meta name="twitter:title" content="<?php $mode = $plxShow->mode(); if($mode == 'home') { echo html_entity_decode($plxShow->pageTitle(), ENT_NOQUOTES, 'UTF-8'); } elseif($mode == 'article') { echo html_entity_decode($plxShow->artTitle(), ENT_NOQUOTES, 'UTF-8'); } elseif($mode == 'categorie' || $mode == 'cat') { $catId = $plxShow->plxMotor->cible; $titleHtml = $plxShow->plxMotor->aCats[$catId]['title_htmltag']; $catName = $plxShow->plxMotor->aCats[$catId]['name']; if(!empty($titleHtml)){ echo html_entity_decode(plxUtils::strCheck($titleHtml), ENT_NOQUOTES, 'UTF-8'); } else { echo html_entity_decode(plxUtils::strCheck($catName), ENT_NOQUOTES, 'UTF-8'); } } else { echo html_entity_decode($plxShow->pageTitle(), ENT_NOQUOTES, 'UTF-8'); } ?>"> <?php ob_start(); $plxShow->meta('description'); $meta = ob_get_clean(); preg_match('/content="([^"]*)"/', $meta, $matches); $desc = isset($matches[1]) ? html_entity_decode($matches[1], ENT_QUOTES, 'UTF-8') : ''; ?> <meta name="twitter:description" content="<?= $desc ?>"> <meta name="twitter:image" content="<?php echo $plxShow->plxMotor->racine; ?>themes/defaut/img/bg.webp"> <link rel="icon" href="<?php $plxShow->template(); ?>/img/favicon.png" /> <link rel="stylesheet" href="<?php $plxShow->template(); ?>/css/plucss.min.css?v=1.3.1" media="screen,print"/> <link rel="stylesheet" href="<?php $plxShow->template(); ?>/css/theme.min.css?v=5.8.21" media="screen"/> <?php $plxShow->templateCss(); $plxShow->pluginsCss(); ?> <link rel="alternate" type="application/rss+xml" title="<?php $plxShow->lang('ARTICLES_RSS_FEEDS') ?>" href="<?php $plxShow->urlPostsRssFeed($plxShow->plxMotor->mode) ?>" /> <link rel="alternate" type="application/rss+xml" title="<?php $plxShow->lang('COMMENTS_RSS_FEEDS') ?>" href="<?php $plxShow->urlRewrite('feed.php?rss/commentaires') ?>" /> </head>