Bannière aléatoire du Blog

la banniere par défaut

La bannière du Blog affiche un extrait d’image tiré de l’album photo, et ceci grâce une fonctionnalité de Zenphoto.
J’aime bien le principe, d’une part parce que la bannière change à chaque chargement (on se lasse d’une image, si belle soit-elle), d’autre part parce que le découpage de l’image (la fonction n’extrait qu’une zone de la photo) génère une image nouvelle, souvent inattendue.

Pour ce faire, j’utilise une fonction php include() dans le fichier hearder.php de mon thème, puisqu’il s’agit d’exécuter un bout de code de Zenphoto dans WordPress :

<div id="header_img">
<?php include("https://pled.fr/zenphoto/?p=heading"); ?>
</div>

Oui mais voilà, depuis quelque temps, les serveurs de Free ont la mauvaise idée de supprimer purement et simplement la fonction de mon code. Résultat, plus de bannière ! Puis elle réapparaît le lendemain, ou quelques jours plus tard.
J’ai posé la question au support de Free, la réponse fut laconique :

Cher utilisateur,
Vous nous signalez qu’un fonction « php include » ne marche pas dans votre blog.
Je suis au regret de vous informer que votre demande est hors support pour l’équipe technique de Free.
Je reste à votre entière disposition pour toute information complémentaire et je vous souhaite une bonne année 2009

Au moins, c’est réglé, aucune explication à attendre de leur part.

Je me suis donc tourné vers le forum de PHPFrance, qui m’a orienté (réponse très rapide) vers la page de la documentation française détaillant la fonction php include(). Excellente documentation au passage.

Mon code est maintenant celui-ci :

<div id="header_img">
<?php $banniere = include("https://pled.fr/zenphoto/?p=heading");
if ($banniere <> 1)
echo "";
?>
</div>

Une simple condition d’ajoutée : si l’inclusion est réussie, alors $bannière = 1. Dans le cas contraire, j’affiche une bannière par défaut.

J’ai pu le tester en local sur mon poste, cela fonctionne parfaitement. Reste à attendre la prochaine défaillance des serveurs Free !

2 réflexions sur « Bannière aléatoire du Blog »

  1. Bonjour,

    Serait il possible d’avoir de plus amples détails sur le mode de fonctionnement de cette trouvaille pour une bannière aléatoire?

    J’utilise wordpress et souhaiterai intégrer ce concept, mais je n’arrive pas à comprendre le fonctionnement présenté ici.

    Merci d’avance pour la réponse.

    Cordialement

  2. Bonjour,

    Alors… tu utilises WordPress, OK, il faut aussi utiliser Zenphoto, puisque on utilise une fonction de Zenphoto.

    Ensuite, si tu lis l’anglais, tu trouveras la réponse sur ce post : A random banner for wordpress … Je n’ai pas trouvé ça tout seul, et j’avais posé la question sur le forum de zenphoto.
    La première réponse de Bert Simons fonctionne à merveille (fichier heading.php à créer et copier dans le répertoire de ton thème Zenphoto).
    Côté WordPress, le code à insérer dans le header.php est celui indiqué dans cet article.

    Finalement, cela s’est fait très facilement (plus facilement que je croyais !).

    Voilà, il te faut au moins la version 1.1.5 de Zenphoto. Ensuite tu peux modifier dans le fichier heading.php la zone et la taille de l’image qui sera extraite.
    Il vaut mieux que tes images originales soient au moins de cette taille + offset, sinon l’image est étirée et le grain apparait).
    Après, le seul problème que tu peux avoir est la fonction php_include(), d’après ce que j’ai lu, il vaut mieux que WordPress et Zenphoto soient sur le même site.

    Amuses-toi bien !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *