0

我每个人在 wordpress 中有几个页面,我需要不同的自定义右侧边栏和不同的 css 样式。例如,我希望我的主页右侧边栏设置宽度为 100 像素并显示特定内容,并且我希望我的特价商品页面带有一个不同宽度的右侧边栏,例如 230 像素,显示不同的内容,如小部件等...

据我了解,这应该可以通过创建自定义侧边栏来实现,方法是使用 wordpress 函数注册它们,然后为侧边栏创建一个具有不同 css 类的自定义侧边栏模板 php 文件。然后在自定义页面模板文件中调用新的自定义侧边栏模板文件,该文件将应用于 wordpress 中的目标页面,以便页面加载自定义侧边栏模板而不是带有新 css 类的普通侧边栏模板,该类可以修改以实现不同页面的不同侧边栏样式。所以我创建了以下自定义侧边栏模板并将其命名为 customrightsidebar.php

<div id="sidebar3"><div class="sidebar3"><?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('customright-sidebar') ) : ?><div class="customright-sidebar"><h4>Recent Posts</h4><ul><?php wp_get_archives('type=postbypost&limit=5'); ?> </ul></div><?php endif; ?></div> <br style="clear:both"></div>

然后我使用此功能注册了一个新的自定义侧边栏

register_sidebar(array('name'=>'customright-sidebar','before_widget' => '<div class="customright-sidebar">','after_widget' => '</div>','before_title' => '<h4>','after_title' => '</h4>',));

这是调用自定义侧边栏模板的自定义页面模板

<?php get_header(); ?><div id="breadcrumb"><?php breadcrumbs(); ?></div>

<?php include(TEMPLATEPATH."/customrightsidebar.php");?>

<div id="kontenutama"> <div class="postingan2"><?php if (have_posts()) : while (have_posts()) : the_post(); ?><h2><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>" rel="bookmark"><?php the_title(); ?></a></h2><?php the_content(); ?><?php endwhile; else: ?> <p><?php _e('Sorry, no posts matched your criteria.'); ?></p><?php endif; ?><br style="clear:both;"></div></div>


<br style="clear:both"><div style="clear:both"></div><?php get_footer()?>

我成功地在我的 wordpress 管理面板中出现了一个自定义右侧边栏,我可以在我的管理面板的小部件部分中将小部件应用到它我还可以看到它出现在我的 wordpress 页面的自定义侧边栏下拉选择菜单中,您将在其中指定您的新自定义侧边栏覆盖旧的。您可以通过访问此网址查看我的主题中侧边栏选择框的屏幕截图

http://test.smartphonesource.org/sidebars.png

通常通过选择它会覆盖页面上的默认侧边栏

我已经能够让自定义侧边栏模板与页面上的自定义类一起加载,并且我能够编辑 css,但实际的自定义侧边栏本身及其小部件并没有出现或覆盖任何内容,即使我选择了它来覆盖右边自定义侧边栏选择框中当前页面的侧边栏

我不确定从这里去哪里,或者是否有其他方法可以做到这一点 我能够在我的视频页面上使用 customright-sidebar 进行测试,它成功地覆盖了右侧边栏并正常工作,但它正在运行这个默认的右侧边栏模板

<div id="sidebar2"><div class="sidebar2"><?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('Sidebar Right') ) : ?><div class="left-sidebar"><h4>Recent Posts</h4><ul><?php wp_get_archives('type=postbypost&limit=5'); ?> </ul></div><?php endif; ?></div> <br style="clear:both"></div>

任何帮助将不胜感激 =) 你可以在这里看到我用来学习 wordpress 的网站的主页,从那里你可以导航到我撕毁的视频和特别优惠页面,以更好地了解我的内容尝试使用侧边栏

http://test.smartphonesource.org

4

2 回答 2

1

首先,您的网站看起来真的很棒:) 为了解决这个问题,您是否确保您的页面仅获取新的侧边栏代码?

于 2013-08-29T05:45:17.250 回答
0

我设法解决了页面问题,我不确定出了什么问题,但它突然开始使用相同的代码,我知道我清除了我的缓存,所以如果我在我之后不清除缓存,这可能会影响它或者有时会阻止新的更改出现上传他们不会为我显示的新图片

于 2013-08-30T17:08:41.990 回答