[BESOIN AIDE] Création d'un Plugin bookmarket

LewoLewo Member
Bonjour la communauté !

Pas évident de trouver un titre à ce post...
Je cherche depuis quelques temps à crée un plugin de partage de lien (oui, à la Shaarli, on va y revenir...) mais je me casse lamentablement les dents. J'ai épluché la doc, fouillé ici et là, trouvé des pistes de travail comme le plugin QuickPost ou encore InMyPluxml, mais... mais non !
Je cherche un truc bien précis qui dépasse très largement mes piètres "compétences" en programmation.

Concrètement et clairement (je vais essayer), voilà ce que je cherche à faire :

Une page statique qui propose des liens en vrac : URL/Titre/Date/Description/Permalink (houlalalala, mais comme Shaarli quoi ?! Oui je sais, je sais !)
Permalink - URL/TITRE DU LIEN
Date - Description du lien

En plus clair :
Permalink#123 - Le titre de mon lien en guise d'url vers monsite.com
1 avril 2015 13h00 - Ce n'est pas un poisson d'avril

OUAIP COMME UN SHAARLI QUOI !!! Oui, si vous voulez, mais totalement intégrer à Pluxml, sous forme de Plugin. Tiens, comme le truc intégrer à BlogoText (visible en action ici même)

Avant d'aller plus loin dans les méandres caverneux du détail, d'après vous, c'est possible ou pas possible ???

Mince, suis-je vraiment clair ? Vais-je me faire taper sur les doigts... ?

Bien à vous.

Réponses

  • StéphaneStéphane Member, Former PluXml Project Manager
    Salut
    Tout à fait possible

    Si je comprends bien ce que tu veux, il faudrait

    1) un écran de gestion pour saisir/modifier/lister/supprimer les liens dans des champs dédiés
    - titre du lien
    - url du lien
    - date de publication du lien
    - une description

    2) enregistrer ces infos dans un fichier (json, xml, txt: à choisir) avec 1 fichier par lien ou 1 fichier avec tous les liens (à choisir en prenant en compte des critères de performances, de sécurité - si un seul fichier qui plante on perd tous les liens, etc...)

    3) lister les liens dans une page statique (prévoir une pagination peut-être)

    J'ai bon jusque là

    Apres pour l'écran de gestion tu peux peut-être regarder ce que j'ai fait dans MyCoinSlider (http://pluxopolis.net/myplugins)

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • LewoLewo Member
    C'est exactement ça Stephane ! Ouf ! Je pensai ça un peu ubuesque (et inutile au yeux de certain puisqu'il existe déjà des systèmes équivalent).

    Je vais me replonger dans le cambouis et dans la doc, mais un peu vaincu d'avance, n'hésitez-pas à donner un coup de pouce (ceux que ça puis intéresser).
  • LewoLewo Member
    Deux jours après : lamentable échec de ma part !

    J'ai littéralement explosé deux install de Pluxml, épluché au rabot des lignes et des lignes de code, décortiqué (c'est la base) de la doc dans tous les sens (Pluxml, PHP, XML, etc) : rien à faire ! Le développement m'a [del]tuer[/del] (sic) tué. C'est que moi, j'avais omis le fait que je n'ai aucune compétences dans le domaine. Une vraie pucelle du code. Je me contente de bidouiller les machins qui me tombent tout crus sous la main (le genre à démonter ses jouets sans jamais être capable de les remonter)...

    Bref ! C'est une manière un peu longue de demander à une bonne âme un coup de main (beurk ! j'aime pô réclamer !). Dans le principe, je suis certain que ce n'est pas très, très compliqué. Mais ça me dépasse... J'en suis à peine à comprendre comment écrire dans un XML à partir d'un formulaire, voyez l'niveau ?!

    Bien à vous, ô charitable âme capable de me proposer une base de travail...
  • Je pense avoir une solution simple. Je regarde et je te dis. A plus. Jeje
  • LewoLewo Member
    avril 2015 modifié
    je-evrard > Ah, ah ! Voilà qui fait sursauter ma curiosité... Après, je ne veux pas mendier non-plus un truc tout fait, tout beau, qui roule exactement comme on lui demande de rouler. Je suis prêt à mettre un peu les mains dans la tambouille, à "perfectionner" et/ou à adapter ce qu'on me propose (et c'est d'ailleurs une très bonne école, une bonne façon d'apprendre, pour ceux qui lisent ça et qui sont aussi novices que moi...). Il fût un temps ou j'arrivais à me dépatouiller avec Pluxml (des anciennes versions), aujourd'hui, je suis très largement dépassé ; mais je ne demande qu'à apprendre...

    A bientôt de tes (vos) nouvelles.
  • je-evrardje-evrard Member
    avril 2015 modifié
    Hello,

    C'est bon j'ai codé le plugin, j'ai plus qu'a faire l'icone.

    L'idée c'est très simple tu verras, dans ta page statique tu auras ceci :
    [== Indéfini ==]
    [SPXWBOOKMARKET format='<p>#date #title - #url #content</p>' ]
    

    Tu format l'html de sortie comme tu veux donc.

    Dès que c'est pret je pousserais le plugin sur le market de spxwplugindownloader dépot spx.

    Je te tiens au courant.

    a+

    jéjé
  • LewoLewo Member
    Woaw ! L’efficacité du bonhomme ! Je guette...
  • je-evrardje-evrard Member
    avril 2015 modifié
    Hello,

    Donc tu vas sur mon site : ici

    Tu télécharges et tu installes spxplugindownloader tout d'abord.

    Un fois actif tu verras un lien : Depots plugins dans pluxml.

    tu installes :
    [list=*]
    [*]spxdatas[/*]
    [*]spxshortcodes[/*]
    [*]spxwbookmarket[/*]
    [/list]

    Tu actives les 3 et tu peux (tu devrais c'est mieux) configurer spxdatas : ici

    Une fois tout ça pret tu verras une icone widget dans ton admin avec un onglet bookmarket je te laisse deviner la suite.

    Pour la sortie html dans ta page statique c'est comme je t'ai dit :
    [== Indéfini ==]
    [SPXWBOOKMARKET format='<p>#date #title - #url #content</p>' ]
    

    Le but est de montrer ce soir que en 1h30, on est capable de faire un widget simple de spxdatas ! le plugin le plus boudé de l'ouest !!!

    Bonne soirée, :)


    jéjé
  • LewoLewo Member
    avril 2015 modifié
    Avant d'aller plus loin : retour bug dans spxplugindownloader (infos.xml) :
    <site>http://www/secretsitebox.fr</site>
    
    à remplacer par :
    
    <site>http://www.secretsitebox.fr</site>
    
  • Bien vu merci. Tu me dis si ça marche pour toi pour la suite... je brûle d'impatience. .
  • LewoLewo Member
    avril 2015 modifié
    How ! Pardon, je met un peu de temps à répondre...
    Alors, de mon côté ça cafouille un peu au niveau de la config de SpxDatas. Les manips de dossiers m'embrouillent un peu... j'puis pas te dire si ça fonctionne ou pas pour l'instant (j'ai du me mélanger les pédales).

    EDIT : Le plugin "spxwbookmarket" a l'air d'être en route. Reste à comprendre comment le faire tourner... Uh ! Beaucoup d'infos/de modifs à digérer pour ce soir. Je reviens vers toi d'ici à la fin du week-end pour compte rendu (ça semble vouloir marcher, c'est l'humain qui bug !).

    En cous cas, et très sincèrement, merci pour ta promptitude ! I'll be back !

    reEDIT : Widget actif ! Les données n'ont pas l'air de s'inscrire... problème de droit ? A creuser (de mon côté), retour très bientôt ! Merci encore !
  • LewoLewo Member
    avril 2015 modifié
    Erratum : les données (malgré les recommandations de la config) s'inscrivent dans : "plugins/spxdatas/builder/data/link.xml"

    Ai du faire une mauvaise manip... à voir ! En tous cas, semble fonctionnel !
  • Tu peux me faire une copie d'écran de ta configuration de spxdatas et la structure de tes fichiers Stp.

    A jeje
  • je-evrardje-evrard Member
    avril 2015 modifié
    version 1.2 du spxwbookmarket sur le depot spx


    **** v 1.2. ****
    - mod: change format for shortcode default

    j'ai modifié le format de sortie par default du shorcode
    [== Indéfini ==]
    'format' => '<article class="bookmarmarket-link"><header><h2><a href="#url">#title</a></h2></header><div>#content</div><footer>#date</footer></article>'
    

    a+

    jeje
  • Tu peux nous en dire plus sur comment faire fonctionner tout ça ?

    J'ai installé les 3 plugins et j'ai dans spxDatas, 2 onglets : liens et bookmarket.

    Dans liens, j'ai le lien vers le forum de pluxml (qui est enregistré par défaut).

    J'ai créé une page statique pour l'occasion dans laquelle j'ai seulement mis :
    [SPXWBOOKMARKET format='<article class="bookmarmarket-link"><header><h2><a href="#url">#title</a></h2></header><div>#content</div><footer>#date</footer></article>' ]
    

    Et il ne se passe rien sur la page statique.

    De plus, comment je renseigne un nouveau lien ? En ouvrant le panneau d'admin de pluxml et en enregistrant les infos dans spxdatas ? Mais à quel niveau : liens ou bookmarket ?
  • Si j'enregistre quelque chose dans l'onglet bookmarket, les données s'affichent bien sur la page statique. Dans ces conditions, à quoi sert l'onglet "liens" ?
  • je-evrardje-evrard Member
    avril 2015 modifié
    Hello Jerry,

    Donc il faut deja via le depot installer et activer spxdatas, spxshorcodes, spxwbookmarket (dernière version)

    il faut configurer spxdatas : rendez-vous dans la config avec maintenant un onglet installation ou tu donnes le chemin d'enregistrement des données, tu sauvegardes et c'est configuré (tu n'auras plus a y revenir par la suite meme après une mise a jour)

    Ensuite rendez-vous dans widget/bookmarket pour créer tes bookmarket.

    La page statique c'est tout bon pour toi
    [== Indéfini ==]
    [SPXWBOOKMARKET format='<article class="bookmarmarket-link"><header><h2><a href="#url">#title</a></h2></header><div>#content</div><footer>#date</footer></article>' ]
    

    Le widget liens est livré d'office via spxdatas et n'a rien a voir avec le bookmarket. Il permet juste de créer des liens et de les afficher ou on veut.

    Le plugin bookmarket est intéressant a regarder car il est simple a comprendre dans sa structure et il permet a d'autres développeurs de créer d'autres widget pour spxdatas... Tu verras qu'il compte très peu de lignes de code, la partie administration étant confié a spxdatas dans son intégralité. Avis aux curieux donc.
  • Il est donc redondant avec le widget liens non, le plugin bookmarket ?
  • je-evrardje-evrard Member
    avril 2015 modifié
    Il est plus basique (pas de date, pas d'activation, pas de shortcode). Je le rendrais optionnel dans spxdatas dans la prochaine version.
  • LewoLewo Member
    Petit retour :

    Le plugin SpxBookmarket est très bien ! Relativement "simple" (pour un gars comme moi) et pas trop difficile à mettre en place (quand on fait attention à ce qu'on fait... Hum !).

    Toutefois, il y a pour-moi, un bémol.

    Le projet SPX est un beau bébé plein de ressources et de petits trésors (sérieusement, sans vouloir vous flatter monsieur Jeje), MAIS il est un peu lourd...

    J'ai pratiquement 20mo de données :

    - spxplugindownloader : 98ko
    - spxshortcodes : 77ko
    - spxwbookmarket : 47kos
    - spxdatas : 19mo

    En temps normal ce n'est pas important, sauf que j'ai un espace web très petit et qu'il me faut jongler en permanence pour ne pas dépasser mon quota. Bref !

    J'me disait, que peut-être, je pourrais alléger les différentes bibliothèques/dépendances (j'sais pas comment qu'on dit) de SPXData pour ne garder que ce qui est strictement nécessaire à l'utilisation du plugin de Bookmarket.

    - Ça m'arrange pour pouvoir garder de la place sur mon serveur.
    - Ça me dérange, parce-que ça dénature ton travail, Jeje, et c'est pas très correct ça.
    - Ça me gêne parce-que je ne sais pas trop dans quoi tailler...

    Voilà ou que j'en suis pour le moment.
  • je-evrardje-evrard Member
    avril 2015 modifié
    Hello,

    Pas de soucis je dois faire le ménage pour la prochaine version... c'est prévu !

    En attendant tu peu virer le dossier spxdatas/assets/jquery-ui-1.10.3 dans son intégralité tu vas deja gagner pas mal (7mo) !

    a+

    jéjé

    PS : j'ai mis a jour spxbookmarket car j'ai fait une documentation. Tu peux mettre à jour via le dépot.
  • Lewo a écrit:
    - spxdatas : 19mo

    Tu supprimes le plugin spxdatas sur ton site et tu le réinstalles avec spxwplugindownloader, tu vas passer de 19mo a 6mo en version 1.73.

    C'est pas le bonheur la ! (je ferais un ménage plus fin plus tard.)

    a+

    jéjé
  • LewoLewo Member
    Jeje > Mais si que c'est le bonheur !
    Le pointilleux qui exagère est certain qu'on puis gagner encore de l'espace (c'est pas moi, c'est mon double. Une andouille de première, incapable de coder par lui-même !). C'est du super boulot Jeje.
    Me reste à glisser les mains plus en profondeur dans le code (aucunes allusions, merci), et à adapter ça à ma guise. Rassure-toi : je ne vais pas te lâcher ! J'ai certainement besoin de précisions et/ou d'explications concernant le plugin de bookmarket (ou sur un ou deux autre proposé via SPX qui peuvent m’intéresser...).

    J'essaye (j'essaie ?) d'apprendre par moi-même, mais parfois, souvent, tout le temps (rayer la/les mention(s) inutile(s)), j'ai besoin d'un coup de main... Frustration d'un codeur débutant.

    Je développe ce fil dès que j'ai avancé dans mon coin.
  • LewoLewo Member
    Après pas mal de bidouilles, j'en suis au point zéro. Je n'ai pas réussi à modifier grand-chose dans ce plugin qui me nargue. Il ne lui manque pas grand chose pour être parfait, à mon sens...

    - Pouvoir choisir l'ordre d'affichage (croissant/décroissant - plus vieux/plus récent)
    - La date "automatique" (case date pré-rempli mais éventuellement modifiable) [em][C'est gadget mais pourquoi-pas ?][/em]
    - Une pagination [em][C'est gadget aussi, mais pourquoi-pas ?][/em]
    - Un système de permalink. C'est le gros du morceau.

    ...je développe l'idée des permalinks. C'est, je pense, la raison d'être de ce plugin. Recenser des liens avec description/commentaire/note et pouvoir partager ça directement via une URL. L'esprit Shaarli, en plus basique.

    J'pense que ce n'est pas extrêmement compliqué (wha l'autre, éh ! Le théoricien !). Chaque entrée a son ID fixe (pas de jeu de mot avec un p'tit chien ?) il "suffit" d'utiliser cette dernière en guise d'url. A la manière de n'importe quel article. Reste à savoir comment faire ça en tenant compte de cette sage reflexion de Stephane :

    "[...] enregistrer ces infos dans un fichier (json, xml, txt: à choisir) avec 1 fichier par lien ou 1 fichier avec tous les liens (à choisir en prenant en compte des critères de performances, de sécurité - si un seul fichier qui plante on perd tous les liens, etc...)" [em](voir plus haut)[/em].

    Voilà ! Si vous voulez des idées, j'en ai. Par contre, quand il s'agit de les mettre en places... :rolleyes:
  • Héhé le bonheur tient a peu de chose en fait !

    Bon weekend et bon jardinage :) (enfin ceux qui aime la terre comme moi)
  • ça marche plutôt bien jusque là.
    J'aimerai savoir s'il est envisageable de gérer des tags pour les liens et du coup pouvoir afficher que les liens avec un tag spécifique.
Connectez-vous ou Inscrivez-vous pour répondre.