web-dev-qa-db-fra.com

wordpress widget zone de texte dans la barre latérale

J'ai un widget de zone de texte normal que j'utilise dans certaines barres latérales. Le widget texte génère un div dans un ul. Est-il possible de faire en sorte que le widget génère un autre ul li à la place?

<ul><h3>Heading</h3>            <div class="textwidget">
2
digitalbart

vérifiez votre sidebar.php et functions.php du thème, la barre latérale définit le balisage en dehors du widget; la fonction register_sidebar() définit le balisage avant le contenu des widgets; cette balise vous devez changer. Voir le codex pour cette fonction: codex register_sidebar ()

Modifier

Plus précisément, vous devez examiner les paramètres before_widget et after_widget du tableau d'arguments register_sidebar().

Si l'appel register_sidebar() ressemble à ceci:

register_sidebar(array( // Right Column widget area
    'name'=>'Sidebar Right',
    'id'=>'sidebar-right',
    'description' => 'Right-column, half-width sidebar in three-column layout',
    'before_widget' => '<div id="%1$s" class="widget %2$s">',
    'after_widget' => '</div>',
    'before_title' => '<div class="title">',
    'after_title' => '</div>',
));

Puis changez ceci en ceci:

register_sidebar(array( // Right Column widget area
    'name'=>'Sidebar Right',
    'id'=>'sidebar-right',
    'description' => 'Right-column, half-width sidebar in three-column layout',
    'before_widget' => '<li id="%1$s" class="widget %2$s">',
    'after_widget' => '</li>',
    'before_title' => '<div class="title">',
    'after_title' => '</div>',
));

Plus précisément, vous changez ceci:

    'before_widget' => '<div id="%1$s" class="widget %2$s">',
    'after_widget' => '</div>',

Pour ça:

    'before_widget' => '<li id="%1$s" class="widget %2$s">',
    'after_widget' => '</li>',
2
bueltge

Vous pouvez annuler l'enregistrement du widget par défaut:

unregister_widget( 'WP_Widget_Text' );

Enregistrez ensuite le vôtre avec un balisage personnalisé.

http://codex.wordpress.org/Widgets_API

http://azuliadesigns.com/create-wordpress-widgets/


Ou vous pouvez utiliser Javascript et lui dire simplement de régler le code HTML une fois le chargement du document terminé.


Vous pouvez également voir si le code souhaité est complètement imbriqué dans le balisage actuel et un style autour du balisage existant. Vous pouvez supprimer tous les effets secondaires négatifs que vous avez avec CSS.

1
Sterling Hamilton

Utilisez le widget de texte par défaut wordpress. Son nommé "Texte" dans votre zone de widget. Vous pouvez ajouter un widget texte illimité dans votre barre latérale. Chaque widget de texte crée un nouveau ul li. J'espère que tu comprends ce que je veux dire.

0
Giri