Bannières 2

Gérer des campagnes d’information composées d’images ou animations.

Ce plugin permet d’afficher et de gérer des campagnes d’information composées d’images ou animations. La balise #BANNIERE permet de positionner facilement cet objet dans vos squelettes. Plusieurs objets peuvent être placés sur la page et gérés en fonction de leur position (ex. : #BANNIERE{1}). Si vous lui faites passer des informations de localisation, vous pourrez choisir l’objet à afficher en conséquence. Un lien est placé sur les images et le clic est comptabilisé. Enfin, la campagne s’affiche pendant la période que vous définissez dans l’espace privé.

Remerciements

Ce plugin est une réécriture du plugin bannières de François de Montlivault et basé sur le plugin exemple de Matthieu Marcillaud.

Installation

Comme tous les plugins SPIP. Le mieux est de se référer à la documentation officielle.

Les dépendances : plugin bonux, plugin saisies, disponibles sur la zone. Le plugin géographie est nécessaire si on veut placer des bannières « geolocalisées ». Il n’est plus obligatoire depuis la révision 33692.

2 tables sont ajoutées dans la base : spip_bannieres et spip_bannieres_suivi. Le plugin utilise la gestion des documents de spip en y ajoutant un nouvel objets (banniere).

Mise à jour à partir du plugin bannieres_2.0 de FdM :

Ce plugin met à jour la table spip_bannières et ajoute la nouvelle spip_bannieres_suivi. Les bannières qui se trouvent dans le dossier IMG anciennement nommées ban_xx.ext sont renommées en banniereonxx.ext, permettant ainsi un fonctionnement immédiat du plugin.

Les nouvelles bannières utiliseront le système de chargement de documents de spip. Vous pourrez alors supprimer vos bannières situées directement à la racine du dossier IMG (par FTP). Les nouvelles seront stockées dans les sous dossiers en fonction de leur extension (voir système de documents de spip). L’ancien champ alt et ext ne sont plus utiles. Si le champ alt (texte alternatif) contient quelque chose, vous pourrez le supprimer. Une fois vidé, ce champ n’apparaitra plus, vous devrez alors utiliser le champ « titre » associé au document.

Support des campagnes google analytics

Depuis la version 0.29, il est possible d’activer un mode expérimental qui ajoute aux URLs destinations, les paramètres de suivi de campagnes personnalisées de google analytics

Pour activer ce mode, ajouter dans votre fichier config/mes_options.php

define('_BANNIERE_TRACKING_GOOGLE', true);

Les URLs seront du type :

http://www.site.tld/?utm_medium=banner&utm_source=dragon%20rouge&utm_campaign=hiver2012

Avec :

  • utm_medium : pour l’instant toujours banner
  • utm_source : le nom de votre site Spip
  • utm_campaign : le nom de votre campagne

Utilisation Webmaster : la balise #BANNIERE

Il suffit simplement de placer la balise #BANNIERE à l’endroit souhaité dans le squelette. Si vous voulez afficher plusieurs balises différentes dans la page, vous devrez passer l’info dans les paramètres : #BANNIERE{position}, position étant un numéro de 1 à 9 et géré dans l’espace privé.

Vous pouvez aussi passer un paramètre de localisation de la façon suivante : #BANNIERE{position, code_postal, numero_pays}. Ce fonctionnement est basé sur le plugin géographie qui contient les codes postaux, les départements et régions de France, ainsi qu’une liste de pays. numero_pays doit correspondre au numéro du pays de la table spip_geo_pays.

Une noisette avec un cache de 0 est fournie dans le plugin. Cela peut-être utile pour les campagnes de courtes durée ou pour l’affichage aléatoire. Pour l’utiliser il faut remplacer la balise par <INCLURE {fond=inc_banniere}{position=valeur}{code_postal=valeur}{numero_pays=valeur}>.

Utilisation Rédacteur : le modèle <banniere>

Depuis la version 0.26, il est possible d’intégrer la bannière dans le texte d’un article en utilisant le modèle <banniereXX> où XX est le numéro de position de 1 à 9.

Administration

Vous pouvez gérer vos campagnes (ou bannières) depuis l’espace privé. Une liste des campagnes est visible. Vous pouvez trier les colonnes pour faciliter vos recherches. Cette liste vous informe si une campagne est active ou pas et si l’image ou document est présent (c’est l’objet principal :) !).

Pour créer une nouvelle campagne, et si le plugin géographie est présent, il faut choisir son type de diffusion : internationale (pour un affichage par défaut, c’est cette option qu’il faut choisir), nationale, régionale, départementale ou locale.

La recherche se fera bien sûr en partant du local. Si plusieurs campagnes sont configurées avec la même diffusion, un choix aléatoire sera fait par le système.

Les clics sur les bannières de type image sont comptabilisées.

Gestion du Flash

Pour les campagnes Flash, en général le lien est défini dans le fichier swf,
par défaut le plugin ne comptera pas les clics de votre campagne sur ce fichier.

Si vous souhaitez utiliser le compteur de clic et les données des campagnes, il faut programmer votre fichier flash de la façon suivante
Le plugin insère votre flash en transmettant les données de la campagne via le paramètre FlashVars

<object type='application/x-shockwave-flash' data='IMG/swf/pub.swf' id='bandeau' width='400' height='200'>
              <param name='movie' value='IMG/swf/pub.swf' />
              <param name='quality' value='high' />
              <param name='menu' value='false' />          
              <param name='wmode' value='transparent' />
              <param name='FlashVars' value='url_site=http%3A%2F%2F127.0.0.1&amp;action=visit_url&amp;banniere=5&amp;url=http%3A%2F%2Fwww.wikivin.org' />
            </object>

FlashVars transmet les variables : url_site, action, banniere, url que vous pouvez ensuite exploiter dans votre flash

Par exemple en actionscript 3, voici le code d’un bouton qui utilise les variables précédentes

but_callback.addEventListener(MouseEvent.CLICK,actionButCallback); 


function actionButCallback(evt:MouseEvent){ 
 var paramObj:Object = LoaderInfo(this.root.loaderInfo).parameters;
 var url_site =  paramObj["url_site"];
 var action =  paramObj["action"];
 var url  = paramObj["url"];
 var banniere = paramObj["banniere"];
 debug.text = "url:" + url;
 var urlRequest=new URLRequest(url_site+"/spip.php?action="+action+"&banniere="+banniere+"&url="+url); 
 navigateToURL(urlRequest,"_self"); 
}

Voici un exemple de bannière flash (avec son code source) mettant en oeuvre les deux types de boutons : télécharger un exemple de bannière flash

Evolutions...

Quelques améliorations possibles à étudier ou à faire...

  • Utilisation de CFG pour :
    • Utiliser ou pas les bannières localisées (dépendance plugin géographie)
    • Configurer l’utilisation ou pas du suivi des clics (table ou fichier log ou rien)
  • Utiliser les modèles de spip
  • Utiliser le filtre image_reduire
  • Suivi des clics sur les objets multimedia
  • Statistiques de clics ou export des données
  • Revoir les icones et le logo

Discussion

39 discussions

  • 1

    Bonjour,
    Depuis la version de bannières 2.5, ça coince.
    1) Début juillet, je mets le plugin à jour et me bloque mon site : la page d’accueil ne fonctionne plus
    je remets donc une ancienne version datant de 6 mois 2. ? et tout refonctionne -> c’est bien le plugin.
    2) Comme il y a eu une mise à jour le 25/07, je l’ai l’installée en pensant que ça fonctionnerait et ça va mieux, rien ne bloque, mais il ne retrouve plus mes anciennes bannières pourtant présente dans IMG-> gif
    Je les réinstalle, il les accepte sauf petit message d’erreur pour une plus ancienne de 1 an, mais celle de 2 mois ok. Le problème est qu’activée, elle n’apparaît pas sur la page publique.
    NB : le #Bannières est toujours placé dans ma page « sommaire.html »
    La version 2.4 fonctionnait impeccablement avec spip et ahunstic.
    Pourriez-vous soit m’indiquer où trouver la version 2.4 ou comment résoudre ce problème.
    Merci

    • bonjour, le plugin a été vandalisé il y a un ou deux mois.
      Je l’ai réparé fin juillet, il me semble qu’il fonctionnait bien alors.
      Pourriez vous vérifier si votre squelette contient bien #BANNIERE{5} (avec le numéro de votre campagne) et recalculer la page.
      Éventuellement essayer de désinstaller le plugin et le ré-installer pour avoir la bonne version de la base de donnée. Merci de nous tenir au courant

    Répondre à ce message

  • 1

    Bonjour et merci pour ce plugin.

    Je fais ici une suggestion que je ne suis pas capable de développer moi-même :( :
    il serait intéressant d’avoir un compteur du nombre d’affichage quotidien des bannières. Je suppose que vous y avez déjà penser mais que cela doit poser quelques difficultés.

    Qu’en pensez-vous ?

    Merci

    • La version 0.28 du plugin permet de compter le nombre d’affichages des bannières.

    Répondre à ce message

  • 2

    bonjour,

    il me semble qu’il y a un soucis avec l’ajout des images :
    -  Si je créé une campagne sans mettre une image, l’interface m’indique que l’image est absente. Normal.
    -  Mais si j’édite à nouveau la campagne, j’ajoute dans un second temps une image au moyen du formulaire, et j’enregistre ensuite la camapagne, spip me dit toujours que l’image est manquante.
    -  Mais je ne vois nulle part dans la fenêtre d’édition de la campagne où je peux associer une image et une campagne. Que faut-il faire ?
    -  Pour éviter ce problème, il faut donc ajouter l’image au moment de la création de la campagne et pas après. Ce qui est un peu embêtant.

    Merci d’avance pour vos réponses. christophe

    • je n’arrive pas à reproduire ton bug.

      Si tu crées une campagne sans image, tu peux la rajouter par la suite :
      éditer la campagne > modifier la campagne > ajouter une image (le formulaire d’ajout est sur le côté en général à gauche).

    • merci pour ta réponse.

      oui, j’avais bien vu le formulaire à gauche pour ajouter une image. Je viens de faire l’essai à nouveau en local (avec MAMP) et sur un serveur en ligne, avec spip 2.1.8, je te confirme que j’ai bien le problème à chaque fois : si l’image n’est pas ajoutée au moment de la création de la campagne, elle n’est pas prise en compte.

      Où est-ce que je peux chercher des infos ? Dans les logs ?

    Répondre à ce message

  • sortie de la nouvelle version :

    • nouveau look
    • intégration des flashs avec une méthode optionnelle pour intégrer le compteur de clics
    • ajout d’un modèle <banniereXX> en plus de la balise #BANNIERE

    Répondre à ce message

  • Suis débutant dans SPIP et j’aimerai savoir comment utiliser les pluggins bannières. J’aimerai bien ajouter une bannière sur l’entête de toutes mes pages. Après l’installation et le parametrage dans l’espace privé, rien ne s’affiche chez moi et je ne comprend pas.
    Comment modifie ton le squelette pour avoir le résultat. quel fichier dois je modifier et comment ?

    Répondre à ce message

  • Eric CONSTANT

    Peter Din, si tu as besoin d’un conseil technique n’hésites pas, Artefake utilise ce support avec succès depuis 2004.

    Nous avons adapté le plugin pour la nouvelle version graphique du site www.artefake.com qui sera disponible en ligne dans quelques jours. Tout fonctionne parfaitement bien merci.

    Répondre à ce message

  • 1

    Bonjour,

    Merci pour ce plugin qui fonctionne très bien sur mon site http://www.magie-ffap.com

    J’utilise la version SPIP 2.1.8 et le plugin squelette Sarka-Spip (ceci pour vous dire que je ne comprends rien à la programmation d’un squelette et je ne sais pas par quel bout le prendre)

    Mon problème est le suivant :

    Je voudrais que mes bannières enregistrées défile de façon aléatoire ou successive, chaque fois qu’il y a un rafraichissement écran, changement de page, action de clic...

    Pour l’instant il semble que la dernière enregistrée soit la seule à être prise en compte.

    Pourtant j’ai vu dans l’explication que l’on parlait d’aléatoire mais sans donner le modus opérandi.

    Pouvez vous m’aider ? Je vous remercie, mais encore une fois j’utilise un squelette plugin et je ne suis pas doué, je sais en revanche modifier le script si on me dit quoi mettre dedans et où.

    Merci de votre aide
    Peter Din

    • Je suis désolé d’avoir posté avant de réfléchir et de faire des tests.
      J’ai réussi à programmer l’aléatoire en utilisant le code <INCLURE fond=inc_banniereposition=valeur

      Je vous remercie
      Peter Din

    Répondre à ce message

  • Bonjour,
    Le plugin fonctionne bien par contre quand je passe sur une campagne de pub par pays, je n’ai plus rien qui s’affiche dans la partie publique du site.
    Je cherche également à faire un affichage différent pour une campagne de pub.
    C’est à dire, que j’ai un site en 4 langues ( en développement) et j’aimerais selon la langue aller chercher une image différente. Est ce possible ??
    Merci

    Répondre à ce message

  • 3

    Bonjour,

    Ce plugin est redoutablement efficace.
    Pour autant, je cherchais à intégrer des bannières différentes en fonction de la rubrique affichée.
    Auriez-vous des pistes pour arriver à ce résultat ?

    Merci

    • Oups, j’avais oublié de signé mon post...

    • Bonjour,

      Une solution simple, si tu n’as pas beaucoup de bannières et rubriques, c’est de jouer sur les positions, ensuite tu fais un test de rubrique dans ton inclure, du genre :

      [(#ID_RUBRIQUE|=={1}|oui)
      #BANNIERE{1}
      ]

      Si tu n’as qu’une banniere dans la page, tu peux essayer (pas sur que ça passe) :

      #BANNIERE{#ID_RUBRIQUE}

      Dans ce cas, la position correspond à la rubrique

      Dans la partie privée, la liste des positions proposées est limitée à 9, mais tu peux changer cela dans la partie saisies du fichier formulaires/editer_banniere.html.

      Jeannot

    • Merci Jeannot !
      L’autre possibilité entrevue est d’utiliser les mots clés... J’ai fait un essai, et ça marche au poil !!!
      Car l’idée était d’afficher dans une rubrique (sous-rubrique et articles inclus) la bannière renvoyant vers un des articles...

      Bref, j’ai testé plusieurs voies et ce plugin est définitivement flexible, et plein de (bonnes) surprises à l’utilisation.

      Encore merci

    Répondre à ce message

  • 1

    Bonjour et merci pour ce plugin.

    Je viens de l’installer en local pour des tests en insérant des animations flash pour un affichage aléatoire. Au début tout se passe bien. Mais après lorsqu’on actualise la page plus rien ne s’affiche à part l’entête du site. Quelqu’un aurait il une idée ?

    • Bonjour,
      Après plusieurs recherches il m’a suffit de paramétrer le cache de l’entête à 0 comme l’inclure et tout marche super bien.

      Merci

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

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