2009-09-09 58 views
0

我学会了how to add additional sidebars现在我需要弄清楚如何在主题Librio(wordpress.org/extend/themes/librio)中添加一个额外的边栏。在特定的Wordpress主题中添加第2个边栏

我绝对不知道在哪里看。该代码是纯粹的混乱,而不是自我解释。

我的sidebar.php包含以下代码:

<div id="idontknow"> 
<?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar1')) : ?> 
<?php endif; ?> 
</div> 

现在,如果我复制并添加相同的代码,但与“sidebar2”我得到的是显示里面的第一个栏第2栏。

<div id="idontknow"> 
<?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar1')) : ?> 
<?php endif; ?> 
</div> 

<div id="ireallydont"> 
<?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar2')) : ?> 
<?php endif; ?> 
</div> 

我不想那样。我想要两个单独的侧边并排。有人可以帮我解决吗?

我试图用CSS和id = leftsidebar和id = rightsidebar过期,但它不起作用。

只是为了再次澄清: 我有2个侧边栏!我甚至已经得到了正确的代码中的functions.php

if (function_exists('register_sidebar')) 
    register_sidebar(array('name'=>'sidebar1', 
    'before_widget' => '<div class="block">', 
    'after_widget' => '</div>', 
    'before_title' => '<h3 class="widgettitle">', 
    'after_title' => '</h3>', 
)); 
register_sidebar(array('name'=>'sidebar2', 
    'before_widget' => '<div class="block">', 
    'after_widget' => '</div>', 
    'before_title' => '<h3 class="widgettitle">', 
    'after_title' => '</h3>', 
)); 

问题是,像提到的,第二个新创建的侧边栏的第一个栏里面显示。我想修改主题,以便我有2个独立的侧边栏。

回答

0

这是一个比其他问题更多的CSS问题。我复制了您的设置并完成了以下操作以获得两列工作。

我的边栏。php是:

<div id="sidebar"> 
    <div id="idontknow"> 
    <?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar1')) : ?> 
    <?php endif; ?> 
    </div> 
    <div id="ireallydont"> 
    <?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar2')) : ?> 
    <?php endif; ?> 
    </div> 
</div> 

我注册了两个侧边栏在functions.php(如Dextro建议),并确认他们都工作,并显示一个在另一个之下。

然后我做出的style.css以下宽度的变化:

  • 在行173,我改变#内容的 宽570px
  • 在行303,我改变

    侧边栏的宽度为300像素的

然后,我添加了一个新的CSS规则:

#sidebar #idontknow, 
#sidebar #ireallydont { 
    width: 150px;float: left; 
} 

现在我有两列的一面。你可能想调整宽度,你一定要修复侧边栏背景图片。

+0

做到了!谢谢! – 2009-09-09 22:24:07

1

您必须注册第二个边栏。

在你的主题文件夹的连接创建一个文件的functions.php(也许已存在此文件)中添加以下代码:

<?php 
     register_sidebar(array('name'=>'sidebar')); 
     register_sidebar(array('name'=>'sidebar2')); 
    ?> 

现在,如果你去你的WordPress管理部分,你应该看到,有2个侧边栏可供添加小部件。

+0

不,这不是问题。我有2个侧边栏。问题是第2侧栏显示在第1侧栏内。 我正在寻找一种方式,在主题Librio中有两个分开的侧边栏,最初是一个侧边栏主题。 – 2009-09-09 12:33:41

+0

如果你把你的代码在线,那么它会更容易发现你的问题。 – Dextro 2009-09-10 08:32:48

0

您是否尝试将您的第二个侧栏div的id更改为id =“sidebar2”?很难说没有看到网站/代码,但在CSS中可能会导致两个边栏重叠。要么,或者第一个没有正确关闭。

+0

伙计,这就是我以后;)。 我没有CSS和php/html代码,使他们2分开侧边栏,因为主题Librio最初是一个侧边栏的主题。 我需要的是实现它的代码。 – 2009-09-09 19:16:19

0

你把你的侧边栏div里面的librio的侧边栏div?

换句话说,你的sidebar.php看起来像这样吗?

<div id="sidebar"> 
    <?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar1')) : ?> 

    <!-- default librio sidebar stuff goes here --> 

    <?php endif; ?> 

    <div id="sidebar2"> 
     <?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar1')) : ?> 

     <!-- second sidebar stuff goes here --> 

     <?php endif; ?> 
    </div> 
</div> 

当我这样做时,第二个侧边栏作为默认librio边栏的一部分出现。当我移动<div id="sidebar">之外的<div id="sidebar2">内容时,第二个侧边栏内容出现在页面的底部。您需要修改CSS以将其移动到其他位置。

相关问题