WordPress : image d’arrière-plan personnalisée par défaut non enregistrée dans la base de données lors de la création d’un nouveau site
Je suis un auteur de thème et le thème que j’ai créé est utilisé dans un environnement multisite. J’ai ajouté la custom_background
fonctionnalité à ce thème, avec une image par défaut et tout fonctionne comme prévu : l’utilisateur peut changer l’image et voir le résultat en direct est le Theme Customizer avant de le mettre en ligne.
Voici la déclaration custom_background :
add_action('after_setup_theme', 'user83643_theme_features');
function user83643_theme_features(){
add_theme_support( 'custom-background' , array(
'default-color' => '1878A0',
'default-image' => get_template_directory_uri() . '/img/default.jpg',
'wp-head-callback' => '__return_false',
));
}
Cependant, lorsqu’un nouveau site est créé sur le réseau, l’image par défaut n’apparaît pas dans l’interface. Je peux le voir dans le backend dans le personnalisateur de thème, mais je dois le sauvegarder une fois pour l’activer sur le frontend : get_theme_mod('background_image')
revient false
avant de le sauvegarder une fois.
Une idée de comment sauvegarder l’image (et la couleur) par défaut dans la base de données lors de la première activation du thème ?
Solution n°1 trouvée
Je suppose que vous voulez dire » get_theme_mod('background_image')
retourne false
» avant que je « sauvegarde une fois pour l’activer »
Si tel est le cas, get_theme_mod
accepte un paramètre par défaut. Consultez le codex :
$name (string) (obligatoire) Nom de la modification du thème.
Default: None
$default (booléen|chaîne) (optionnel)
Default: false
Passez votre image par défaut comme deuxième paramètre à cette fonction et vous devriez être défini.
0 commentaire