SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs sur SPIP-Zone, 229 visiteurs en ce moment

Accueil > Administration et BDD > Aides administration > Bookmarklets SPIP > Bookmarklets SPIP 1.8

Bookmarklets SPIP 1.8

Gérer plusieurs sites avec les mêmes signets

26 novembre 2003 – par Thierry Gagnon – 10 commentaires

Ceci est une ARCHIVE, peut-être périmée. Vérifiez bien les compatibilités !

Ces signets utilisent Javascript pour donner accès à certaines pages administratives de votre site SPIP, peu importe sur quel site vous vous trouvez, peu importe où vous êtes sur ce site.

NOTE : Ces bookmarklets/favelets ont été adaptés pour Spip 1.9.x..

Installation expresse

Pour les pressés, vous pouvez installer en vrac tous les bookmarklets décrits ci-haut en suivant les instructions suivantes :

(Ces instructions fonctionnent sur Internet Explorer pour Windows, il est possible que vous ayez à les adapter pour votre propre navigateur.)

1) Sauvegardez le fichier "bookmarklets_spip.html" suivant sur votre disque.

HTML - 3.2 ko
bookmarklets_spip.html

2) Importez-le dans votre navigateur (Ex. Fichier > Importer et exporter sur Explorer. Voir dans l’aide de votre navigateur pour plus de détail.)

3) Les bookmarklets devraient maintenant être disponibles à partir de votre menu de signets ou de la barre de liens, selon où vous les avez importés.

Et voilà ! Allez sur un de vos sites Spip et cliquez sur les bookmarklets pour les essayer. :)

Note : il est possible qu’il y ait des problèmes de compatibilité avec certains navigateurs, notamment Opera. Plus d’information (en anglais) sur comment importer des bookmarklets sur cette page.

Principe de base

Lorsque vous utilisez un de ces bookmarklets (appelés aussi applisignets ou favelets), un script Javascript identifie le nom de domaine du site courrant et il y ajoute un lien vers la page désirée.

Par exemple, disons que vous gérez quatre sites différents et que vous devez souvent vider le cache de ces sites. Vous pourriez faire un favori différent vers la page "Videz le cache" pour chacun des sites. Mais en utilisant le bookmarklet Vider le cache, un seul favori suffit. :)

Ces « signets magiques » sont aussi pratiques si vous voulez modifier une page ou la rafraîchir mais que les boutons d’administrations ne sont pas affichés.

Pour plus d’informations sur les bookmarklets, je vous suggère de visiter les sites bookmarklets.com et Jesse’s Bookmarklet Site (en anglais).

Prenez note qu’il existe une limite au nombre de caractères qu’un bookmarklet peut contenir, notamment une limite de 508 caractères pour IE6. Voir : cette page pour plus de détail.

Compatibilité

En théorie, ces bookmarklets devraient fonctionner sur tous les navigateurs permettant l’usage du javascript.

J’ai personnellement testé avec succès sur Internet Explorer 6, Mozilla 1.5, Netscape 6.2 (PC).

Par contre, Netscape 4.7 semblait ignorer les appels javascript. :P

Si vous les testez sur un autre navigateur ou un autre système, n’hésitez pas à le mentionner dans le forum en bas de la page !

Installer un bookmarklet

La façon la plus directe est de faire un clic-droit (PC) ou pomme-clic (MAC) sur un hyperlien comportant un bookmarklet et de choisir "Ajouter aux favoris" (ou quelque chose du genre) à partir du menu contextuel qui vous sera offert.

Une autre façon pratique est de cliquer sur un lien contenant le script de le bookmarklet et de le déplacer sur la barre de liens de votre navigateur ou dans un menu (ou dossier) contenant vos signets.

Il existe une troisième façon plus compliquée mais qui a l’avantage de permettre de créer de nouveaux bookmarklets de toute pièce. Il faut créer un signet (n’importe quelle page web devrait suffire) puis remplacer l’adresse du signet par la ligne de javascript contenant le code du bookmarklet.

Par exemple, lorsque vous créez un signet dans Netscape, vous pouvez spécifier son nom et son adresse. Sur Internet Explorer, où seul le nom du signet peut être modifié à la création, un simple clique-droit par-dessus un signet dans le menu Favoris vous permet d’accéder aux propriétés de celui-ci et d’y changer son adresse.

Une fois le bookmarklet créé, vous pouvez y accéder par votre liste de signets (menu Signets ou Favoris.)

Pour un accès encore plus rapide aux bookmarklets, il est pratique de placer les plus utiles dans la barre de liens de votre navigateur.

JPEG - 6.8 ko
Applisignets dans la barre de liens

Sur la plupart des navigateurs, il est même possible de créer un dossier à l’intérieur de la barre de liens et d’y placer des signets, groupant ainsi vos bookmarklets et libérant de l’espace pour d’autres boutons.

GIF - 8.1 ko
Dossier de signets dans la barre de liens

Si vous n’êtes pas certain de comment procéder sur votre propre navigateur, je vous invite à consulter l’aide de votre navigateur sur la création de signets (ou favoris).

Note : Il est normal que votre navigateur vous affiche des messages d’erreur ou d’avertissement lorsque vous créez un bookmarklet. Vous n’avez qu’à les ignorer.

Scripts pour bookmarklets

Voici donc les bookmarklets que j’ai créé pour gérer mes sites Spip. Si vous trouvez qu’il en manque, vous devriez pouvoir créer les vôtres assez facilement en modifiant un de ceux-ci.

Je vous rappelle que pour installer un bookmarklet, vous pouvez :

  • copier le code fourni dans les champs de texte et le coller dans l’adresse d’un signet
  • cliquer sur le nom du signet (qui s’avère être un lien contenant le script en question) et le déplacer dans un dossier de signets ou sur la barre de liens de votre navigateur.

Modification des éléments du site

Ce bookmarklet vous permet de modifier n’importe quel article, rubrique ou brève sur n’importe quel site, en autant que le site en question utilise des URLs du type « article.php3 ?id_article=22 » ou « article22.html ». (Merci à Ben pour l’astuce !)

Modifier cette page

Si certain de vos sites utilisent des mots différents dans les URLs mais qu’ils gardent le numéro de l’élément en question (ex. page22.html au lieu d’article22.html), il est possible de modifier le code de ce bookmarklet en conséquence. Il suffit d’ajouter les mots utilisés dans vos URLs dans les expression régulières du script. Par exemple, dans l’expression var expression=/(article)(=*)(\d+)/, on peut mettre (article|page) pour indiquer que le URL peut aussi ressembler à page33.html.

Gestion du site

Login

Vider le cache

[Spip 1.8] Recalculer cette page

Recalculer cette page (pré-Spip 1.8)

Forum interne

Statistiques du site

Suivi des forums

Création de nouveaux éléments

Les nouveaux éléments créés seront liés par défaut à la première rubrique à la racine du site. Prenez donc soin de toujours spécifier la rubrique dans laquelle l’élément doit être placé.

Créer un nouvel article

Créer une nouvelle brève

Créer une nouvelle rubrique

Référencer un nouveau site

Créer ses propres bookmarklets Spip

Pour créer ses propres bookmarklets, il est utile d’avoir une certaine maîtrise du Javascript. Malgré cela, il est possible pour un débutant de modifier ces scripts avec un peu d’aide.

Aller directement à une page précise.

Comme exemple de bookmarklet Spip qui mènerait à une page précise, je vais expliquer ici comment fonctionne le bookmarklet "Vider le cache" :

javascript:var fin=location.href.substring(0, location.href.lastIndexOf('/'));fin=fin.replace(/\/ecrire/,''); location=fin+'/ecrire/admin_vider.php3';

Son rôle est de nous diriger automatiquement vers la page "admin_vider.php3" qui se trouve dans le dossier "/ecrire/" du site spip courrant.

Ses composantes peuvent être décomposées ainsi :

javascript:var fin=location.href.substring(0, location.href.lastIndexOf('/'));

Ici, on cherche dans l’URL (l’adresse) de la page où se trouve la dernière instance du caractère "/". On cherche donc à se placer à l’intérieur du dossier dans lequel la page se trouve. Typiquement, pour un site Spip, ce serait la racine du site (http://www.spip.net/) ou dans le dossier dans lequel le site a été placé. (ex. www.uzine.net/spip_contrib/). L’adresse du site et le(s) dossier(s) dans lequel se trouve la page est ensuite inséré dans la variable "fin".

fin=fin.replace(/\/ecrire/,'')

Ici on retire de l’adresse de la page le dossier "/ecrire/", si il s’y trouve. Cette étape est nécessaire car nous demandons d’aller dans ce dossier à l’étape suivante. Sans cette précaution, si nous étions déjà dans le dossier "/ecrire/", nous aurions alors une adresse contenant "/ecrire/ecrire/".

location=fin+'/ecrire/admin_vider.php3';

Et pour finir, on indique que la nouvelle adresse de la page sur laquelle nous nous trouvons ("location") devrait maintenant être le contenu de la variable "fin" suivie de "/ecrire/" et de la page "admin_vider.php3" où se trouve le formulaire "Vider le cache".

Pour aller vers une autre page, donc, vous n’avez qu’à changer fin+'/ecrire/admin_vider.php3' et y mettre le nom de la page que vous désirez.

Aller à une page selon le contexte de la page courante.

Le bookmarklet "Modifier cette page" est beaucoup plus flexible - et complexe !

Le voici en entier :

javascript:var fin=location.href.substring(0, location.href.lastIndexOf('/'));fin=fin.replace(/\/ecrire/,'');var url=location.href;var re=/(article)(=*)(\d+)/;if (re.test(url)==true) { id=RegExp.$3;type='article';} else {re=/(breve)(=*)(\d+)/; if (re.test(url)==true) { id=RegExp.$3;type='breve';}else { re=/(rubrique|coll)(=*)(\d+)/; if (re.test(url)==true) { id=RegExp.$3;type='rubrique';}}} location=fin+'/ecrire/'+type+'s_edit.php3?id_'+type+'='+id;

Si on l’analyse ce script, on y retrouve une première partie similaire à celui de "Vider le cache" :

javascript:var fin=location.href.substring(0, location.href.lastIndexOf('/'));fin=fin.replace(/\/ecrire/,'');

On isole du URL le nom du site jusqu’au dernier dossier et on enlève le dossier "/ecrire/" si il s’y trouve.

var url=location.href;

Cette ligne transfert le nom du site et les noms de dossiers (sans "/ecrire/") extraits du URL, dans variable appelée, curieusement, "url".

var re=/(article)(=*)(\d+)/;if (re.test(url)==true) { id=RegExp.$3;type='article';}

Ici ça se corse. On définit une variable "re" dans laquelle on insert une expression régulière (regular expression) où l’on définit ce que l’on cherche dans le url. Dans ce cas, nous cherchons le mot "article" suivi d’un caractère "=" ou non et ensuite d’un ou plusieurs chiffres (indiqué par le code "d+"). Si l’adresse de la page contient "id_article=23" ou "article23.html", dans les deux cas, le mot "article" et le chiffre "23" seront correctement identifiés.

SI l’expression contenue dans la variable "re" se trouve dans "url" (if (re.test(url)==true)), nous attribuons les chiffres trouvés dans la variable "id" et nous attribuons le mot "article" à la variable "type".

Si jamais vous utilisez dans vos adresses un autre mot que "article" pour identifier vos articles (par exemple, page23.html), vous pouvez ajouter ce mot de cette façon :

var re=/(article|page)

else {re=/(breve)(=*)(\d+)/; if (re.test(url)==true) { id=RegExp.$3;type='breve';}

... et ainsi de suite pour les brèves et les rubrique.

location=fin+'/ecrire/'+type+'s_edit.php3?id_'+type+'='+id;

Nous terminons en demandant de changer l’adresse (location) de la page en utilisant l’adresse du site tel que spécifiée dans la variable "fin". Nous y ajoutons ensuite "/ecrire/" puis le type de page défini dans la variable "type" à laquelle on ajoute "a_edit.php3" suivi du caractère "=" et le numéro de la page en question qui se trouve dans "id".

On passerait donc, par exemple, de "http://votresite.com/article.php3?id_article=23" à "http://votresite.com/ecrire/articles_edit.php3?id_article=23".

POur renvoyer à une autre page, vous n’avez donc qu’à modifier la ligne location=fin+'/ecrire/'+type+'s_edit.php3?id_'+type+'='+id; selon la page en question.

J’espère que ces scripts et ces instructions vous seront utiles. :)

Thierry Gagnon
Studios Eau Moirée

Dernière modification de cette page le 5 août 2009

Retour en haut de la page

Vos commentaires

  • Le 26 novembre 2003 à 15:46, par Thierry Gagnon En réponse à : Enfin !

    Ça fait des mois et des mois que ce concept trottait dans ma tête et je suis bien heureux d’avoir pu enfin le mettre en oeuvre. Merci beaucoup à Ben pour m’avoir fourni la clef qui me manquait pour arriver au bout de mes idées !

    J’utilise ces signets depuis quelques semaines déjà et je ne peux déjà plus m’en passer. C’est incroyable de pouvoir faire toutes ces opérations sur tous mes sites Spip à partir des même signets.

    N’hésitez pas à me faire part ici de vos témoignages d’utilisateurs et de suggérer d’autres idées de bookmarklets Spip !

    • Le 27 novembre 2003 à 14:29, par Nickwe En réponse à : > Enfin !

      Tout grand merci à toi !!! Ca fait deux-trois semaines que j’utilse certains des « Favelets » se trouvant ici http://tantek.com/favelets/ pour redimensionner mon écran pour voire si mes sites sont bien compatibles en 800X600 et 1024X768 vu que je suis maintenant en 1280X1024.

      De plus j’avais dans ma barre des tâches un dossier par site, avec chaque fois un lien vers l’admin, la page d’accueil et vider le cache pour chaque site. J’ai maintenant tout viré pour mettre tes « Bookmarkelets » et c’est le bonheur total !!!

      Voilà, j’espère que tout le monde prendra un peu de temps pour piger le principe car c’est un gain de temps énorme !

      ++

    • Le 29 novembre 2003 à 14:03, par redac En réponse à : > un seul mot : bravo !

      Tout simplement parfait. Quel bonheur ! (Et pas de prob rencontré avec Safari). Merci Thierry.

    Répondre à ce message

  • Le 15 novembre 2007 à 00:41, par RealET En réponse à : Bookmarklets Spip 1.8 : Gérer plusieurs sites avec les mêmes signets

    J’ai adapté ces favelet à SPIP 1.9.3 et rajouté des favelet qui n’étaient pas disponibles avant (genre var_mode=profil pour tracer les requêtes mysql).

    Thierry, est-ce que tu veux que je t’envoie le fichier de favelet.html correspondant ou préfère-tu me passer co auteur de l’article et admin restreint de la rubrique pour que je joigne moi-même le fichier ?

    Répondre à ce message

  • Le 19 octobre 2005 à 00:32, par ventrea En réponse à : un autre utile : un bookmarklet debug (spip1.8+)

    il s’agit quasiment du meme que recalcul, la seule variation : var_mode=debug

    (e lien ci dessous peut ête collé dans une barre directement)

    debug

    le code du lien :

    Répondre à ce message

  • Le 21 mai 2005 à 15:18, par Thierry Gagnon En réponse à : > Révisions mai 2005

    J’ai révisé les méthodes d’installation des bookmarklets et j’ai ajouté une variation du bookmarklet « Reclalculer cette page » compatible avec la version 1.8 de Spip.

    Répondre à ce message

  • Le 17 décembre 2003 à 16:28, par DoriaN En réponse à : Comment créer ses siens à soi ?

    je trouve pas trop d’infos sur les sites cités dans l’article pour créer mes miens, par exemple si j’utilise une contrib nommée portfolio.php3 situé dans ecrire/, je veux faire un favoris qui d’une page ecrire/articles.php3 ?id_article=127 m’amène sur ecrire/portfolio.php3 ?id_article=127.

    J’ai bidouillé ceux de l’article mais j’ai raté la compréhension du passage de variable :( est-ce que qqn peux m’aider ?

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

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 Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Un retour d’expérience d’utilisation de Formidable

    26 octobre – commentaires

    Il s’agissait de créer un formulaire d’inscription à un évènement modérer les inscriptions dans le privé publier les inscriptions dans le public Nous avons discuté de cette présentation lors de l’apéro SPIP du 15 février 2016 à la Cantine (...)

  • Métas +

    3 décembre – 14 commentaires

    Améliorez l’indexation de vos articles dans les moteurs et leur affichage sur les réseaux sociaux grâce aux métadonnées Dublin Core, Open Graph et Twitter Card. Installation Activer le plugin dans le menu dédié. Dans le panel de configuration, (...)

  • Adaptive Images

    15 novembre 2013 – 69 commentaires

    Un plugin pour permettre aux sites responsive d’adapter automatiquement les images de la page à l’écran de consultation. Adaptive Images, que l’on pourrait traduire par Images adaptatives, désigne la pratique qui vise à adapter les taille, (...)

  • Social tags

    8 septembre 2008 – 428 commentaires

    Le plugin Social Tags permet d’ajouter des icônes de partage de liens vers les sites tels que Digg, Facebook, Delicious.... Une fois le plugin installé et activé (voir doc.), le choix des sites se fait via un menu de configuration. Insertion (...)

  • Module de Paiement Stripe

    17 octobre – commentaires

    Stripe est un prestataire de paiement externe https://stripe.com/fr qui propose une API moderne et une interface de paiement extrêmement conviviale et efficace. Ce module permet les paiements à l’acte et les paiement récurrents. Configuration (...)

Ça spipe par là