dcBlogmark v1.1

Contrairement à ce qu’on pourrait croire, je n’avais pas perdu de vue que je devais sortir une nouvelle version de mon gestionnaire de blogmark pour DotClear. Voilà qui est fait et je peux vous dire que votre patience va être récompensée. Au menu des modifications et des nouveautés on trouve :

  • Ajout des champs langue et commentaire ainsi que d’un champs personnalisable. Celui-ci n’a pas de fonction précise, il vous servira à mieux adapter dcBlogmark à votre utilisation si vous en éprouvez le besoin.
  • Utilisation du journal système de DotClear
  • Ajout d’un bookmarklet pour ajouter très facilement des blogmarks
  • Fils de syndication des blogmarks au format RSS 0.91, 1.0, 2.0 et Atom 0.3.
  • Aide en ligne
  • Meilleure intégration visuelle à DotClear
  • Les caractères HTML du titre sont à présents encodé lors de leur renvoi par la fonction get()

Je le teste sur ce blog depuis quelques jours sans souci particulier. Si vous rencontrez néanmoins un problème n’hésitez pas à me contacter.

Les chemins des fils de syndication sont à configurer dans le fichier config.ini situé dans le répertoire de dcBlogmark. Au passage c’est dans ce fichier que se paramètre ce plugin.

Mise à jour : Suite aux conseils avisés de S.F., j’ai corrigé 2 petits bugs de la version 1.1 initiale. Si vous avez téléchargé ce plugin avant cette mise à jour, veuillez le refaire. Je suis désolé pour le désagrément.

Seconde mise à jour : Cymago a rédigé un excellent tutoriel sur ce plugin.

Ce contenu a été publié dans Divers. Vous pouvez le mettre en favoris avec ce permalien.

63 réponses à dcBlogmark v1.1

  1. S. F. dit :

    Attention, j’ai remarqu? que tu utilisais htmlentities() dans le nouveau dcBlogmark, mais tu devrais l’abandonner au profit de htmlspecialchars(). En effet htmlentities() provoque quelques r?sultats ?tranges avec les chaines UTF-8…

    Tu devrais aussi ?chapper le champs url, nan ? (machin.php?c1=xxx&c2=yyy)

  2. JMF dit :

    N’utilisant pas UTF-8, je n’avais pas remarqu?. D’apr?s la doc, htmlspecialchars() est sens? se comporter de la m?me mani?re. La solution r?side plut?t dans le 3?me argument AMHA. Je vais creuser la question. 🙂

    Quant ? l’URL tu as tout ? fait raison, je n’arrive pas ? me faire ? cette idiotie.

  3. S. F. dit :

    Non, parce que htmlspecialchars ne convertit que <>;&, qui sont identiques pour l’ISO-8859-1 et pour l’UTF-8 (ils font partie d’ASCII). Un simple remplacement des htmlentities() par des htmlspecialchars() fonctionne, pour preuve mon site :p

    Euh sinon, ils se cachent o? les feeds g?n?r?s ?

  4. JMF dit :

    Pas b?te pour htmlspecialchars(). 😉

    Il te faut renseigner les chemins dans le fichier config.ini de dcBlogmark. 🙂

  5. S. F. dit :

    bah j’ai mis un nom de fichier mais j’ai pas trouv? de fichier g?n?r? lorsque j’ajoute/modifie une entr?e… Faut faire une action sp?ciale pour les g?n?rer ? Faut mettre un chemin absolu ?

  6. JMF dit :

    Les fils sont g?n?r?s automatiquement lors d’un ajout, d’une modification ou d’une suppression.

    Leurs chemins doivent ?tre renseign?s par rapport ? la racine de DotClear. Par exemple si tu veux mettre le fil RSS 1.0 dans un r?pertoire nomm? feeds tu dois le renseigner ainsi :

    dcBlogmark_rss_1_0_feed_path=feeds/rss_1_0.rdf

  7. JMF dit :

    En revanche si tu as des soucis c’est parce que dans ma pr?cipitation ? mettre ? jour le plugin, j’ai inclu mon fichier de config et non celui destn? ? ?tre distribu?. Tes fils essaient de se g?n?rer dans le r?pertoire feeds qui ne doit pas exister chez toi et donc rien ne se passe. C’est corrig?, d?sol?.

  8. S. F. dit :

    Nan nan j’ai pas remis ? jour, j’avais fait les modifs que je t’ai signal?es moi-m?me 🙂 ?a va je les ai trouv?s 🙂

  9. katsoura dit :

    "Ajout d’un bookmarklet pour ajouter tr?s facilement des blogmarks"

    On peut m’expliquer bri?vement en quoi ?a consiste ? Merci.

    katsoura AT yahoo DOT fr

  10. [NikO] dit :

    Katsoura : c’est un lien dans la barre de favoris de ton navigateur qui permet d’ajouter tr?s facilement un lien au blogmarks.

    Bon, il me reste plus qu’a installer la derniere version de dotclear pour pouvoir m’en servir ^^

  11. Thomas dit :

    Sur free il ne marche pas. Quand je clique sur "G?rez votre blogmark" dans le panneau d’outils j’ai droit ? "Fatal error: Call to a member function on a non-object in /var/www/free.fr/f/8/thomas.bassetto/blog/ecrire/tools/dcBlogmark/index.php on line 105"

  12. JMF dit :

    Thomas> As tu bien cr?? (mis ? jour) la table dans la BDD ?

  13. xave dit :

    Thomas, c’est expliqu? dans le ReadMe.

    Sinon, tr?s bien. Un commentaire quand m?me : ?a serait plus mieux, je trouve, que la table soit cr?e par le plugin lui m?me. C’est ce que font d’autres plugins qui ont besoin de leur propre table.

    Autre chose : ?a permetrait sur tout de g?rer DB_PREFIX, pour ceux qui ont plusieurs DotClear.

  14. Thomas dit :

    J’ai install? le plug-in en mettant directement le lien donn? plus haut dans l’admin de Dotclear donc je n’ai jamais eu l’occasion de voir qu’il y avait un fichier Readme.

    Pour info /ecrire/tools/dcBlogmark/sql/ ets vide de fichier .sql chez moi O_O

  15. JMF dit :

    Je crois que je vais finir par c?der en effet vu le nombre de retours que j’ai ? ce niveau. Par contre je continue de penser que c’est une mauvaise id?e par principe et au niveau performance.

  16. JMF dit :

    Thomas> Ca n’est pas normal que tu n’es pas les fichiers SQL. En revanche je ne sais pas trop quoi te dire, ils sont sens?s y ?tre.

  17. Thomas dit :

    J’ai supprim? le dossier /ecrire/tools/dcBlogmark/ et j’ai reinstall? le plug-in. Tout marche maintenant, merci. (et j’ai m?me les fichiers .sql :/)

  18. Philippe dit :

    J’ai essay? Dotclear, puis install? Blogmark qui rend en effet de fiers services. Une simple question : est-il possible d’installer plusieurs Bloogmark sur un m?me site, l’un qui gererai par exemple des liens externes, et l’autre des liens internes ? Et si oui comment faire, quels fichiers modifier ?

  19. JMF dit :

    Philippe, ce n’est pas pr?vu ? priori. Cependant gr?ce au champ personnalisable, tu dois pouvoir le faire toi m?me.

    Le principe est de mettre quelque chose dans ce champ qui te permettra de diff?rencier tes blogmarks ( Leur nombre peut donc ?tre infini). Ensuite dans ton template, dans la boucle au liue d’afficher directement le lien, tu v?rifies que ton champ personnalis? a la valeur souhait?e. 🙂

  20. tehu dit :

    J’ai bien cr?? la table avec le script SQL, mais l’appel du plugin me renvoie toujours une page blanche… J’ai essay? apr?s avoir vid? la cache… O? est-ce que je dois regarder ?

  21. tehu dit :

    quand je teste en local, j’ai :
    Fatal error: Call to a member function on a non-object in h:\dotclear\ecrire\tools\dcBlogmark\index.php on line 105
    Suis-je le seul ? avoir ?a ?

  22. JMF dit :

    tehu> A priori tu n’as pas cr?? correctement la table.

  23. bix dit :

    Je confirme, la cr?ation de la table SQL automatiquement serait du plus grand chic. 😉

  24. Deux premiers blogmarks sur onpk.net

    En juillet 2004, Simon f?tait son 1000?me blogmark. Ajourd’hui j’inaugure mes 2 premiers gr?ce au plugin de dcBLogmark JMF. Il ne me reste plus qu’? ajouter un petit bout de code pour tester la pr?sence ou non de la table : je me suis fait avoir aussi…

  25. Plugin DotClear dcBlogmark : le blogmark du Rn?

    Et le plugin du jour est dcBlogmark. Je dois avouer que je ne suis pas encore bien s?r de l’usage d’un blogmark. Sur l’id?e que je m’en fais, l’usage est double…

  26. Personnalisation du plugin dcBlogmark pour DotClear

    Je vous en parlais il n’y a pas si longtemps, le blogmark du Rn? utilise le plugin dcBlogmark pour DotClear. Et je suis tomb? sur le blogmark de Simon Willison, contenant plus de 1000 r?f?rences ! Un petit d?tail m’a particuli?rement int?ress?…

  27. dcBlogmark, PHP et quelques surprises du validator W3C

    De temps en temps, envoyer un page au Validator du W3C permet de se faire une petite piq?re de rappel sur ses propres pratiques. Quel ne fut pas ma surprise de d?couvrir aujourd’hui que ma page principale n’?tait plus valide : presque une quinzaine…

  28. Pierre dit :

    En laissant la configuration par d?faut, les diff?rents fichiers XML ?taient g?n?r?s sous l’arborescence "conf" de la racine du site. Pour que ceux ci soient accessibles sous la racine, j’ai du modifier les lignes dans conf.ini:
    dcBlogmark_rss_1_0_feed_path=rss_1_0.rdf
    en
    dcBlogmark_rss_1_0_feed_path=../rss_1_0.rdf

  29. david dit :

    Bonjour

    J’ai install? le plugin
    ex?cuter le requ?te sql (la table est OK)

    Je n’est pas encore ins?r?r le code dans mon Template mais lorsque je clique sur le lien dcBlogmark dans la console d’admin j’ai droit ? une page blanche.

    La gestion des param?tres de dcBlogmark se fait bien par l? ?

  30. z?ta dit :

    bonjour & bravo pour ce plug in qui correspond parfaitement ? mes attentes, ? une exception pr?s : mon menu de droite est deja bien charg? et j’aimerais pouvoir afficher mes blogmarks dans une page a part (le corps d’un article ou toute autre page en fait)… est ce que c’est possible?
    merci

  31. YoGi dit :

    "Au passage c’est dans ce fichier que ce param?tre ce plugin."

    que ce -> que se

  32. z?ta dit :

    re:
    j’ai trouv? la r?ponse ? ma question precedente sur le forum dotclear, cependant, si le plug in semble OK dans l’admin (ajout, etc), il annonce une erreur dans la partie publique… pourtant je place bien le code dans template.php, c’est bizarre…

    voila ce qu’il m’annonce l? ou devrait apparaitre les titres du blogmark:

    # while(!dcBlogmark::eof()){ echo  » . dcBlogmark::get(‘title’, 20) . ‘
    ‘; dcBlogmark::moveNext(); }

    en cliquant, il met : The requested URL /dotclear/’ . dcBlogmark::get(‘url’) . ‘ was not found on this server.

    merci de m’aider :

    gabriel.zeta.free.fr/dotc…

  33. La liste de propagation

    MAJ du 01/01/05 : Je viens de d?couvrir un outil pr?vu sp?cifiquement pour ce genre de « liste de propagation » et adapt? pour Dotclear (qui est l’outil de weblog que j’utilise ici, je le rappelle). Cet outil est un blogmark, un gestionnaire de…

  34. JMF dit :

    z?ta> Pourrais-tu indiquer ton code PHP pr?cis car l? je ne comprends pas trop ton probl?me.

    YoGi> C’est corrig?, merci. 🙂

  35. zeta dit :

    j’ai resolu mon pb (1 bete histoire de code), merci pour le plug !

  36. HT dit :

    Bonjour…

    Je viens d’installer ton plugin et ? la premi?re activation dans Outils, je r?cup?re ce message d’erreur… Tu as un m?mo des param?trages ? effectuer pour que cela "baigne" ?

    Fatal error: Call to a member function on a non-object in /home/sites/site72/web/dotclear/ecrire/tools/dcBlogmark/index.php on line 105

  37. HT dit :

    Where is the FM ?

  38. JMF dit :

    HT> Il est dans le fichier ReadMe tout simplement. De plus, ici m?me sur cette page, 2 personnes ont d?j? pos? la m?me question et on obtenu une r?ponse.

  39. HT dit :

    Readme est tout sauf un FM… juste un petit m?mo mais pas un manuel… On ne parle pas de la m?me chose et on ne se comprendra visiblement pas… Ce n’est pas grave…. maintenant pour "l’historique" des discussions de la page, je reconnais ne pas l’avoir reconstitu? avant de poster ma demande.. pas de probl?me….

    PS : la proc?dure de desinstallation est bien document?e par DotClear… Merci ? eux….

  40. JMF dit :

    HT> J’ai ?cris ce plugin pour mes besoins personnels, je l’ai ensuite diffus? car il me semblait qu’il y avait un besoin. Il est assez simple d’utilisation il me semble et devrait l’?tre encore plus avec la prochaine version qui g?rera les personnes ne lisant pas le README. Maintenant, libre ? toi de ne pas l’utiliser s’il ne te convient pas.

    Enfin, le fichier README.txt r?pond exactement ? ta question. Je ne vois donc pas o? est le probl?me.

  41. Gwen dit :

    Ca s’?chauffe. 😉 J’ai exp?riment? moi aussi des "probl?mes" lors de l’installation, car tout ne se fait pas tout seul. 😉 Entre autre, demander ? la base sql chez free de cr?er une base en utilisant le script requiert d’aller lire leur doc. Ca devient fractal. Faut ?tre lobbyiste donc, pas simple "comsommateur".
    Pour l’instant, j’obtiens encore un message d’erreur dans ma page apr?s avoir ins?r? le lien fournis dans le readme :
    # while(!dcBlogmark::eof()){ echo  » . dcBlogmark::get(‘title’, 20) . ‘
    ‘; dcBlogmark::moveNext(); }
    La gestion du plugin dans "ecrire" fonctionne, j’y ai cr?e un dummy pour essayer mais rien a faire…
    Mais je ne d?sesp?re pas de trouver tout seul (C’est un peu mon puzzle ? moi ?a). Merci pour l’effort et pour ce plug, quoiqu’il en soit.

  42. Enro dit :

    Merci pour ce plugin extraordinaire (et je p?se mes mots !!), qui apporte tout ce dont je r?vais et plus encore : bookmarklets, flux RSS, champ personnalisable etc. Seulement, j’ai un probl?me lors de l’affichage : en n’ayant sp?cifi? aucune longueur max du titre avec dcBlogmark::get(‘title’)

  43. Enro dit :

    (suite du commentaire pr?c?dent) le titre appara?t bien en entier, mais le caract?re [] reste pr?sent en fin de ligne. J’ai cherch? la solution mais je n’ai rien trouv?.

    Merci de ton aide !

  44. JMF dit :

    Enro> Ton probl?me ne vient pas de dcBlogmark mais de ton code CSS. Tes crochets apparaissent ? cause de cette ligne dans ta feuille CSS : a[hreflang]:after {content: "\0000a0[" attr(hreflang) "]"; color:#999; background:transparent;}

    Alors soit tu enl?ves cette ligne (ou tu la rends inactive pour les blogmarks si elle te sert ailleurs), soit tu remplis le champ "langue" dans l’administration et dans ce cas tu auras ta langue entre les crochets.

    Voil?. 🙂

  45. Enro dit :

    Merci de ta r?ponse, c’est parfait. Je me doutais bien que le probl?me ne venait pas directement de dcBlogmark mais je n’avais pas pens? ? la feuille CSS et au champ "langue". En tous cas, maintenant c’est OK !! 🙂

  46. cymago dit :

    Merci de cet excellent plugin. Apr?s quelques tatonnements, tout marche. Mon guide perso ici

    cvie.free.fr/blog/index.p…

  47. JMF dit :

    cymago> Excellent ce petit guide ! 🙂
    Je me permet d’ajouter un lien dans mon billet car il pourra ?tre utile ? plus d’un.

  48. cymago dit :

    j’ai test? la mise sous Blogmark d’une liste de pages connexes (custom = related) en plus de la liste de billets; ?a marche mais un probl?me d’affichage des liens r?solu en rajoutant une fonction moveStart sur le mod?le de moveNext dans functions.php

  49. David dit :

    F?licitation ? toi pour ce plug-in !

    Je me permets juste de proposer une petite modification pour les utilisateurs de DotClear qui, comme moi, ont modifi? le nom de leur r?pertoire "ecrire" pour des raisons de s?curit?.

    Le bookmarklet propos? ?tant cod? avec le nom du r?pertoire "ecrire" en dur, je propose une modification de la ligne 144 du fichier index.php de ton plug-in.

    Remplacer ‘ecrire’ par ‘DC_ECRIRE’ qui est une constante contenant le nom secret du r?pertoire d’administration de DotClear pour ceux qui l’ont modifi?.

    Bonne continuation pour le codage de ton plug-in !

  50. JMF dit :

    cymago> Je ne comprends pas trop ton probl?me ni ta solution. 🙂
    Pourrais-tu m’en dire plus.

    David> Merci pour les compliments. 🙂
    En fait, j’ai d?j? effectu? cette am?lioration, ainsi que quelques autres, dans la version 1.2 que j’utilise depuis maintenant plusieurs mois mais que je n’ai toujours pas distribu? officiellement faute de temps. Il faut vraiment que je m’y colle !

  51. cymago dit :

    rajout de

    function moveStart()
    {
    return GLOBALS[‘DC_BLOGMARK_DATA’]->moveStart();
    }

    pour repositionner la position au d?but dans le recordset. Exemple d’utilisation dans la fonction dcDisplayBlogmark ici

    cvie.free.fr/blog/themes/…

  52. cymago dit :

    le probl?me se pr?sente lorsque l’on affiche plusieurs listes en utilisant le champ custom.

    Lors du 2?me appel, la liste s’affiche vide car on est positionn? en fin de recordset.

  53. cymago dit :

    pour la prochaine version : rajouter le champ custom dans le titre du fil RSS

  54. cymago dit :

    j’ai fait un essai avec ajout ? la suite du user_id (c’est plus discret)
    index.php
    086 old $item->author = $value[‘user_id’];
    086 new $item->author = $value[‘user_id’].’ – ‘.$value[‘custom’];

  55. Fabien dit :

    Salut Jean-Marc,

    Un ?norme merci pour ton plugin, il m’est d’une ?norme aide !!! Et je tiens ? le signaler, malgr? mes comp?tences + que nulles, il est tr?s facile ? installer.

    N?anmoins, j’aurais une petite question pour toi. j’ai rajout? l’argument "date" dans mon listing mais malheuresuement, celle-ci s’affiche dans son int?gralit? avec l’ann?e et l’heure/secondes. J’ai rep?r? dans le fichier index.php les 2 lignes o? ?tait pr?sent ce "Y-m-d H:i:s" mais aucun changement dessus n’agit vis-?-vis du blog … Alors que, de toute fa?on, l’heure n’est m?me pas reprise dans ma config de dotclear.

    Pourrais-tu m’aider l?-dessus ?

    Aussi, mais cela est secondaire, saurais-tu me dire comment ajouter de la mise en forme sur ces diff?rents arguments ? Bref, faire jouer mon fichier css dessus : o? dois-je ins?rer le code "class" ?

    Un ?norme merci d’avance.

  56. Fabien dit :

    Je me r?ponds ? moi-m?me : il suffit de modifier le copi?/coll? ? entrer dans la table sql. Et pour la mise en forme, bah, le template accepte les balises html, c’est tout b?te.

    Sinon, une autre question un poil int?ressante : y a-t-il moyen d’acc?der ? une liste compl?te du blogroll ? Ou bien est-ton strictement limit? ? la limite qu’on impose sur la liste ?

  57. JMF dit :

    Salut Fabien, je suis d?sol? de ne pas t’avoir r?pondu mais j’avais zapp? ton commentaire. :/

    Pour le moment il n’y a rien de pr?vu pour consulter le blogroll dans son int?gralit?. En revanche, il est tr?s simple d’acc?der ? la table dans la base de donn?es.

  58. cymago dit :

    des pb d’?dition foireuse dans le wiki DotClear. J’ai corrig? et de plus en pointant sur une page statique du guide (Free.fr refuse souvent l’acc?s ? MySQL).

  59. cymago dit :

    Fabien et JMF
    liste du blogmark par
    <?php dcBlogmark::dcDisplayBlogmark(NULL); ?>
    sauf erreur
    voir la version 1.1.1 ici
    cvie.free.fr/Download/

    JMF, si tu as un peu de temps il serait bien de reprendre cette version 1.1.1, de faire le m?nage et sortir une version officielle.

  60. nicky dit :

    Y a le support des dates dans le feed dans la 1.1.1 ?

  61. JMF dit :

    Je vais essayer de sortir une version mise ? jour cette semaine. 🙂

  62. nicky dit :

    \o/

Les commentaires sont fermés.