Qrcode

Les QrCodes sont des codes barres lisibles essentiellement par les téléphones portables et permettent d’échanger avec ceux-ci diverses informations, et en particulier des liens. Ce plugin à pour objet de permettre à spip d’utiliser des QrCodes pour les documents joints mais aussi pour n’importe quelle information via un modèle et un filtre.Les QrCodes c

Voici un exemple de QrCode (utilisant l’api google chart) :

Prérequis

Ce plugin requiert que le répertoire lib soit créé et accessible en écriture à la racine de l’installation de spip pour permettre l’installation de la librairie phpqrcode.

Installation

Comme tous les plugins : décompression dans le répertoire plugins ou via l’interface spip en mode auto.

Utilisation

Avec SPIP2, utilisez la page de configuration CFG pour choisir les différentes options du plugin.

Configuration du plugin QrCode via CFG

Avec SPIP3, cette page est accessible depuis le menu Configuration>Configuration du QrCode ou depuis la page de gestion des plugins.

Vous pouvez mettre automatiquement un QrCode pour chaque document joint à vos articles.

Vous pouvez utiliser la balise :

  1. <qrcode|texte=...|taille=...>

dans un article pour insérer un QrCode contenant le texte que vous désirez. Par exemple :

  1. <qrcode|texte=Votre code de est : 6703DSS>

Pour que vos utilisateurs puissent enregistrer un code sur leur portable sans avoir à le mémoriser.

Vous pouvez aussi utiliser le filtre |qrcode dans vos squelettes. Ce filtre s’applique à une chaine de caractères quelconques et renvoie le tag html <img .../>
du QrCode correspondant. Par exemple, vous pouvez l’utiliser dans un squelette de la façon suivante :

  1. [(#URL_SITE|qrcode)]

pour permettre à vos visiteurs de visiter votre site depuis leur téléphone portable.

Le filtre admet deux paramètres optionnels :

  • la taille des éléments du qrcode (entre 1 et 10 pixels),
  • le type de correction d’erreur : L (7%) , M (15%), Q (25%) ou H (30%)

Par exemple, on peut l’utiliser dans un squelette :

  1. [(#URL_SITE|qrcode{3,H})]

En savoir plus sur les Qrcodes

D’après Wikipedia, les Qrcodes sont limités en tailles à environ 4000 caractères européens, un peu plus de 7000 caractères numériques

Crédits

Ce plugin utilise la bibliothèque : Librairie phpqrcode, distribuée sous licence LGPL.

Dernière modification de cette page le 13 février 2019

Discussion

20 discussions

  • Bonjour
    le modèle

    1. <qrcode|article=12>

    me renvoie vers spip.net ! ?

    Répondre à ce message

  • Bonjour

    J’ai plusieurs questions :

    1° Dans un article, que faut-il ajouter après <qrcode| pour que cela renvoie directement vers l’url d’un site Internet

    2° Est-il possible de créer un QR code correspondant à une carte de visite ? Si oui, comment ?

    Répondre à ce message

  • 4

    Bonjour,

    Qrcode permet l’utilisation de codes QR. Si j’ai bien compris cela passe par l’intermediaire d’un service Google. Y a-t-il la possibilite d’employer a la place un service vraiment ouvert/libre ?

    • Je cite la documentation : « Voici un exemple de QrCode (utilisant l’api google chart) » :

    • Le plugin utilise une bibliothèque qui ne dépend pas de Google. L’exemple montre juste une utilisation possible avec une api de chez eux.

    • merci, pour ta reponse.me voila rassure.et prchainement, un nouvel utilisateur

    • Merci pour la reponse. Je vais alors l’utiliser sans crainte.

    Répondre à ce message

  • Ces Qrcodes genre « Grand Deuil » ne me conviennent pas, je veux en changer la couleur.

    Allez on y va (à moins qu’un CSS y suffise ? ).

    -  On ouvre (spip 3) plugins/qrcode_v1/lib/qrcode.php.
    vers la ligne 988 on trouve :

     $col[1] = ImageColorAllocate($base_image,0,0,0);

    C’est ce fameux noir.
    Et on change pour sa couleur préférée (en RVB)

     $col[1] = ImageColorAllocate($base_image,133,117,0);

    Ce n’est pas tout car qrcode_v1 a son propre cache image.

    -  vider le cache image.
    Supprimer le contenu de local/cache-qrcode/


    C’est tout et cela donne ça sur mon site.

    Répondre à ce message

  • QRcode et accès restreint.
    C’est super la mise en place automatique des QRCode par le squelette, mais si on a a un accés restreint (plugin du même nom) ?
    Il serait dommage que sur ces pages privées le code apparaisse.
    J’ai donc mis en place une application des boucles complètes
    <Bn>...<//Bn>
    , comme çà :

    <!-- QRcode  (que pour les articles publics)-->
    <B_prive1>
                    <BOUCLE_prive1(ARTICLES) {id_article}{id_secteur=3}>
    <!-- si c'est privé on fait rien -->
                    </BOUCLE_prive1> 
     <!-- on fait rien encore-->                        
    </B_prive1>
    <!-- là on est dans l'alternative: l'article n'est pas privé, on fait-->
                              
                                     [(#URL_ARTICLE|url_absolue|qrcode{3,M})]
                                     Flasher pour voir cette page "[(#TITRE)]" sur votre mobile 
                                              
    <//B_prive1><!-- on en a fini notez le // ->
    <!--  finQRcode  -->

    où le secteur 3 est le secteur déclaré comme privé.
    (excusez, le code ne se formate pas bien, débrouillez-vous !

    Si ça peut servir ?
    (je peux pas vous montrer, puisque vous n’avez pas accès à la partie privée du site, mais ça marche)

    Pour le reste c’est dans mon message ci-dessous.

    Répondre à ce message

  • QRcode avec une URL Absolue dans le squelette.

    -  #URL_ARTICLE renvoie une adresse relative qui ne marchera pas sur un smartphone.
    -  Heureusement il y a les filtres spip et notamment |url_absolue .

    Il suffira donc d’écrire :

    [(#URL_ARTICLE|url_absolue|qrcode3,M)]

    Voilà.
    un exemple en vrai (en bas d’article).

    Répondre à ce message

  • Bonjour
    Est ce que ce plugin sera décliné pour SPIP3 ? Je le trouvait bien pratique mais il n’est pas encore compatible avec la nouvelle version de SPIP.
    Merci

    Répondre à ce message

  • 1

    Après avoir lu les différents commentaires j’ai bien avancé par contre j’ai un petit souci.
    -  1/ J’ai installé normalement et sans PB le plugin
    -  2/ je l’ai configuré ds CFG en activer les QRcode sur l’ajout des documents joints.
    -  3/ j’ai indiqué la classe CSS etc tout marche.

    Mon pb est ici : quand je joints un document il me fait appraitre un code QR mais celui renvoie une URL fausse à savoir :
    http://URL_site/SPIP2/IMG/fichier.extension

    Mon problème c’est ce SPIP2 qui n’apparait nule part dans mon arborescence sur le server ?
    Moi c’est http://URL_site/CIDJ/IMG/fichier.extension

    Sur le serveur j’ai un répertoire www.dans lequel est installé SPIP.

    • J’ai fini par trouver.
      Erreur de configuration dans les configuration du site et notamment « Adresse (URL) du site public »
      Si jamais ca rrive à d’autres.

    Répondre à ce message

  • Bonjour,

    Est-ce que quelqu’un travaille sur l’adaptation de ce plugin à SPIP 3.0 ?
    Comme vous vous en doutez, je suis très impatient de retrouver mes QRcodes sur mon site fraichement migré.

    Cordialement

    Répondre à ce message

  • 5

    Quand je navigue sur http://mon.site/spip.php?page=qrcode, j’ai l’erreur suivante :

    Warning : require_once(//lib/phpqrcode/qrlib.php) [function.require-once] : failed to open stream : No such file or directory in /home/.../public_html/spip/plugins/auto/qrcode/qrcode_fonctions.php on line 16

    Fatal error : require_once() [function.require] : Failed opening required ’//lib/phpqrcode/qrlib.php’ (include_path=’. :/usr/lib/php :/usr/local/lib/php’) in /home/.../public_html/spip/plugins/auto/qrcode/qrcode_fonctions.php on line 16

    Que se passe-t-il ?

    • Il ne te manquerait pas une lib ?

      Ce plugin requiert que le répertoire lib soit créé et accessible en écriture à la racine de l’installation de spip pour permettre l’installation de la librairie phpqrcode.

    • La lib phpqrcode est bien installée et le fichier qrlib.php est bien présent là où il devrait être.

    • La ligne de code fautive est :
      require_once(find_in_path('lib/phpqrcode/qrlib.php')) ;
      vu ton message d’erreur, find_in_path (fonction du core de spip) retourne : //lib/phpqrcode/qrlib.php, la présence des 2 slash à la place de .. ou d’un chemin valide vers qrlib.php, me laisse penser que c’est un bug de spip ou de ta configuration de spip (le plus probable).

    • J’ai peut être une piste. Il semblerait que la variable _DIR_RACINE ne soit pas initialisée du tout. Savez-vous où ça se trouve dans la configuration SPIP ?

    • A défaut de meilleure solution, j’ai retiré l’appel à la fonction find_in_path dans /home/.../public_html/spip/plugins/auto/qrcode/qrcode_fonctions.php pour obtenir la nouvelle ligne de code :
      require_once(’/lib/phpqrcode/qrlib.php’) ;
      Ce n’est pas idéal mais ça fonctionne.

      Si quelqu’un a une idée sur la raison du non-fonctionnement de la fonction find_in_path , je suis preneur.

      Merci à tous.

    Répondre à ce message

Ajouter un commentaire

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

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom