Mises à jour de janvier, 2008 Activer/désactiver les fils de commentaires | Raccourcis clavier

  • freyafinker 5:08 pm le January 20, 2008 Permalien | Réponse
    Tags : Encodage, Simplepie, ,   

    Simple utilisation de Simplepie 

    Je voudrais simplement afficher quelques flux RSS sur un blog WordPress, en français, anglais, arabe et hébreux.

    Simplepie, qui traite les problèmes d’encodage, est donc la solution de choix.

    Pour pouvoir modifier le code de mon blog wordpress, il faut bien évidemment qu’il soit installé chez mon hébergeur, et non pas chez WordPress.com.

    J’ai donc téléchargé la toute dernière version de WordPress : 2.3.2. qui, me semble-t-il, n’est pas encore traduite en français, et je l’ai installée en 5 minutes.

    J’ai téléchargé la toute dernière version de Simplepie : Simplepie 1.1 (attention, il semble qu’elle utilise PHP 5 uniquement).

    J’ai pas mal tâtonné pour savoir où placer simplepie.inc, parce que j’allais devoir l’utiliser dans un template wordpress qui est enfoui dans l’arborescence des fichiers. Finalement, je l’ai mis dans la racine du site, avec l’index.php de mon WordPress, qui ne fait qu’appeler les différents éléments du template.

    Du coup, j’ai dû créer le dossier cache directement à la racine de mon WordPress également. J’ai fixé les droits d’écriture (chmod à 777). Il restait à mettre les fichiers de simplepie au bon endroit, et j’ai donc transféré tout le dossier idn à la racine de WordPress. Je conseille vraiment de ne pas modifier l’emplacement du cache, car il est appelé de très nombreuses fois par simplepie.inc. Les dossiers cache et idn doivent donc être dans le même répertoire que simplepie.inc.

    Ensuite, pour lancer simplepie, j’ai pas mal bataillé avec les tutoriaux du site (problèmes de fonctions non définies, de noms d’objets incorrects…). J’ai fini par m’en sortir en prenant le code dans le dossier de demo qui est dans le package Simplepie (au moins ce code est cohérent avec lui-même).

    J’ai donc copié de grands passages de multifeeds.php et ça a fini par marché…

    Juste une remarque, il faut modifier le chemin de simplepie.inc :

    require_once(‘simplepie.inc’);
    require_once(‘./idn/idna_convert.class.php’);

    Sauf que, avec tout ce temps perdu, je n’ai pas réussi à définir le nombre d’éléments de chaque flux à agréger. J’adopte temporairement la solution de traiter chaque flux séparément.

    foreach($feed->get_items(0,1) as $item):

    (modifier les paramètres entre parenthèses, c’est tout ce que j’ai trouvé pour l’instant pour ne faire afficher qu’un seul item par flux)

    et je ne sais toujours pas non plus comment limiter la longueur du texte agrégé.
    Il me vient à l’esprit que le plugin SimplepieWP, permettait de faire tout cela avec le sourire.
    A suivre… (la semaine prochaine, ça se fera peut-être en 5 minutes…).

    Ah oui, pour voir le résultat (pour l’instant un seul flux agrégé), c’est ici.

    Publicités
     
    • lespacearcenciel 5:13 le février 4, 2008 Permalien | Réponse

      Bonsoir Dilett,

      J’aurais une petite question :

      Existerait-il une solution simple et efficace pour limiter à 50 l’affichage de mes pages dans ma sidebarre sous WordPress ? Sans être pénalisé pour le référencement des pages qui se retrouveraient dès lors et de ce fait cachées, c’est à dire hors sidebarre.
      Est-ce que le plugin ( MyPageOrder) peut le permettre ? Dans le cas contraire, existerait-il un autre plugin me permettant d’agir sans intervention au niveau du code ?
      S’il n’en existe pas, existe-il une autre solution ?

      Je demande, on ne sait jamais. J’ai bien essayé de demander sur WordPress France, mais les réponses que j’ai obtenues ne sont pas claires…

      Si tu as une idée…

      Bises A+,

      Hugues 😉

  • freyafinker 9:26 pm le September 28, 2007 Permalien | Réponse  

    Annoncing la « Pile Freemen 2.0 » 

    Voilà, et en plus j’adore le template wordpress !

    Je trouve qu’elle a de la gueule !

    http://agir.autresmondes.eu/wordpress/

    Impossible de dire si c’était facile ou difficile à réaliser.

    Rendez-vous bientôt pour les améliorations (agrégation conditionnelle des posts)

     
  • freyafinker 2:29 pm le September 28, 2007 Permalien | Réponse  

    Smart RSS 

    Après vérification Smart RSS permet bien d’importer un flux RSS par article dans un blog WordPress.

    J’ai un peu bataillé vu la maigreur des instructions sur la page destinée à ce plugin : http://www.devplug.net/smartrss-plugin/

    Encore une fois je ne remercie pas le commentateur (Night Angel) bien intentionné qui m’a montré que ce que je cherche à faire est disponible depuis juillet 2006 déjà !

    J’ai donc téléchargé le plugin, je l’ai activé dans la page Plugins de mon wordpress, et j’ai déplacé le fichier wp_smartrss.php à la racine de WordPress comme il était prescrit. J’ai ensuite essayé de lancer wp_smartrss.php, et j’ai obtenu une page blanche.

    C’est tout à fait par hasard que aujourd’hui, j’ai découvert que SmartRSS était passé dans le menu options de mon wordpress, et que c’est là qu’on entre les flux RSS que l’on veut importer. Et lorsqu’il y a des flux à importer, miracle, il suffit de lancer wp-smartrss.php pour commencer l’importation. La page n’est plus blanche.

    Jusque là l’encodage a l’air parfait. Une table est créée dans la base de données avec la liste des flux, j’ai donc pu insérer les 140 flux grâce à l’importation d’un fichier excel (csv) dans la table.

    Bon, il y a quelques petites imperfections, l’affichage ne comprend pas le nom du blog d’origine ce qui est un peu génant. Et puis, je n’ai pas encore compris comment programmer une « tâche en cron » (ouais j’apprends des langues) pour que l’importation soit automatique, et on va voir aussi comment se passent les importations successives.

    Et enfin mon hébergeur n’accepte pas les contenus politiques !

    Et finalement, oui il y a encore moyen de s’amuser avec Simplepie pour me faire mon Smart RSS à moi.

     
    • nat 12:30 le juillet 8, 2008 Permalien | Réponse

      bonjour, j’ai instalé smartrss et ca fonctionne plutot bien. Cela dit meme si il m’annonce une erreur fatale il integre bien le contenu rss et le transforme en articles. Cependant il n’importe pas les images … avez vous reussi à le faire fonctionner ? et jusqu’a quel point ?

    • freya 1:00 le juillet 8, 2008 Permalien | Réponse

      J’ai utilisé smartrss pour importer article par article les flux rss dans un blog wordpress. Dans ce cas j’ai aussi les images.
      Sinon, pour importer un flux dans une page, je recommanderais plutôt d’utiliser Simplepie (les images sont présentes).
      (https://freyafinker.wordpress.com/category/simplepie/)

  • freyafinker 1:36 pm le September 25, 2007 Permalien | Réponse  

    Ajuster Simplepie et la fonction d’import de WordPress 

    La bonne nouvelle, c’est que simplepie_wordpress est composé d’un seul fichier, écrit dans un php que je comprends. Il suffit apparemment de séparer le titre du contenu pour envoyer chaque item d’un flux rss dans un article de WordPress.

    Mais cela est fastidieux pour 140 flux et donc j’essaie d’utiliser la fonction d’import de WordPress. Ce n’est pas très clean : je vais faire semblant d’uploader un fichier que je n’utiliserai pas tout en faisant générer les paramètres à importer par SimplePie.

    L’heure arrive où je suis définitivement dégoûtée de la programmation et abrutie, je vais donc devoir m’arrêter là avec un chantier en cours, ne sachant pas quand je pourrai reprendre. Remarque : je n’éprouve pas le même dégoût lorsque j’ai obtenu quelque succès dans la journée.

    Si j’avais su j’aurais commencé en moins ambitieux, en insérant un flux dans un article.

     
  • freyafinker 8:22 am le September 1, 2007 Permalien | Réponse  

    Comment utiliser Simplepie ? 

    C’est simple, Simplepie, il suffit d’y croire. J’ai dû pêcher par manque de foi.

    Voici les erreurs que j’ai commises :

    1- J’ai téléchargé le package et j’ai créé sur le serveur un dossier php et un dossier cache, mais j’avais mal lu, le dossier cache doit être dans le dossier php. (d’où j’avais des erreurs du type cannot write cache). J’ai fixé les droits d’écriture de mon dossier cache (chmod à 777) et ça marche. Pour d’autres c’est chmod à 755.

    2- J’ai longtemps cherché un fichier exemple pour lancer simplepie. Finalement je l’ai trouvé dans le dossier demo, c’est multifeeds.php. Il est bien documenté et il suffit d’y changer quelques paramètres, comme par exemple y entrer la liste des flux RSS que l’on veut agréger.

    3- Il faut faire hyper attention au chemin des fichiers qui sont appelés par le script. Par exemple require_once(‘./simplepie.inc’); Dans le même registre, je n’avais pas d’affichage d’images tant que je n’ai pas modifié ce chemin dans le fichier handler_image.php.

    4- L’encodage: j’avais de méga problèmes d’encodage car j’essayais de lire les fluxRSS à partir d’une base de données mysql. Les textes m’apparaissaient en hiéroglyphes d’une langue encore inconnue de moi. C’est là que je me suis aperçue que ma bdd était en latin_swedish, mais même si je la passe en UTF-8, le problème persiste. C’est un grand mystère.

    5- Pour l’instant, je suis tellement content de voir un agrégateur aussi beau, que je vais lui donner les flux de la liste freemen à la main.

    6- L’étape suivante est l’import dans WordPress, il existe un plugin mais ça demande tout de même de mettre les mains dans le camboui.

    7- Pour avoir un aperçu du résultat qui m’a pris 15 jours au lieu de 30 minutes, c’est ici.

    8- Ah oui, j’oubliais, merci Christophe.

     
    • freyafinker 12:13 le septembre 9, 2007 Permalien | Réponse

      Un grand espoir pour le problème d’encodage lorsqu’on va chercher les données dans la base de données : envoyer les headers :
      header(‘Content-type:text/html; charset=UTF-8’)

      A suivre…

    • Christophe Lefevre 11:46 le septembre 13, 2007 Permalien | Réponse

      Et bien voilà. Félicitation

      C’est peut être ennuyant de passer des jours à chercher une solution à un problème, mais c’est comme ça qu’on apprend le mieux.

  • freyafinker 4:56 pm le August 19, 2007 Permalien | Réponse  

    Simplepie pas si simple 

    Monsieur Christophe Lefevre, je ne vous remercie pas. Dire à quelqu’un yaka utiliser Simplepie sans même lui indiquer un tutorial didactique sur la procédure à suivre (et lui faire perdre un après-midi pour pas un rond), ce n’est pas fair-play. C’est pourquoi je pense qu’il y a un créneau à prendre dans la série informatique pour les nuls.

    J’ai tout d’abord été surprise d’apprendre que Simplepie est une classe php. Je ne connaissais pas ce gros mot. J’ai failli abandonner et aller me promener puis j’ai découvert que MagpieRSS était aussi une classe php, ouf on a eu chaud.

    J’ai suivi les instructions pour installer Simplepie, adressées aux spécialistes, et réussi comme une grande à trouver un  script destiné à lancer Simplepie (un programme qui appelle la classe). Malheureusement, il génère des erreurs chez moi.

    MagpieRSS utilisait un programme appelé Feedparser qui appelait la fonction et il était écrit dans un langage que je comprenais. Pour Simplepie, c’est moins transparent pour moi, et même pas du tout. A force d’écumer les forums, on peut voir la liste des bugs, c’est pourquoi je doute que la solution idéale soit trouvée. De plus, en utilisant les programmes de demo, j’obtiens une erreur d’écriture dans le cache. Il semblerait que mon hébergeur n’autorise pas la création de nouveaux fichiers dans un dossier qui a pourtant un chmod à 777.

    Après ces tâtonnements, les vacances sont finies et l’agrégateur est donc reporté sine die. Vous pouvez tout de même avoir un aperçu des articles des freemen et des articles du réseaulibre en consultant les sites correspondants.

    Arf, il y a un freemen qui a oublié de fermer sa balise souligné et qui me souligne toutes les entrées !

     
    • Christophe Lefevre 10:59 le août 22, 2007 Permalien | Réponse

      désolé, je t’ai conseillé Simplepie parce que il est de loin le plus efficace.

      En effet, après avoir passé 1 semaine à tourné en rond pour obtenir un parsing efficace des flux rss malgré les différences d’encodage avec de nombreuses classe tel que MagpieRSS j’ai fini par trouver Simplepie qui fonctionnait correctement à 95% ( environ 60% seulement pour MagpieRSS) et j’ai décortiqué tout le script pour en faire une fonction exploitée par Blogasty et TheFeedr.

      Je n’ai pas pu te donner de Tuto car j’en connais aucun en Français, toute la documentation (très complète celà dit) étant en Anglais.

      Je n’ai pas eu le moindre soucis avec SimplePie,

      voilà comment j’ai installé
      – créer un répertoire (ex rssread/)
      – copie dans celui ci simplepie.inc
      – copie dans celui ci le script qui va utiliser la classe
      – création dans celui ci un dossier « cache » avec un chmod 755

      et après ça, chez moi ça marche

    • Freya Finker 10:12 le août 23, 2007 Permalien | Réponse

      Désolée de t’avoir agressé, c’était pour te faire revenir. Tes explications m’orientent vers une solution pour les erreurs de cache, j’avais fait un répertoire cache à l’extérieur du répertoire contenant simplepie.inc et mis le chmod à 777.
      Sinon, je suis preneuse du tuto en anglais si c’est plus clair que celui du site simplepie qui s’adresse aux pros. Merci pour ton aide.

    • freyafinker 3:01 le août 25, 2007 Permalien | Réponse

      J’ai réussi à faire fonctionner le truc à peu près après avoir changé le cache de répertoire. Cependant, je n’ai aucune image pour l’instant et l’encodage est atroce…

      Bon d’accord j’ai fait ça un peu vite et n’importe comment en incorporant un script php qui va chercher les flux RSS dans une base de données.

      Pas d’échappatoire à décortiquer le script !

    • Christophe Lefevre 11:50 le août 28, 2007 Permalien | Réponse

      Je sais que ça peut être galère, le RSS, SimplePie marche plutôt bien pour moi, mais évidement, les difficultés d’afficher des textes de provenances directes sur une même page sont courrantes

      – « RSS dans une base de données »
      attention à l’encodage de ta DB,

      – si tu regarde http://thefeedr.com/ ça marche pas mal, une fois bien adapté à ces besoins

    • freyafinker 6:39 le septembre 1, 2007 Permalien | Réponse

      Effectivement l’encodage est parfait si je rentre la liste des flux dans le script d’affichage.
      C’est le fait d’aller interroger ma base de données qui me bousille l’encodage.
      Pourtant je l’ai fermée (la bdd).
      Pourtant elle est en UTF-8 (enfin je vais de ce pas vérifier).
      On va s’en sortir.

    • Presse Agrume 12:09 le décembre 9, 2008 Permalien | Réponse

      J’ai réalisé un mini tuto.

      A cette adresse :
      http://www.presse-agrume.net/api-simplepie.html

      Si par hasard ça peut intéresser quelqu’un.

  • freyafinker 6:58 pm le August 16, 2007 Permalien | Réponse  

    Problèmes d’encodage 

    Après avoir cherché un bon moment comment examiner la déclaration XML des flux RSS qui comporte l’indication de l’encodage (ISO-8859-1 ou UTF-8), je me suis penchée sur le code de MagpieRSS et je me suis aperçue qu’il n’était pas besoin de réinventer le fil à couper le beurre, MagpieRSS s’est déjà penché sur le problème. J’ai conclu qu’il renvoie du ISO-8859-1 (mais le logiciel date de 2005) et j’ai essayé de changer pour UTF-8 sans améliorer le rendu de l’agrégateur.

    Il ressort que WordPress et Dotclear sont encodés en UTF-8 et qu’ils sont pour l’instant minoritaires dans la liste des blogs que je veux agréger. Donc pour le meilleur rendu, il faut afficher la page php de l’agrégateur en ISO-8859-1, ce qui laisse les textes UTF-8 avec des ? à la place des apostrophes. Bah, c’est presque lisible.

    Prochaines étapes, regarder à nouveau le code de MagpieRSS pour voir ce qui cloche, et chercher un autre agrégateur qui serait plus adapté à notre langue accentuée…

    Ouliblog semble avoir résolu le problème, l’affichage est impeccable. Mais l’agrégation est distante, or je voudrais sur les traces d’Antoine ramener le flux vers un blog pour pouvoir commenter les articles. Coup de chapeau à Antoine en passant.

     
c
créer un nouvel article
j
message/commentaire suivant
k
message/commentaire précédent
r
Réponse
e
Modifier
o
afficher/masquer les commentaires
t
remonter
l
connexion
h
afficher/masquer l'aide
shift + esc
Annuler