nota-bene.org > Sur le web > Spip : notes pour plus tard

Spip : notes pour plus tard

À propos de cet article

Un article de Stéphane

Publié le 4 mars 2009

URL courte : http://nota-bene.org/310

5 commentaires

Mots-clés (tags)

,

Une ou deux pistes de travail pour des contributions à Spip.

Pour l’instant je n’ai pas le temps de m’occuper de ça, parce que je suis en plein redesign [1], mais je veux le garder dans un coin de la tête donc autant le noter ici et vous faire profiter de mes flatulations neuronales.

HTTP, GET et POST

Le protocole HTTP fournit deux méthodes principales pour discuter avec une page web : GET et POST.

La première demande de recevoir des informations (elle les « gets »), la seconde envoie des informations (elle les « poste »).

C’est vital de bien faire la distinction entre ces deux méthodes quand on construit un site web, pour éviter par exemple qu’un robot d’indexation ne fasse des dommages dans une base de données, idem pour un outil de vérification des erreurs dans vos liens, etc.

Vous me direz qu’on est protégé dans une interface d’administration qui demande qu’on s’identifie avant de pouvoir l’utiliser ? Certes, mais il existe aussi des outils à disposition des simples mortels comme vous et moi qui permettent de vérifier que tous les liens de votre site sont bons directement dans votre navigateur, par exemple l’extension Link Checker pour Firefox, que j’ai fini par désinstaller de peur de la lancer par accident !

J’ai donc suggéré sur la liste spip-dev de différencier les actions et d’associer à toute action critique un formulaire et une méthode POST plutôt qu’un simple lien en GET. Évidemment Fil en retour a dit qu’il était preneur de code.

Donc notons, à faire :

  1. Identifier les éléments dangereux dans Spip [2]
  2. Proposer une méthode de remplacement

Tags, mots-clés, etc.

Je trouve lourde l’interface de spip pour associer des mots-clés à un article, et j’aime au contraire la simplicité des tags des sites sociaux d’une façon générale (Delicious notamment) et des favoris dans Firefox.

J’aimerais avoir un champ tout simple (comme un champ extra mais il paraît que ce n’est plus la mode) pour stocker ce type d’informations.

Le risque évidemment, c’est qu’on se trompe dans un mot-clé d’un article à l’autre ; risque qui n’existe pas avec la logique de base de données relationnelle de Spip.

Donc expérience à tenter.

Ou alors réformer complètement l’interface d’association de mots-clés à un article pour que ce soit plus simple (par exemple Wordpress fournit une liste de cases à cocher correspondant à toutes les catégories dans lesquelles l’article peut se retrouver : c’est rapide et ergonomique).

Et avec ça, ma bonne dame, il vous fallait autre chose ?

En fait j’avais une autre idée en commençant, mais je n’ai plus toute ma tête donc tant pis. Bah, mettez-moi aussi 200 grammes de boudin noir, tiens, tant qu’on y est.


Notes

[1Prévu pour avril 2008 ah non, attends... le premier mars... euh... bientôt...

[2Qui a dit « J’ai des noms » ? sourire


Commentaires

    • 4 mars 2009

    Dans Dotclear 2, la gestion des mots clés est assez chouette : on peut les taper à la main, ou bien les sélectionner dans un nuage de liens. Un simple clic sur le lien ajoute le tag à la liste des tags de l’article. Et tout ça se dégrade proprement sans Javascript, bien entendu...

    Une petite capture d’écran pour la route

    Répondre à Pierre

    • 5 mars 2009

    Plusieurs remarques :

    • tes notes de bas de page (si utiles) n’apparaissent pas dans ton flux RSS
    • d’accord avec toi pour le bon usage de GET et POST, et je crois que des améliorations ont été faites très récemment
    • pour les tags, il y a un plugin spipicious, que j’avoue ne pas encore avoir testé, mais ton retour m’intéresse si tu le fais... clin d'œil

    Voilà, c’est tout.

    Répondre à Nicolas Hoizey

  • Ah oui alors sur les notes, je ne comprends pas trop. Je regarderai le backend d’origine, peut-être qu’à force de bricoler j’ai cassé des choses.

    Pour le reste, tant mieux ! Je vais regarder tout ça.

    Répondre à Stéphane

  • Je viens de regarder le backend par défaut : il n’affiche pas du tout les notes. Zut alors. J’ajoute à la liste des « choses en cours ».

    Répondre à Stéphane

    • 6 mars 2009

    En fait, on dit aussi que GET doit être sans modifications dans le modèle, et que POST doit être idempotent (c’est-à-dire que l’appeler deux fois devrait avoir le même résultat que l’appeler une fois... ça évite aussi des problèmes clin d'œil )

    Après, il y a encore d’autres problèmes, de sécurité cette fois. En effet, les URLs de type GET peuvent être appelées par, par exemple, de simples balises IMG. Ainsi, on peut imaginer d’amener une personne (toi) sur un site (malicieux) alors que tu es déjà loggé sur ta partie admin. Sur ce site (malicieux, l’ai-je déjà dit ?), il y a une balise IMG qui pointe vers cette balise GET qui permet de poster un billet.

    Le tout sans Javascript clin d'œil

    (je m’arrête là, tu liras avec profil l’un des docs qu’on a faits sur le sujet clin d'œil )

    Répondre à Juju

Qui êtes-vous ?
Votre message
  • Pour créer des paragraphes, laissez simplement des lignes vides. Tous les liens sortants comporteront un attribut rel="nofollow". Merci de ne pas spammer.

Ceci est la version Bureau Afficher la version Mobile