Articles of themes

Load a theme based on browser detection

Ok I know browser detection is considered bad practice but I can’t find a way around it because I really do need whole different themes for a complex site. So I snatched this function from $useragent=$_SERVER[‘HTTP_USER_AGENT’]; if(preg_match(‘/android.+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|meego.+mobile|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i’,$useragent)||preg_match(‘/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(di|rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| […]

Question about the way that wp_register_script works

Ok so I’m using the Roots Theme for WordPress (, which, is sort of a starter theme or theme framework. I’m confused about the way that it deregisters the WordPress loaded version of jQuery and but it registers it again without specifying the exact location of the script. So in the header.php of the theme […]

Why is WordPress asking me to update my new (virtually blank) theme?

I have just setup a new custom theme with little/no data and yet WordPress has made an update notice about upgrading it to “1.0.1” and I cannot for the life of my work out why. I have stripped down the theme to the following files: I have a blank index.php and style.css: /* Theme Name: […]

How to start learning CSS and theme development?

What would be your suggestions for learning CSS and WordPress theme development ? I have been using WordPress for over 4 years now, but I have never really gotten comfortable with CSS or theme design (I could tweak it here and there, but that’s not really doing much). I would love to be able to […]

How do you create a custom WPTouch theme?

I have WPTouch Pro installed and it does a great job at device detection as well as handling most blog posts. However, I want to make a mobile version of a homepage that doesn’t have any blog posts. I know you can edit the css for a theme by making a child theme and editing […]

How should I best target dynamically served content?

I am editing the ‘Bizz’ portfolio WordPress theme( It includes custom post types for managing portfolio examples, the highlights on the homepage, etc. I want to style the background color displayed behind each ‘highlights’ heading with a different color, but since they’re served dynamically, I’m not sure how I should target each h2. Would it […]

Can I create multiple instances of the BuddyPress Activity Stream with separate themes?

I’m trying to take advantage of BuddyPress 1.7’s new theme independence to effectively create different pages and instances of the Activity Stream with different themes. I can use HeadSpace (an options plugin) to change the theme for a specific page and one “Template” under Page Attributes is BuddyPress – Activity Directory. I use both in […]

How to load a different theme for categories?

I need to load a completely different theme for my categories. My search came up with switch_theme function but it changes the theme permanently while I only need the theme change only occur on my category pages. Then I found this. add_filter( ‘template’, ‘my_change_theme’ ); add_filter( ‘option_template’, ‘my_change_theme’ ); add_filter( ‘option_stylesheet’, ‘my_change_theme’ ); function my_change_theme($theme) […]

Archiving annual festival site

I have a query regarding managing a wordpress setup, I am sure others have been in a similar situation and was wondering what would be the best solution. I manage an annual festival’s website, each year has a different theme / design and event details, this is archived each year [ ie at etc.] […]

how can I remove the sidebar from my wp homepage

What’s the best practice when it comes to removing the sidebar on the wordpress homepage? I’m using wp Version 3.2.1 and Skeleton Child Theme 1.6