web-dev-qa-db-fra.com

Les éléments du widget disparaissent

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

1
Eray

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.

2
Eray

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.

0
mahatmanich

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 .

0
P-S

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.

0
james