web-dev-qa-db-fra.com

Ajout de widgets HTML et standard personnalisés à la barre latérale

Je souhaite ajouter à la fois du code HTML personnalisé que les widgets de texte avancés ne peuvent pas prendre en charge et les widgets de la barre latérale standard dans la même barre latérale. Cependant, lorsque je mets un widget de barre latérale dans le thème, il supprime tout le code HTML personnalisé et affiche simplement les widgets dans la barre latérale. Cela ne devrait pas être une solution difficile, mais je suis un assez grand phob noob qui a appris wordpress par essais et erreurs. J'ai joint le code de ma barre latérale:

    <div class="sidebar-blog">
        <div class="widget-wrap">
                    <div class="widget">
        <h4>Title goes here</h4>

            <p>Content goes here<p>

        </div>
                    </div>


        <div class="widget-wrap">
                    <div class="widget">
        <h4>Title goes here</h4>

            <p>Content goes here<p>

        </div>
                    </div>
    </div><!--end .sidebar-blog div-->

Merci pour toute aide

1
Jeff

Je suppose que vous faites quelque chose comme ça:

<?php if ( ! dynamic_sidebar( 'widget-area' ) ) : ?>
    Your sidebar code goes here.
<?php endif; ?>

Si oui, faites ceci à la place:

Your sidebar code goes here.
<?php dynamic_sidebar( 'widget-area' ); ?>
4
sorich87

Vous pouvez également utiliser un plugin - comme http://www.mlynn.org/graceful-sidebar-plugin que je viens d'écrire et de publier. Le plug-in Graceful Sidebar crée un widget qui vous permet d'utiliser des champs personnalisés dans une publication ou une page qui s'affichent dans la barre latérale. Vous pouvez l'utiliser pour afficher du code HTML personnalisé ou un message simple. Les champs personnalisés utilisés sont graceful_title et graceful_content.

1
mike

Ça devrait le faire:

    <!-- START Title & static content -->
    <div id="sidebar-right-default-content" class="span-6 last">
    <h3><?php _e('Your headline for the sidebar', TEXTDOMAIN); ?></h3>
        <?php some_function(); ?>
    </div>
    <hr />
    <!-- END Title & static content -->

    <!-- Sidebar right (default) - Widget Area - Adds a predefined Textwidget until nothing is defined via Admin UI > Design > Widgets -->
    <?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() && !is_active_sidebar( 'widgets-sidebar-right-default' ) ) :

        the_widget(
            'WP_Widget_Text'
            ,array(
                'title'     => 'Textwidget'
                ,'text'     => '
                    <p>
                        Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
                        Aenean et quam a ante sodales feugiat. Aliquam et vulputate turpis. 
                        Mauris quis sodales neque. Sed vestibulum faucibus eros nec tincidunt. 
                        Integer tortor magna, suscipit vitae ultricies vel, vehicula sit amet sapien. 
                    </p>
                '
                ,'filter'   => ''
            )
            ,array(
                'before_widget' => '<div class="widget-container">'
                ,'after_widget' => '</div>'
                ,'before_title' => '<h4 class="widget-title">'
                ,'after_title'  => '</h4>'
            )
        );

    elseif ( is_active_sidebar( 'widgets-sidebar-right-default' ) ) : 
        dynamic_sidebar( 'widgets-sidebar-right-default' );
    endif;
?>

</div>
<!-- END Sidebar right (default) -->
1
kaiser