is_active_sidebar() Always Returns False

The is_active_sidebar(‘Test’); function works correctly if the correct slug is used. I think that the problem is that you are constructing the sidebar ID like this: $sidebarID = preg_replace(“/[\s_]/”, “-“, strtolower($page->post_title)); Then prepending sidebar- to it … register_sidebar(array( ‘name’ => $page->post_title, ‘id’ => ‘sidebar-‘.$sidebarID, // But you are using the unmodified title as the slug … Read more

Custom shortcode in widget forced to top of widget

For shortcodes you have to return the output for it to be written out where the shortcode appears. Either turn your HTML into a PHP string rather than breaking out of the PHP tags or you can use PHPs output buffering methods like so: ob_start(); ?> <div id=”player_<?php echo $id; ?>” class=”video_player”><a href=”http://www.adobe.com/products/flashplayer/”>Get the Flash … Read more

Current theme broken – after server and domain migration

Try the XCloner plugin: http://wordpress.org/extend/plugins/xcloner-backup-and-restore/. I use XCloner to move sites between my live server and my dev server. It takes care of all the migration differences between the domain, database, etc. It preserves all my widget settings, custom menus, etc.

Pages with 2 Columns

Here is an interesting approach: THE PLAN AND LOGIC: Custom fields are a build in functionality that will fit our needs perfectly. We can set a new custom field and then use that field to enter and store our custom data. We can then use a widget to display this custom content in the sidebar … Read more

Adding inline styles from a widget

Got it. So here’s how you insert a hover state halfway the processing of a page without violating the w3c rules. This is the code you don’t want your widget to produce: <div class=”mywidget”> <style>.mywidget a {color:red}, . mywidget a:hover {color:blue;}</style> <a>Link</a> </div> The following validates and is fairly elegant. In your widget generate the … Read more

Add a banner to the Dashboard

Workaround using jQuery DOM insertion. Note the use of PHP Heredoc sintax to print the script. function wpse_53035_script_enqueuer(){ echo <<<HTML <script type=”text/javascript”> jQuery(document).ready( function($) { $(‘<div style=”width:100%;text-align:center;”><img src=”http://cdn.sstatic.net/wordpress/img/logo.png?v=123″></div>’).insertBefore(‘#welcome-panel’); }); </script> HTML; } add_action(‘admin_head-index.php’, ‘wpse_53035_script_enqueuer’); This inserts the new div at the top before #welcome-panel. If you use the div #dashboard-widgets-wrap it prints in the same … Read more