Messages: 236

Enregistré le: 7 Sep 2005

Message le Sam Jan 21, 2006 11:16

Bonjour,

Je n'arrive pas à avoir d'info précise sur les eventuels modules ou modifs à réaliser sur dotclear pour avoir un referencement correct.

Il y a des mods sur phpbb par exemple qui fonctionnent très bien mais pour dotclear je n'ai rien trouvé de probant notamment au niveau de l'url rewriting.

Auriez vous des infos à ce sujet ?

Merci
Haut
9 Réponses
Messages: 2124

Enregistré le: 6 Jan 2004

Message le Sam Jan 21, 2006 11:38

Pour avoir des urls plus abordables tu as un plugin, ici :

http://www.dotclear.net/trac/wiki/DotClear/Plugins
Haut
Messages: 1206

Enregistré le: 2 Déc 2004

Message le Sam Jan 21, 2006 18:10

sur dotclear les url sont reécrites de base si tu as choisi le path_info
Haut
Messages: 236

Enregistré le: 7 Sep 2005

Message le Dim Jan 22, 2006 0:58

Ok pour les url c'est bon

Ce qui me gene c'est que je ne trouve pas de balise "description" dans mes pages est-ce normal :/
Haut
Messages: 2151

Enregistré le: 18 Avr 2005

Message le Dim Jan 22, 2006 1:18

C'est entierement normal.
Il n'y en a pas de base.
A toi de modifier le code pour en avoir une :wink:
Haut
Messages: 236

Enregistré le: 7 Sep 2005

Message le Lun Jan 23, 2006 23:34

Bah j'ai vu le code qq part mais je n'arrive pas à le retrouver je sais qu'il faut déclarer la variable dans le template mais après...
Haut
Messages: 25

Enregistré le: 22 Juin 2004

Message le Lun Jan 30, 2006 17:35

cette petite fonction fait normalement l'affaire, à mettre dans prepend.php du thème utilisé s'il y en a un, ou dans prepend.php du thème par défaut, elle renvoie

    la description de la catégorie en mode cat
    les 300 premiers caractères du chapô (ou du billet s'il n'y a pas de chapô) débarrassés du markup html
    la description du weblogue dans les autres modes


Code: Tout sélectionner
/**
@function dcMetaDescription

Affichage de la description de la catégorie, du billet ou du blog
pour meta description

@param integer length Entier précisant le nombre de caractères à afficher
@param string  hellip Indicateur de texte tronqué
*/
function dcMetaDescription ($length=300,$hellip='(...)')
{
   global $cat_id, $blog, $mode, $news;
   if ($mode == 'cat') {
      if ($cat_id != '') {
       $rscat = $blog->getCat($cat_id);
          if (!empty($rscat)) {
            $desc = $rscat->f('cat_desc');
               if ($desc != '') {
              $res .= sprintf($desc);
              printf(ereg_replace("\r?\n", " ", util::cutString($res,$length).$hellip));
               } else {
            $res = dc_blog_desc;
              printf($res);
            }
          }
        }      
   } elseif ($mode == 'post') {
      
      if ($news->f('post_chapo') != '') {
      printf (ereg_replace("\r?\n", " ", util::cutString(strip_tags($news->getChapo()),$length).$hellip));
      } else {
      printf(ereg_replace("\r?\n", " ", util::cutString(strip_tags($news->getContent()),$length).$hellip));
      }
   } else {
      $res = dc_blog_desc;
        printf($res);
   }
}


et l'appeler dans le template

<meta name="DC.description" content="<?php dcMetaDescription() ?>" />

la fonction est encore en test et a un petit défaut : il ne faut pas avoir de guillemets doubles dans les premiers caractères d'un billet

si un spécialiste des expressions rationnelles passe par ici, d'ailleurs...
Haut
Messages: 1006

Enregistré le: 4 Juin 2005

Message le Lun Jan 30, 2006 21:39

Bonsoir
ça tomble pile, je suis entrain de référencer un blog.
pourquoi ne pas nomer la meta "description" au lieu de "DC.description". Sur le blog de wri il y'a "description" !
Sinon quelqu'un connait d'autres astuces pour dotclear.
Merci Clair de Lune pour ton code, je vais regarder voir si je peux y ajouter autre chose.

Merci
Haut
Messages: 25

Enregistré le: 22 Juin 2004

Message le Lun Jan 30, 2006 21:59

euh...si tu améliores le code ci dessus, et notamment si tu peux résoudre le problème de doubles guillemets, ce serait gentil de poster la réponse ici

pour le DC.description au lieu de Description, c'est la convention du Dublin Core, DotClear utilise d'ailleurs DC.title, j'ai jugé meilleur de le garder parce que c'est une sorte de norme, peu appliquée certes, tu peux toujours mettre ce que tu veux
Haut
Messages: 738

Enregistré le: 6 Mai 2005

Message le Sam Avr 21, 2007 23:52

Pour éliminer la prise en compte des guillemets, par le parseur HTML du navigateur il suffit de mettre htmlentities juste avant les printf de la fonction
Haut