Greffon pour Dotclear2 : shortURL v0.2
Par ȷulmud le samedi 3 janvier 2009, 11:56 - Free the code! - Lien permanent
Bon, je ne pensais pas que cela allait se produire, mais suite à une certaine frustration lors de la mise à jour du greffon gallery et une idée saugrenue qui me traverse la tête à des heures indues,[1] voici une nouvelle version du greffon shortURL.
Les nouveautés au programme :
- le support de contenu autre que les billets (pages, galeries, ...) ;
- une interface d'administration ;
- une meilleure gestion des URLs incorrectes ;
- un nouveau préfixe par défaut.
Notes
[1] Tiens, ça pourrait être une bonne idée de pouvoir également utiliser le système d'URLs raccourcies pour pointer sur une galerie.
À koi k'ça sert ?
Ce greffon permet d'utiliser une URL raccourcie pour accéder aux billets de votre blogue. Cela vous permettra de publier l'URL de billets lorsque vous êtes limités sur le nombre de caractères dans votre message (par exemple avec Twitter).
Utilisation
Après installation de ce greffon, allez dans les paramètres de votre blogue et activez le système des URLs raccourcies. Dès lors, une nouvelle entrée fait son apparition dans le menu à droite lors de l'édition de billets ou de pages. Cette entrée nommée Short URL affiche votre URL raccourcie pour accéder au billet. Note : cette entrée n'apparaît que lorsque le billet a été enregistré !
Si vous le souhaitez, vous pouvez également publier cette URL dans votre blogue. Pour cela, il suffit de modifier votre thème et d'utiliser la méthode de template {{tpl:EntryShortURL}}
. Évidemment, cela ne fonctionne que dans le cadre d'une boucle de billets.
Je veux voir !
L'URL raccourcie de ce billet : http://mudry.org/blog/shurl/2929
L'URL raccourcie de la page À propos de mon photoblogue : http://mudry.org/photoblog/shurl/2503
L'URL raccourcie d'une galerie de mon voyage au Japon : http://mudry.org/galerie/shurl/1978
Koi k'ya de neuf ?
Une interface d'administration : vous devez maintenant aller activer le greffon blogue par blogue dans les paramètres du blogue. Dans cette interface d'administration, vous pouvez également modifier le préfixe utilisé par le greffon et continuer à supporter les URLs de la version 0.1 (préfixe postid
) si vous l'utilisiez déjà.
Le support de tout type de contenu : dorénavant, vous pouvez également utiliser des URLs raccourcies pour pointer vers n'importe quel type de contenu du blogue. (Testé et validé avec les galeries et les pages.)
Une meilleure gestion des URLs invalides : si le système n'arrive pas à trouver un contenu pouvant correspondre à l'identifiant passé dans l'URL, une erreur de type 404[1] est dorénavant directement retournée (et non pas une redirection et ensuite une erreur par le système Dotclear).
La localisation des textes : l'interface d'administration est disponible en anglais et français.
Notes
Pour le contenu alternatif (galeries, etc.) il vous faudra trouver par vous-même l'ID à utiliser dans l'URL raccourcie.[2] En effet, les greffons avec lesquels j'ai fait mes tests ne me fournissent pas la possibilité d'afficher l'URL raccourcie dans leur interface d'administration (exception : vous pourrez voir les URLs lors de l'édition de pages).
J'ai modifié le préfixe par défaut (postid
est devenu shurl
) car je voulais bien montrer que ces URLs raccourcies ne pointent pas uniquement vers des billets. Mais libre à vous de remettre postid
via l'interface d'administration si cela ne vous plaît pas.
Téléchargement
Hop, jetez un œil dans les annexes à ce billet...
Remarques, commentaires, rapports de bogues, ...
... sont toujours les bienvenus dans les commentaires de ce billet.
Crédits
Sur une idée que theClimber avait proposé sur le forum Dotclear. Une partie du code est fortement inspirée du greffon gallery de Dsls.
Version 0.2.2 (Mise à jour du dimanche 4 janvier à 12h20)
J'ai découvert et corrigé deux petites bogues (mise à jour du plugin à disposition en annexe) :
- l'URL raccourcie est maintenant affichée dans les pages des galeries[3] ;
- l'URL raccourcie fonctionne également avec les billets protégés par mot de passe.[4]
Version 0.2.3 (Mise à jour du samedi 24 janvier à 10h30)
Suite à la mise à jour en version 0.3.2 du greffon gallery, voici une mise à jour de shortURL afin de profiter des nouveaux behaviors offerts dans l'administration de gallery. L'URL raccourcie se trouve donc maintenant également affichée dans l'édition des billets-image de gallery.
Version 0.2.3a (Mise à jour du lundi 26 janvier à 19h10)
Grmbll.... je viens de découvrir que certains des fichiers du greffon possédaient un BOM qui peut poser des problèmes d'affichage. Vous trouverez donc en fichier joint une version 0.2.3a qui corrige cette erreur de ma part. Désolé !
Notes
[1] Page non trouvée.
[2] Un indice : regardez la barre d'adresse de votre navigateur lorsque vous modifiez le contenu en question...
[3] Parfois, cela vaudrait la peine que j'ouvre les yeux avant d'écrire des âneries.
[4] Pas d'inquiétude à avoir, le mot de passe sera toujours demandé au visiteur.
Commentaires
Bon, je viens de tester le truc, c'est vraiment pas mal et ça me permettra de publier mes url sous twitter ou autres (facebook & co) sans bouffer 1000 caractères
Juste une remarque, pour le moment tu utilise le postid pour finalement rediriger vers une page. Maintenant le voudrais pousser le raisonnement plus loin. Est-ce qu'on pourrais imaginer de faire mieux :
Supposons que je veuille pointer vers le commentaire X de l'article Y, dans la situation actuelle je dois faire :
monblog/?shurl/Y#cX ...
Moi je trouve ça long... déjà rien que le "shurl" c'est long ... (même si ça je peux le modifier)
N'y a-t-il pas moyen de faire un truc style :
monblog/?shurl/hash
Avec éventuellement une petite base de donnée de correspondances en sqlite ou je ne sais pas. Pcq si on génère un hash qui gère la case ... on a 26 caractères x2 + 10 chiffres ... on va complètement optimiser la taille du "postid"...
Bon d'accord, je vais peut-être chercher un peu loin... mais je pose la question. Je ne sais pas si c'est facile (je ne l'ai jamais fait) d'avoir une base de donnée de correspondance juste pour un plugin dans dc2 ... j'avoue que c'est peut-être un peu over-kill ... mais c'est une idée.
theClimber : En deux mots : oui et non. En en peu plus de mots : oui, c'est faisable et non, je ne le ferai pas. Cela donnerait un côté « usine à gaz » à ce greffon qui enlèverait alors tout le côté fun qui m'amuse dans son développement.
Par contre, il y a peut-être un moyen de faire des URLs raccourcies qui pointent directement sur un commentaire selon le même principe (c'est-à-dire selon l'ID du commentaire). Je vais essayer d'y jeter un œil quand j'aurai un peu de temps.
Pas de souci, je comprend très bien je laissais juste marcher mon imagination !
Bonne journée
Bon, j'ai peut-être une idée qui pourrait fonctionner sans avoir besoin d'une table supplémentaire. Je verrai ce que je peux faire.
En utilisant la table _meta comme le plugin tag ?
Osku : Non, avec la méthode que je pense utiliser, il n'y a aucun besoin d'écrire dans la base de données. Mon idée est de simplement convertir l'ID du billet d'une base décimale à la base 64.