Plugin Bannières

Ce plugin met en oeuvre une balise permettant de gérer l’affichage de bannières.

Ce petit plugin met en oeuvre une balise #BANNIERE à installer dans les squelettes, qui génère de façon aléatoire une bannière parmi celles préalablement définies.

Une interface d’administration permet de gérer des campagnes d’affichage.

Installation

Comme tous les plugins en suivant la procédure habituelle.
Le plugin installe une nouvelle table spip_bannieres dans la base.

L’installation préalable du plugin cfg est indispensable.

Configuration

Dans la configuration cfg, un nouvel onglet permet de définir les caractéristiques admissibles pour les bannières (largeur, hauteur, format).

Mise en oeuvre

Il suffit de placer la balise #BANNIERE à l’endroit désiré dans les squelettes.

Il est à noter que, pour des campagnes d’affichage de courte durée (quelques heures à quelques jours), la durée standard du cache peut fausser le caractère aléatoire de l’affichage, surtout sur la page d’accueil ou les pages pilotes du site. Dans ce cas, il est impératif de réduire voire annuler la durée du cache.

Cette limitation peut être levée en substituant la balise par la noisette inc_banniere. <INCLURE {fond=inc_banniere}>

Administration

Dans l’espace privé, une page d’administration permet d’ajouter, de modifier ou de supprimer les bandeaux dans la table des bannières, en précisant :

-  Le nom de la campagne
-  L’email de référence
-  Le lien vers le site de référence
-  L’intervalle de publication
-  Un commentaire quelconque et bien sûr,
-  la bannière elle-même et son texte de remplacement.

Le plugin permet également le comptage des clics sur chacune des bannières actives.

Les bannières figurant dans l’intervalle de publication sont affichées de manières aléatoires pendant une durée dépendante du cache.

Bannières (0.11.0)

Discussion

33 discussions

  • Marc Andria

    Bonjour,

    J’utilise le plugin pour mon site et je voudrais savoir s’il existait un moyen de faire que les pubs s’ouvrent dans une page différente ou un onglet différent ? Et par hasard comment modifier le template #BANNIERE pour utiliser CSS ?

    Merci d’avance !

    Répondre à ce message

  • ah.. je découvre cet initiative :-) un question me turlupine cependant : pourquoi avoir fait un autre plugin au lieu de faire évoluer simplement l’autre ?

    Répondre à ce message

  • Azul/Salut,

    Excellent plugin mais ça a quelques p’tits problèmes.

    -  Ça ne supprime pas l’image ban_x.y quand on supprime une compagne. (Même problème avec SPIP documents et logos)
    -  Il faut ré-envoyer l’image quand on veut actualiser les infos de la compagne.
    -  Quand on actualise les infos, ça se fait mais ça affiche un message d’erreur aussi.
    -  L’URl de la compagne ne marche pas.

    Merci.

    Répondre à ce message

  • Bonjour

    Pour info : une autre version du plugin a été mise en ligne.

    La doc est ici.

    Jeannot

    Répondre à ce message

  • Je suis sous spip 2.0.9 et j’utilise le squelette Ahunstic.
    Pour l’insertion d’une bannière « statique » en .jpeg , c’est génial.
    Là, où ça ne va plus, c’est lorsque je réalise une petite animation en Flash.
    Lorsque je la télécharge, elle n’apparaît pas, ou ne se télécharge pas.
    Dans l’administration, pas d’aperçu -> sur le site idem !
    Merci pour votre aide.

    Répondre à ce message

  • 1
    aurélien

    Bonjour
    Je viens d’installer ce plugin, je l’ai paramétré dans l’onglet configuration et je suis allé dans Edition pour pouvoir créer ma campagne, je rentre tous les paramètres (date début & fin, nom, images) mais au moment ou je clique sur Envoyer, rien ne se produit et je reviens à ma page Edition mais pas de campagne de créer.

    Je suis sous spip 2.0.8.

    Est-ce que quelqu’un pourrait m’aider à utiliser ce plugin qui a lair de répondre à mes attentes ?

    Merci d’avance

    Aurélien

    • Bonjour
      Après quelques recherches, je viens de m’apercevoir que la champs ext de la table spip_bannieres n’a pas été crée ce qui pose problème lors de l’insertion dans la BD.

      mysql> show COLUMNS from spip_bannieres
      -> ;
      +--------------+------------+------+-----+-------------------+----------------+

      Field Type Null Key Default Extra

      +--------------+------------+------+-----+-------------------+----------------+
      | id_banniere | bigint(21) | NO | PRI | NULL | auto_increment |
      | nom | text | NO | | NULL | |
      | email | text | NO | | NULL | |
      | site | text | NO | | NULL | |
      | alt | text | NO | | NULL | |
      | debut | date | NO | | 0000-00-00 | |
      | fin | date | NO | | 0000-00-00 | |
      | clics | int(11) | NO | | 0 | |
      | commentaires | longtext | NO | | NULL | |
      | creation | date | NO | | 0000-00-00 | |
      | maj | timestamp | NO | | CURRENT_TIMESTAMP | |
      +--------------+------------+------+-----+-------------------+----------------+
      11 rows in set (0.00 sec)

      mysql> INSERT INTO spip.spip_bannieres (nom,email,site,debut,fin,commentaires,alt,creation,ext) VALUES(’test’, ’aurelien.cabotse@laposte.net’, ’http://aurelien.cabotse.free.fr’, ’0000-00-00’, ’0000-00-00’, ’test’, ’test aussi’, CURRENT_DATE(), ’png’ ) ;
      ERROR 1054 (42S22) : Unknown column ’ext’ in ’field list’

      Je viens de le rajouter à la main et cela à fonctionner par contre je n’arrive toujours pas à afficher une banniere à l’aide de la noisette sur mon site public :-(

      Quelqu’un a-t-il réussi à faire fonctionner le plugin avec spip 2.0.8 ?

      Merci pour vos réponses

      Aurélien

    Répondre à ce message

  • 2

    Plugin IN-DIS-PEN-SABLE :)
    Ajoute beaucoup de vie dans un site (sans souci) du fait de la fonctionnalité de programmation des évènements.
    Il ne manque plus que la gestion des bannières au format swf et là je débouche une bouteille de champomi :)

    • miam miam
      dans balise/banniere.php

      remplacez

      	echo "<div>";
      	echo "<a href='".generer_url_action('visit_url','ban='.$data['id_banniere'])."' title='".$data['alt']."' ><img src='"._DIR_IMG."ban_".$data['id_banniere'].".".$data['ext']."'></a>";
      	echo "</div>";

      par

      if ($data['ext']=="swf"){
      echo "		<object width=\"160\" height=\"600\">
      <param name=\"movie\" value=\""._DIR_IMG."ban_".$data['id_banniere'].".".$data['ext']."\">
      <embed src=\""._DIR_IMG."ban_".$data['id_banniere'].".".$data['ext']."\" width=\"160\" height=\"600\">
      </embed>
      </object>
      ";}else{
      		echo "<div>";
      		echo "<a href='".generer_url_action('visit_url','ban='.$data['id_banniere'])."' title='".$data['alt']."' ><img src='"._DIR_IMG."ban_".$data['id_banniere'].".".$data['ext']."'></a>";
      		echo "</div>";
      		
      }

      PS : perso je n’ai qu’une taille 160X600

      sans oublier d’autoriser les swf dans les réglages du plugin

    • Avec ces modifications, les bannières swf s’affichent mais le lien et donc le compteur de visite ne sont pas actifs. par ailleurs, les GIF ne s’affichent plus !
      Pouvez-vous m’aider

      Merci

      JM

    Répondre à ce message

  • Bonjour,
    En spip 2.0.8 j’ai moi aussi constaté le défaut de fonctionnement du lien. J’ai appliqué la modif proposée par Hoenir ci-dessous, et les liens fonctionnent !

    Je verrais deux possibilités d’amélioration si le programmeur a le temps ! :)

    Les dimensions qu’on donne dans cfg, sont les dimensions maxi de l’objet. Donc si on met une image plus grande on en prend une partie. C’est en tout cas ce qui se passe chez moi, seule la partie haute apparait.

    Serait-il possible d’appliquer un filtre réducteur d’image de spip ? Comme ça on n’aurait plus à s’embêter à d’abord dimensionner les images comme il faut...

    Un truc qui serait aussi bien ce serait de pouvoir animer l’image. Actuellement c’est au rafraichissement de la page que l’image change aléatoirement. J’ai vu cette démo en jquery et j’avoue que j’aimerai bien un truc comme ça : que l’image change toutes les x-secondes (dans l’idéal à paramétrer en cfg)

    Voilà, tout ça ce serait des plus que j’apprécierais, mais c’est déjà très bien comme ça !

    Répondre à ce message

  • Hoenir

    Bonjour, merci c’est un très sympathique plugin.

    J’aurai juste à faire deux remarques.
    Comme cité plusieurs fois plus tôt, il suffit d’une toute petite modification pour avoir les puces de visible dans le panneau admin. puce_verte.gif

    Et concernant le lien de la bannière, après quelques recherches sur les meilleurs moyens de rediriger une page, j’ai enfin compris pourquoi la bannière ne renvoyait pas sur l’url du site quand on cliquait sur elle. (Dans mon cas.)

    Il manquait la fonction php exit qui termine l’interprétation du code qui est exécuté.

    Ainsi dans le fichier action{visit_url.php
    cela ressemble à ça, une fois modifié :
     

    	function action_visit_url() {
    		$id_banniere=$_GET['ban'];
    		$query=spip_query("SELECT * FROM spip_bannieres WHERE id_banniere=$id_banniere");
    		while ($data=spip_fetch_array($query)){
    			$url=$data['site'];			
    			header("location:".$url);
    			spip_query("UPDATE spip_bannieres SET clics=clics+1 WHERE id_banniere=$id_banniere");
    			exit;
    		}
    	}

    Répondre à ce message

  • 1

    Erreur dans le post précédent :
    C’est évidemment une balise #BANNIERE qu’il faut intégrer au squelette... désolé je débute.

    Pour accéder au code et le modifier je dois visiblement passer par le répertoire squelette en local.

    -  Mais avec quel outil modifier ma page ? Puis-je utiliser notepad ++ ?
    -  Et sur quel fichier intervenir en admettant que je désire insérer ma bannière sur la page d’accueil : fichier SOMMAIRE ?

    Merci de m’éclairer.

    JPV56

    • -  Tu peux également mettre un inclure comme ci-dessus si tu veux gérer le cache
      -  Notepad++ est indispensable mais nécessite un peu de connaissance html, voire php
      -  Tu modifies sommaire.html comme les autres squelettes

    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