Scott B
Scott B

Reputation: 40187

Wordpress: How to set default (active) theme via script

I need to assign the "active" theme via script. Anyone know the API call needed to do this? Also, how do I retrieve the current theme via script (PHP)?

Upvotes: 1

Views: 2911

Answers (2)

Ivan Linko
Ivan Linko

Reputation: 976

In current Wordpress version 3.4.2 you need to update 3 options to switch to another theme(minihyper - in my case)

update_option('template', 'minihyper');
update_option('stylesheet', 'minihyper');
update_option('current_theme', 'Mini Hyper');

The first two options are key, the third really does nothing except maybe you can use this option somewhere in code to display current theme name.

Update:

Here is a true way:

<?php switch_theme( $template, $stylesheet ) ?>

Example with minihyper:

<?php switch_theme( 'minihyper', 'minihyper' ) ?>

Upvotes: 2

Harmen
Harmen

Reputation: 22436

Update current_theme option:

update_option('current_theme', '[theme name]');

To get the theme's name use:

$themes = get_themes();

Upvotes: 3

Related Questions