如何为小部件提供个人ID或类?

时间:2012-12-26 03:13:13

标签: wordpress wordpress-theming

在我的wordpress安装中,我为我创建的新页面模板创建了一个新主题。但是,当我转到创建新的小部件时,每个小部件自动获得“textwidget”类。我对于需要不同样式的小部件有两种不同的样式,所以我不太确定如何为每个单独的小部件设置不同的类或者以不同的方式标记它们?

任何人都知道如何做到这一点?

以下是我的网站中包含2个小部件的页面:http://www.simonsayswebsites.com/how-we-get-you-more-customers/

您可以看到每个人都在具有相同类名的窗口小部件中。

这是我添加到我的页面functions.php中添加小部件的内容:

    if ( function_exists('register_sidebar') ){
    register_sidebar(array(
        'name' => 'sidebarpage',
        'before_widget' => '<div id="sidebarpage">',
        'after_widget' => '</div>',
        'before_title' => '',
        'after_title' => '',
));
}

这是页面模板本身的片段,用于显示:

<?php /* Widgetized sidebar */
    if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebarpage') ) : ?><?php endif; ?>

我可以使用不同的小部件区域,但想要了解有各自的小部件样式。

1 个答案:

答案 0 :(得分:3)

您误以为nameid

此外,在before_widget中,您不应声明固定ID,在您的网站中,两个小部件都具有相同的ID,而且......不好。

如果您按照法典中的示例进行操作,您的窗口小部件将收到一个唯一的ID和相关的类。

http://codex.wordpress.org/Function_Reference/register_sidebar

默认用法

<?php $args = array(
    'name'          => __( 'Sidebar name', 'theme_text_domain' ),
    'id'            => 'unique-sidebar-id',
    'description'   => '',
    'class'         => '',
    'before_widget' => '<li id="%1$s" class="widget %2$s">',
    'after_widget'  => '</li>',
    'before_title'  => '<h2 class="widgettitle">',
    'after_title'   => '</h2>' ); ?>