我有一个关于Wordpress的问题,为一个新的子菜单注册第二个侧边栏,我将在我的网站上发布一些博客文章。(仅在特定页面上)
我读了如何注册新边栏!在下面代码的前3行中,你可以看到我的主题函数__php中保存了什么,它似乎可以工作,如果是正确的,我不会说,但后端现在向我显示了小部件部分的2个侧边栏区域。(在没有之前,我记得)
这包括:
**// If Dynamic Sidebar Exists
if (function_exists('register_sidebars'))
register_sidebars(2);**
{
// Define Sidebar Widget Area 1
register_sidebar(array(
'name' => __('Widget Area 1', 'html5blank'),
'description' => __('Description for this widget-area...', 'html5blank'),
'id' => 'widget-area-1',
'before_widget' => '<div id="%1$s" class="%2$s">',
'after_widget' => '</div>',
'before_title' => '<h3>',
'after_title' => '</h3>'
));
// Define Sidebar Widget Area 2
register_sidebar(array(
'name' => __('Widget Area 2', 'html5blank'),
'description' => __('Description for this widget-area...', 'html5blank'),
'id' => 'widget-area-2',
'before_widget' => '<div id="%1$s" class="%2$s">',
'after_widget' => '</div>',
'before_title' => '<h3>',
'after_title' => '</h3>'
));
// Define Sidebar Widget Area 3
register_sidebar(array(
'name' => __('Widget Area 3', 'html5blank'),
'description' => __('Description for this widget-area...', 'html5blank'),
'id' => 'widget-area-3',
'before_widget' => '<div id="%1$s" class="%2$s">',
'after_widget' => '</div>',
'before_title' => '<h3>',
'after_title' => '</h3>'
));
}
现在,我有点困惑,因为在我的网站的第一次设置中,有一个小部件区域1!它包含头菜单,然后是小部件区域2!包含standart主题边栏:serach字段和一些宽度文本:P。
现在我不知道如何使第二个侧边栏完全正确地注册,以及如何在复制的侧边栏2.php中编程php
请参阅此处:
<!-- Sidebar -->
<aside id="sidebar">
<div class="sidebar-widget3">
<?php if(!function_exists('dynamic_sidebar2') || !dynamic_sidebar('widget-area-3')) ?>
</div>
</aside>
<!-- /Sidebar -->
我应该把小部件(搜索字段和文本)放在我的后端侧边栏区域,还是应该把它留在小部件区域?
对我来说,这是一个普遍的理解问题,我希望有人能帮助我,因为我是一个该死的初学者。
tnx很多。![这是实际的设置,这让我很困惑,我喜欢尽快修复这些步骤…
首先,删除此行:register_sidebars(2);**
这是不必要的,可能会搞砸。此外,您的函数名为register_sidears,末尾带有"s"。既然你在使用html5blank(我也是),我可以看出这是错误的。
我的函数看起来是这样的,它运行得很好。只需为您需要的任意数量的边栏复制register_sidebar数组。当谈到"我应该把这个和那个放在哪里"时,这取决于你。
if (function_exists('register_sidebar')) {
register_sidebar(
array(
'name' => __('Widget Area 1', 'html5blank'),
'description' => __('Description', 'html5blank'),
'id' => 'widget-area-1',
'before_widget' => '<div id="%1$s" class="%2$s">',
'after_widget' => '</div>',
'before_title' => '<h3>',
'after_title' => '</h3>'
)
);
}
当涉及到sidebar.php时,出于某种原因,您将其称为dynamic-sidebar2
,这是一个不存在的函数,除非您创建了它。
只需将其更改为:
<div class="sidebar-widget">
<?php if(!function_exists('dynamic_sidebar') || !dynamic_sidebar('widget-area-1')) ?>
</div>
<div class="sidebar-widget">
<?php if(!function_exists('dynamic_sidebar') || !dynamic_sidebar('widget-area-2')) ?>
</div>
<div class="sidebar-widget">
<?php if(!function_exists('dynamic_sidebar') || !dynamic_sidebar('widget-area-3')) ?>
</div>
我希望这能回答你的问题。如果没有,请留下评论,我会尝试修改我的答案。