Speedsyndic pour SPIP 2 et SPIP 3

Ce plugin est une version compatible spip 2.0.x / 2.1 / 3.1 du plugin Speedsyndic

Note : Une bonne partie du texte ci-dessous a été pompé de cet article, expliquant la version précédente du plugin. je n’ai fait qu’adapter le code pour spip 2, ajouter une interface de configuration a base de CFG et légèrement modifier les instructions. Merci aux auteurs précédents !

Principe

Ce plugin permet de synchroniser/mettre à jour automatiquement et en temps réel les flux des sites syndiqués que vous avez sélectionnés. Cela signifie que vous n’avez plus besoin d’attendre 2 heures, voire parfois beaucoup plus, avant que #SPIP_CRON ne mette à jour la base des articles syndiqués.

En effet, le fonctionnement par défaut de SPIP fait que les flux des sites syndiqués ne sont re-synchronisés automatiquement que toutes les 2 heures, et ce seulement à condition que votre site reçoive beaucoup de visites (me demandez pas pourquoi, c’est comme ça).

Mais, en pratique, on s’aperçoit que ça prend souvent beaucoup plus de temps... Ce qui fait que les flux de vos sites syndiqués ne sont jamais à jour... avant un jour ou deux.

Avec SpeedSyndic, le problème est réglé.

À faire avant l’installation

-  Créez vos sites à syndiquer.

-  Dans l’espace privé, « Configuration » > « Contenu du site » > « Référencement de sites et syndication », cocher « Utiliser la syndication automatique »

Installation

-  Téléchargez le plugin ci-contre, uploadez tout le dossier speedsyndic2 dans le répertoire /plugins et installez le plugin SpeedSyndic2 comme n’importe quel plugin.

-  allez dans Configuration > CFG > Speedsyndic 2 et

  • changez éventuellement la fréquence de syndication
  • selectionnez les sites a speedsyndiquer.

-  Ajouter dans les squelettes potentiellement les plus visités de votre site (généralement sommaire.html et article.html) la balise #SPIP_CRON

The End

Voilà, c’est terminé. Rien d’autre à faire pour faire démarrer le plugin : il est désormais actif. Videz le cache et rechargez la page contenant vos sites syndiqués, vous verrez le résultat.

Si jamais ça ne marche pas au premier coup, c’est qu’il faut relancer #SPIP_CRON, en visitant simplement http://site.example.net/spip.php?action=cron.

Discussion

7 discussions

  • 4

    Bonjour,
    Je reviens après une màj de spip 3.1 vers spip 3.2.1 et le plugin Speedsyndic n’est pas compatible avec spip 3.2.1.
    Speedsyndic sous spip 2 était très performant, il rafraichissait une base importante de sites syndiqués tous les 5 minutes.
    Dans mon précédent message, j’avais écrit que tout semblait fonctionner très bien pour Speedsyndic sur spip 3.1, mais je me suis aperçu après, qu’en fait la fréquence de rafraichissement des sites syndiqués ne s’améliorait pas, en fait c’est comme si le plugin n’était pas actif.
    J’apprécierais beaucoup une aide à ce niveau, ce plugin est très utile (dans l’attente de pouvoir régler la fréquence de rafraichissement directement dans spip, éventuellement...).
    Merci d’avance pour vos réponses.

    • Est ce que ton site est public et suffisamment visité ?

      Le plugin fonctionne avec la liste des taches.
      Ces taches sont déclenchées si le site reçoit un minimum de visites.

      Il faudrait se penser sur le code mais cela ne doit pas être impossible de passer ce plugin en SPIP 3.2

      Tiens nous informé

    • Merci pour ta réponse. Elle m’a donné l’idée de faire qques tests supplémentaires.
      J’ai en ce moment un site (bien consulté) encore sous SPIP 3.1.8 dans lequel le plugin Speedsyndic 0.3.0 est installé. Dans la configuration du plugin, il y avait une fréquence de rafraichissement que j’avais mise à 300 secondes et aussi à 600 secondes. Juste pour tester, maintenant je l’ai mise à 5, et tout semble très bien marcher... En fait il est possible que la version Speedsyndic pour spip 2 utilisait un réglage en secondes, et par la suite il est passé en minutes, donc 300 correspondait à 5 heures et 600 à 10 heures !
      Il ne reste donc que le problème de compatibilité avec spip 3.2.1...

    • Je viens de passer le plugin compatible en SPIP 3.2.1 avec la version 0.3.1 du plugin.
      Le zip devrait être disponible d’ici quelques heures.

      Pour infos, le temps minimum autorisé en 30s (pour ne pas trop peser sur le serveur)
      La valeur par défaut est 600 secondes.

      Merci de tester si cela fonctionne bien.

    • Merci erational pour la màj.

      J’ai pris qque temps avant de répondre pour faire différents tests. Voici les résultats actuels chez moi :
      -  sur spip 3.1.8 cette màj fonctionne bien, c’est juste que la fréquence de rafraichissement annoncée en secondes serait plutôt en minutes (?), comme d’ailleurs la v0.3.0. En mettant 7, par exemple, le serveur semble bien tenir le coup et le rafraichissement se fait environ tous les 10 min.
      -  sur spip 3.2.1 il peut être activé, mais il ne change rien au temps de rafraichissement, peu importe les valeurs qu’on met dans la configuration (c’est comme s’il n’était pas là). Les rafraichissements sont lents, et au bon vouloir de spip, un ou 2 fois par jour, même si le site est bien consulté…

      Peut-être que mes tests ne sont pas parfaits pour en tirer une conclusion définitive et je ne sais pas dans quelle mesure d’autres personnes ont pu tester aussi, mais je serais heureux si on pouvait trouver une solution.

    Répondre à ce message

  • 2

    Bonjour,
    J’ai fait une màj de spip 2.1 à spip 3.1 et je viens de voir que, malheureusement, l’excellent plugin speedsyndic n’est pas compatible avec spip 3.1.
    Savez-vous si une version compatible spip 3.1 est prévue ?

    Répondre à ce message

  • 11

    Merci pour ce super plugin, tout à fait adapté à mon site (dont le « job » est justement de syndiquer de nombreux sites).
    Une petite question néanmoins : est-il prévu à plus ou moins long terme une adaptation pour Spip 3 ?

    • Bonjour,
      de rien - je n’ai fait qu’adapter le code a Spip 2 ;)

      Concernant une version pour Spip 3, je n’avais pas prévu de m’y pencher dans l’immédiat ( par manque de besoin perso), mais je vais tenter d’y jeter un œil dans le courant du mois, sans toutefois pouvoir vous promettre un résultat immédiat. Si d’autres bonnes âmes veulent se lancer, elles sont les bienvenues !

    • Wilco, as tu avancé dans l’adaptation de ce plugin - fort utile - pour spip 3 ?

      Quoi qu’il en soit, merci encore pour ce plugin, que j’utilise sur de nombreux sites.

    • Bonjour,
      Malheureusement, je suis submerge de boulot pour l’instant :( je vais essayer de me pencher dessus dans le courant de la semaine prochaine, mais sans garantie !

    • oops, je fais une adaptation pour spip3, mais je l’ai pas posté !
      (en fait, j’aurai eu besoin d’un coup de main, pour la tester, et ensuite pour partager cette adaptation)

    • *j’ai fait*
      (ça fonctionne chez moi)

    • @ Mat.Webmiss - Ben, moi je veux bien le tester... Où peut-on le récupérer pour voir si tout est ok ? Je peux le tester en local (avec toutes les versions de spip 3) ou en ligne, avec la dernière version. Par contre, je ne suis pas sûr qu’en dehors de te reporter d’éventuels bugs, je puisse t’être d’une aide quelconque...

    • ok cool, je mets ça en ligne demain

    • @ Mat.Webmiss - à priori, aucun problème avec SPIP 3.0.5 [19905] sur un serveur mutualisé et plusieurs autres plugins installés - je fais d’autres tests également en local...

    • Après d’autres tests, toujours avec 3.5...

      Dans la gestion des tâches, à priori par de problèmes, prise en charge du plugin et des modifications de fréquences de ce dernier.

      Cependant, lorsque je force le recalcule de la base de données (pas d’une simple page mais de toute la base) depuis l’interface d’administration, cette dernière est bien vidée mais j’ai le message suivant qui apparait (en privé, dans /Maintenance/Vider le cache) :

      Fatal error : Call to undefined function lire_config() in /home/www/(…)/plugins/auto/plugin/speedsyndic/inc/speedsyndic.php on line 8

      Une idée ?

    • Le fil est très ancien mais j’ai mis le plugin à jour pour SPIP 3.1.
      Enjoy !

    Répondre à ce message

  • 1

    Avec SPIP 2.1.2 [16017] je n’arrive pas à voir la page forum, je n’obtiens que le squelette rubrique dist et pas le squelette forum. J’ai testé en reprenant une rubrique forum existante sur la base et en recréant en automatique un forum via la config du plugin soit Forums SpipBB > Divers > Mon premier forum créé idem pas d’affichage des pages forum .
    Une page inscription s’affiche bien page=form_inscript&mode=forum&focus=nom_inscription&id_rubrique=120
    Pourriez vous m’aider dans la configuration

    • hum . quel rapport avec la syndication de sites et ce plugin ?

    Répondre à ce message

  • 2

    Ach comme c’est étrange..

    je viens de l’activer sur un autre site en SPIP 2.1.2 [16017] sur un serveur distant complètement différent et j’obtiens la même erreur (après activation).

    dd

    • Hmm, je pense que j’ai trouve ce qui schtroumpfait. Tu peux attendre qques heures que le .zip s’actualise, et reessayer, stp ?

    • Nickel, c’est bon maintenant.

      merci

    Répondre à ce message

  • 1

    Bonjour,

    Chez moi sur un SPIP 2.0.1 cela n’a pas l’air de fonctionner. Dans. l’admin du plugin j’obtiens :

    Warning : in_array() [function.in-array] : Wrong datatype for second argument in C :\Program Files\Apache Software Foundation\Apache2.2\htdocs\intranet\ecrire\public\composer.php(51) : eval()’d code on line 44

    et en relançant avec spip.php ?action=cron les flux ne se mettent pas à jour.
    Je n’utilisais pas la version précédente donc je ne sais pas si c’est dû à la version du plugin

    dd

    • Bonjour,
      Tu obtiens ceci avant ou après avoir tenté de config le plugin ? Je n’ai pas bcp d’infos pour tenter de comprendre ce qu’il se passe chez toi... Quand j’aurai un peu de temps, je testerai sur une version 2.0.1, pour etre sur ( j’ai teste sur une 2.0.8,2.0.9,2.0.10,2.1 )

    Répondre à ce message

  • 4

    Salut

    j’ai installé le plugins et dans le CFG je ne vois que Fréquence de rafraichissement : (en secondes) qui est réglable. Pour ce qui est Sites à speedsyndiquer : il n’es pas réglable.
    Donc ce qui fait que je ne vois pas l’impact du plugin.

    • Bonjour,
      Pour pouvoir selectionner un/des sites a speedsyndiquer, il faut evidemment que lesdits sites soient definis a prealable comme sites syndiques... As-tu pense a faire cela ?

    • Merci pour votre réponse
      J’ai définis les sites à syndiquer. Ensuite j’ai mis la balise #SPIP_CRON dans le div ou les articles syndiqués doivent s’afficher mais ça ne donne rien.

    • Re-bonjour
      C’est totalement normal : les instructions d’utilisation ne disent nulle part que le plugin fonctionne comme cela.

    • Complement d’info : cf boucle syndic_articles

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom