if ( function_exists('register_sidebar') )
register_sidebar(array(
"name" => "Top Widget Area",
"id" => "topWidgetArea-$i",
));
Je viens de créer une nouvelle barre latérale avec cela.
J'affiche cette barre latérale dans mon header.php
comme ceci:
<?php dynamic_sidebar( "Top Widget Area" ); ?>
Cela ne pose aucun problème et je peux mettre chaque widget dans ma barre latérale de la page Apparence → Widgets de wp-admin. Lorsque j'actualise cette page de widgets, tous les widgets (situés dans la zone supérieure du widget) disparaissent. Je vais l'expliquer avec une vidéo. Veuillez vérifier: http://screenr.com/szG8
Changer l'ID du widget de topWidgetArea
à top-widget-area
a résolu mon problème. Le numéro d'identification du widget doit avoir J'ai essayé beaucoup de variations pour ID (comme testtesttest
, asdasdasd
, widgetareaaa
). Je ne suis pas sûr pourquoi.
C'est la variable $i
qui est en cause, ce qui provoque probablement une erreur php car elle n'est pas définie.
Je viens d'avoir le même problème. La suppression des poussettes id
a résolu le problème.
Paramètres pour register_sidebar , à partir de http://codex.wordpress.org/Function_Reference/register_sidebar#Parameters :
id - id de la barre latérale - Doit être tout en minuscule, sans espaces (la valeur par défaut est un identifiant numérique auto-incrémenté).
Les traits d'union et les traits de soulignement ne sont pas obligatoires . Juste pas de majuscule, pas d'espaces .
Vous n'êtes pas autorisé les majuscules c'est pourquoi cela ne fonctionne pas.
Utilisez un nom comme this-dynamic-sidebar
ou this_dynamic_sidebar
. Il devrait s'agir du même nom que lorsque vous avez enregistré la barre latérale.