When building a WordPress child theme, it’s important for it to, at least initially, pick-up the settings from the parent theme.

Here’s something that works to allow your child theme to, on activation, retrieve the parent’s theme options:

add_action( 'after_switch_theme', 'themeprefix_switch_theme_update_mods' );

function themeprefix_switch_theme_update_mods() {

if ( is_child_theme() && false === get_theme_mods() ) {

$mods = get_option( 'theme_mods_' . get_option( 'template' ) );

if ( false !== $mods ) {

foreach ( $mods as $mod => $value ) {

if ( 'sidebars_widgets' !== $mod )//Leave out the sidebars
set_theme_mod( $mod, $value );
}
}
}
}

Note that there’s still an unresolved WordPress ticket to have this feature added to core: WordPress Ticket #27177
Code credit: @greenshady

Leave a Reply

Your email address will not be published. Required fields are marked *