web-dev-qa-db-fra.com

Un bon moyen d'ajouter une image de fond différente pour chaque page?

Je travaille sur un thème enfant thématique dans lequel j'ai besoin d'une image unique décorant chacune des pages principales du site, à partir d'un ensemble prédéfini de images permanentes. Il serait également idéal d’avoir une de ces mêmes images sélectionnées au hasard pour apparaître sur toutes les autres pages.

Utiliser un widget de la barre latérale pour charger les images semble être une bonne option, mais je ne sais pas encore créer mes propres widgets, et je n’ai pas eu la chance de trouver un plugin offrant les fonctionnalités simples que je cherchais. Je ne veux pas non plus encombrer le panneau d'administration avec des plug-ins et des options que le client ne devrait pas manipuler.

Je pense qu'il sera probablement plus idéal de mettre quelque chose dans mon functions.php qui ajoute du balisage généré à un crochet thématique basé sur l'ID de la page, mais je ne suis pas tout à fait sûr de ce que je fais. J'ai donc pensé demander à voir. si quelqu'un a déjà une excellente solution.

2
Dees

En regardant leur source démo , le moyen le plus simple de le faire est de styliser des classes de page comme pageid-69 ou slug-example-page:

body.slug-example-page{
  background: url(...);
}

S'il doit s'agir d'une image aléatoire, ajoutez vos styles dans le modèle d'en-tête afin de pouvoir utiliser PHP pour générer des fichiers CSS dynamiques.

4
onetrickpony