Exemplo n.º 1
0
/**
 * Init options to white list our options
 * Store initial settings in DB
 * 
 * @since 0.1
 */
function wppb_options_init()
{
    // Register settings
    register_setting('wppb_settings_import', 'wppb_settings_theme_import', 'wppb_settings_import_validate');
    $wppb_design = wppb_grab_design('wppaintbrush');
    // Grab default design
    // Adding initial settings
    add_option(WPPB_SETTINGS, $wppb_design);
    add_option('wppb_designer_pane', 'on');
    $wppb_templates = $wppb_design;
    // Set Paintbrush template options
    $wppb_templates['paintbrush_designer'] = '';
    // Remove 'paintbrush_designer' since needs to be stored separately
    $wppb_designer_settings = explode(']]', $wppb_design['paintbrush_designer']);
    foreach ($wppb_designer_settings as $tmp => $setting) {
        $setting = explode('|', $setting);
        $name = $setting[0];
        if (!isset($setting[1])) {
            $setting[1] = '';
        }
        $option = $setting[1];
        $wppb_designer_array[$name] = $option;
    }
    $wppb_designer_array = wppb_sanitize_inputs($wppb_designer_array);
    $wppb_designer_array['css'] = $wppb_templates['css'];
    // Storing CSS in designer array so that can be used on page load (otherwise need to make server call on initial page load)
    add_option(WPPB_DESIGNER_SETTINGS, $wppb_designer_array);
}
Exemplo n.º 2
0
/**
 * Utilized within child themes for changing to a new design
 * @since 1.0.6
 */
function wppb_theme_setup($autoload = '')
{
    global $pagenow;
    // Spit error out if child theme requires newer version of WP Paintbrush (and on themes page)
    if ('' != WPPB_CHILD_VERSION && 'themes.php' == $pagenow) {
        $wppb_theme_data = get_theme_data(get_template_directory_uri() . '/style.css');
        if ($wppb_theme_data['Version'] < WPPB_CHILD_VERSION) {
            add_action('admin_notices', 'wppb_childtheme_version_error');
        }
    }
    $css = get_wppb_option('css');
    // Used for checking if data stored
    if (is_admin() && isset($_GET['activated']) && $pagenow == 'themes.php' && !isset($css) || 'autoload' == $autoload) {
        // Grab design
        if (defined('WPPB_CHILD_THEME')) {
            $wppb_design = wppb_grab_design(WPPB_CHILD_THEME);
        } else {
            $wppb_design = wppb_grab_design('wppaintbrush');
        }
        // Grab default design
        // Change the design to the one specified (alters front-end editor settings)
        wppb_change_design($wppb_design);
        // Publish theme
        wppb_publish_options($wppb_design, $wppb_design['css']);
    }
}