Sidebar Widget Problem
-
I get an error on my sidebar at http://thetechkid.com when I try to use sidebar widgets. I am using the default WP sidebar code, and I can’t get it to work. This is the code i am using for my sidebar:
<div id="sidebar"> <?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : ?> <ul> <li> <?php include (TEMPLATEPATH . '/searchform.php'); ?> </li> <!-- Author information is disabled per default. Uncomment and fill in your details if you want to use it. <li><h2>Author</h2> <p>A little something about you, the author. Nothing lengthy, just an overview.</p> </li> --> <li> <?php /* If this is a 404 page */ if (is_404()) { ?> <?php /* If this is a category archive */ } elseif (is_category()) { ?> <p>You are currently browsing the archives for the <?php single_cat_title(''); ?> category.</p> <?php /* If this is a yearly archive */ } elseif (is_day()) { ?> <p>You are currently browsing the <a href="<?php bloginfo('home'); ?>/"><?php echo bloginfo('name'); ?></a> weblog archives for the day <?php the_time('l, F jS, Y'); ?>.</p> <?php /* If this is a monthly archive */ } elseif (is_month()) { ?> <p>You are currently browsing the <a href="<?php bloginfo('home'); ?>/"><?php echo bloginfo('name'); ?></a> weblog archives for <?php the_time('F, Y'); ?>.</p> <?php /* If this is a yearly archive */ } elseif (is_year()) { ?> <p>You are currently browsing the <a href="<?php bloginfo('home'); ?>/"><?php echo bloginfo('name'); ?></a> weblog archives for the year <?php the_time('Y'); ?>.</p> <?php /* If this is a monthly archive */ } elseif (is_search()) { ?> <p>You have searched the <a href="<?php echo bloginfo('home'); ?>/"><?php echo bloginfo('name'); ?></a> weblog archives for <strong>'<?php the_search_query(); ?>'</strong>. If you are unable to find anything in these search results, you can try one of these links.</p> <?php /* If this is a monthly archive */ } elseif (isset($_GET['paged']) && !empty($_GET['paged'])) { ?> <p>You are currently browsing the <a href="<?php echo bloginfo('home'); ?>/"><?php echo bloginfo('name'); ?></a> weblog archives.</p> <?php } ?> </li> <?php wp_list_pages('title_li=<h2>Pages</h2>' ); ?> <li><h2>Archives</h2> <ul> <?php wp_get_archives('type=monthly'); ?> </ul> </li> <?php wp_list_categories('show_count=1&title_li=<h2>Categories</h2>'); ?> <?php /* If this is the frontpage */ if ( is_home() || is_page() ) { ?> <?php wp_list_bookmarks(); ?> <li><h2>Meta</h2> <ul> <?php wp_register(); ?> <li><?php wp_loginout(); ?></li> <li><a href="http://validator.w3.org/check/referer" title="This page validates as XHTML 1.0 Transitional">Valid <abbr title="eXtensible HyperText Markup Language">XHTML</abbr></a></li> <li><a href="http://gmpg.org/xfn/"><abbr title="XHTML Friends Network">XFN</abbr></a></li> <li><a href="http://ww.wp.xz.cn/" title="Powered by WordPress, state-of-the-art semantic personal publishing platform.">WordPress</a></li> <?php wp_meta(); ?> </ul> </li> <?php } ?> </ul> </div>
-
You forgot to add the endif line at the bottom of the sidebar. Also, you’re putting the function calls in the wrong place at the top. Try this instead.
<div id="sidebar"> <ul> <?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : ?> ... blah blah ... <?php endif; ?> </ul> </div>Read more about how to widgetize themes here:
http://automattic.com/code/widgets/themes/Thanks! It worked!
But theres one thing. Sidebar Widgets tab won’t show up in the admin panel presentation page.
Did you add the necessary code to the functions.php file in your theme?
If you have no functions.php file, create a new one and stick this in it:
<?php if ( function_exists('register_sidebar') ) register_sidebar(); ?>No blank lines before or after that, mind you. This is important! Everything in functions.php must be in the <?php and ?> tags.
Ahh i forgot to put it in functions.php.
Should i put it in the beginning?Anybody know where i put the code in functions.php?
I’m not sure it matters where you put it. Try it wherever looks logical to you, if that doesn’t work, move it to the beginning of the file or the end….
Or look at the functions.php file that comes with the default theme for ideas.
Fixed it, the theme didnt need the functions.php so i created a fresh one and it works now!
The topic ‘Sidebar Widget Problem’ is closed to new replies.