- Statut : non résolu
- Ce sujet contient 5 réponses, 3 participants et a été mis à jour pour la dernière fois par
gabier, le il y a 15 années et 3 mois.
-
AuteurMessages
-
14 décembre 2009 à 18 h 52 min #476892
Bonjour,
Ma configuration WP actuelle
– Version de WordPress : 2.8.4
– Thème utilisé : perso
– Extensions en place : cforms
– Nom de l’hebergeur : OVH
– Adresse du site : http://www.chomage-et-monnaie.org/wordpressProblème(s) rencontré(s) :
Bonjour,
J’ai fait une recherche sur mon sujet, le problème est qu’il y a tellement de posts sur les caractères accentués que je n’arrive pas à les éplucher tous pour trouver mon cas. Donc je m’excuse de poser cette question , en somme par paresse 😳Je voudrais avoir des noms de catégories avec des caractères accentués. Par exemple j’ai une catégorie « Actualité » je la veux « Actualité » et non « Actualite ». J’ai résolu le problème en codant partout le é en é (non seulement dans le nom de catégorie déclaré dans l’admin du blog, mais aussi dans tous les appels de fonction avec un paramètre impliquant le nom de catégorie, par exemple get_cat_id($nom_cat)).
Tout marchait nickel, jusqu’au moment, aujourd’hui où j’ai voulu configurer mes flux RSS.
Là aussi je veux un flux RSS dédié aux « Brèves d’Actualité ».
Donc je code bravement<?php $path=get_bloginfo('siteurl');$path="$path/";?>
…
<a href="
<?php $cat=get_cat_id('Actualité');
echo $path."?feed=rss2&cat=$cat";
?>
« >Brèves d’actualité</a>Et patatras 😮
L’appel au flux RSS fonctionne, mais celui-ci refuse de s’afficher (IE7 et Firefox) à cause du é qui se retrouve dans ledu fichier xml fabriqué par WordPress. Message d’erreur :
« Erreur d’analyse XML : entité non définie
Emplacement : http://www.chomage-et-monnaie.org/wordpress/?feed=rss2&cat=51
Numéro de ligne 12, Colonne 43 : <title>Chômage et Monnaie » Actualité</title>Extrait du source de la page Firefox :
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
>
<channel>
<title>Chômage et Monnaie » Actualité</title>Alors là, je ne sais plus quoi faire. Il est vrai que je n’ai jamais vraiment compris les problèmes de systèmes de codages des caractères…
🙂 Gabier
14 décembre 2009 à 20 h 01 min #704515Il est vivement recommandé de ne pas utiliser de caractères accentués dans les identifiants de catégories. Cela est indépendant du nom de la catégorie qui ne sert qu’à l’affichage et peut comporter des accents, de préférence encodés sous forme d’entités HTML (donc ici le « é » encodé « é »).
14 décembre 2009 à 20 h 56 min #704516Bonsoir,
Je suis d’accord, d’ailleurs ma catégorie de nom « Actualité » a pour identifiant « actualite », sans accent.
Mais ça ne résoud pas le problème. Car mon code renvoie bien à l’url
http://monsite/?feed=rss2&cat=51
La catégorie est envoyée à WordPress par son ID et non par son nom. C’est WordPress lui-même qui va chercher le NOM de la catégorie et qui envoie un é dans le fichier XML du flux RSS.
Ce qui paraît normal puisque ce titre va s’afficher en tête du flux RSS.
Alors, pourquoi ça coince ?🙂 Gabier
15 décembre 2009 à 8 h 27 min #704517Bon, j’ai fait des essais et je suis arrivé à une solution, mais j’explique sur mon exemple car ça peut servir à tout le monde. Je suis en UTF-8 aussi bien dans WordPress que dans la Base de Données.
J’ai une catégorie « Actualité » d’identifiant « actu ».
Mon problème est de récupérer le numéro de catégorie un peu partout dans le thème, et en plus, d’avoir un flux RSS qui marche sur cette catégorie et seulement elle.1er cas : A la déclaration du nom de catégorie, je saisis « Actualité »
get_cat_ID(‘Actualité’) renvoie bien le N° (disons nn)
Mais l’appel à http://monsite/?feed=rss2&cat=nn se plante à cause du &2ème cas : A la déclaration je saisis « Actualité »
get_cat_ID(‘Actualité’) renvoie 0 (échec)
get_cat_ID(‘Actualite’) on remplace le « é » par un « e » et ça renvoie bien nn. Mais je n’ai vu ça nulle part dans les spécifs de get_cat_id() et ça ressemble plus à une tolérance qu’à autre chose.
On a aussi get_category_by_slug(‘actu’) qui renvoie l’objet « Actualité » avec nn dans sa propriété $term_id
Alors l’appel à http://monsite/?feed=rss2&cat=nn fonctionne correctement.Bien que ça fasse un peu recette de cuisine, c’est clair ?
🙂 Gabier
PS Je voudrais mettre « [RESOLU] » dans le titre mais je ne sais pas comment on fait.
15 décembre 2009 à 15 h 57 min #704518Je crois qu’il suffit de cliquer sur éditer le message et de modifier le titre 😉
15 décembre 2009 à 16 h 11 min #704519Ben non, ou alors je suis bigleux, mais quand je clique sur « Editer », j’obtiens une page où je peux modifier le texte, mais je ne vois le titre nulle part.
Peut-être sulement les modos le font ?
🙂 Gabier
-
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.