Bon voilà j'ai presque terminé le rewriting de l'agrégateur RSS dont j'en ai parlé ICI
Et je l'ai mis en ligne : http://www.unicornis.org/rss-actualites-news.html
Il me manque plus qu'à supprimer les liens vers les pages .php, les duplicates donc.
Sinon voici mon problème pour le moment :
J'ai certains accents qui passent mal à la fonction format_url de phpBBSEO
- Code: Tout sélectionner
1. function format_url( $url, $type = 'topic' ) {
2. $url = strip_tags($url);
3. $url = htmlentities($url, ENT_COMPAT, $this->encoding);
4. $url = preg_replace( "`&([a-z])(acute|uml|circ|grave|ring|cedil|slash|tilde|caron|lig);`i","\\1", $url );
5. $url = preg_replace('`&(amp;)?#?[a-z0-9]+;`i','-',$url);
6. $url = preg_replace( array("`[^a-z0-9]`i","`[-]+`" ) , "-", $url);
7. $url = ( $url == "" ) ? $type : strtolower(trim($url, '-'));
8. return $url;
9. }
exemple :
- Le titre :
Une édition spéciale pour The Witcher
- l'URL :
http://www.unicornis.org/une-dition-sp- ... -n344.html
Et d'autres qui passent très bien, toujours sur la même page :
- Le titre :
Arecibo découvre le premier système triple d'astéroïdes
- l'URL :
http://www.unicornis.org/arecibo-decouv ... -n345.html
Voici le code qui crée ces liens :
- Code: Tout sélectionner
$news_url = $phpbb_seo->format_url(smart_utf8_decode($val["titre"])).'-n'.$val["ID"].'.html';
echo "class=a href='".$news_url;
} else {
// si c'est un news à description sélectionnée, stabilote
if(@$_GET["news"]==$val["ID"]) echo "class=stabilo ";
// lien vers le site
echo "target='_blank' href='".$val["lien"];
}
echo "'>".smart_utf8_decode($val["titre"])."</A>
<i>[".$val["titre2"]."]</i>
Alors ça doit être une histoire d'encodage des caractères, suivant l'encodage des flux RSS. Mais bon tout s'affiche comme il faut dans le texte et les titres de page aussi. Il n'y a que les urls avec le titre injecté (passé sous format_url de phpBB SEO) qui bug...
Et pour les duplicates, comment je peux faire ? J'ai le Zero Duplicate d'installé sur le phpBB déjà comment appliquer le Zero Duplicate ici ?
Merci d'avance pour votre aide.

Français |
Anglais

