'; print_r(aspen2wx_getopt('wx_converted')); echo ''; } } if (aspen2wx_submitted('clear_settings')) { aspen2wx_delete_all_options(); aspen2wx_save_msg('Previous Conversion Cleared'); } if (aspen2wx_submitted('report_perpp')) { require(dirname( __FILE__ ) . '/convert_pp.php'); // load the conversion definitions aspen2wx_convert_pp('report'); aspen2wx_save_msg('Per Page and Per Post conversion report generated.'); } if (aspen2wx_submitted('convert_perpp')) { require(dirname( __FILE__ ) . '/convert_pp.php'); // load the conversion definitions aspen2wx_convert_pp('convert'); aspen2wx_save_msg('Per Page and Per Post settings converted.'); } } //============================================================== // admin page function aspen2wx_admin_page() { if ( !current_user_can( 'manage_options' ) ) { wp_die('You do not have sufficient permissions to access this page.'); } // process commands aspen2wx_process(); // display forms ?>

Aspen to Weaver Xtreme Admin

This tool will non-destructively convert Aspen to Weaver Xtreme settings. Please, read the instructions on the "Help" tab before proceeding. While it is safe to directly convert a production site directly, it is always safer and less disruptive to visitors if you can first convert a development site.

Conversion Options

" method="POST"> "; ?>
Upload and convert Aspen theme settings from .ath or .abu file saved on your computer.

Since you are converting an existing Aspen settings file, you don't have to be running on a live site, nor will the settings conversion disrupt your current site.
Current file: {$fname}. You can select and upload a new file to convert a different one.
Select .ath or .abu file to upload:
 Upload and Convert a Aspen settings file from your computer.
 

Please select file to convert first.
Download Converted settings from to your computer.

You converted settings have been saved in the WordPress database. As long as you can see this message, the conversions from the listed Aspen settings file are available for download. By clicking the following Download link, the converted settings will downloaded to the location of your choice on your own computer. You can then use the Weaver Xtreme Save/Restore tab to load these converted settings to your Weaver Xtreme site. Be sure to save your existing Weaver Xtreme settings first.

Save Conversion - Download converted settings to your computer', $dname, $ext, $nonce, $time ); ?>

Convert Aspen [aspen_xxx] Shortcodes to Weaver Xtreme equivalents

If you've used Aspen shortcodes (e.g., [aspen_hide_if]), you will likely have the shortcodes scattered throughout your content. Rather than try to convert these, a new plugin called Weaver Theme Compatibility is available automatically supports the old Aspen shortcodes. In fact, that plugin will allow you to use most Aspen, Weaver II, and even Weaver Xtreme shortcodes, with any other WP theme.


Convert Per Page and Per Post Settings

Both Aspen and Weaver Xtreme support Per Page and Per Post settings. Most of Aspen Per Page/Post settings are supported by Weaver Xtreme, but with different internal names. This option will permanently, but non-destructively, copy your Aspen Per Page/Post settings to equivalent settings used by Weaver Xtreme. These new Custom Field settings are permanent, and can't easily be removed from your database. The old Aspen Per Page/Post settings will not be deleted, so you can switch back to using Aspen if needed. You will find that you will probably want to run the Per Page/Post conversion on your production site. But remember, it is always a very good idea to make a backup of your WP Database first.

" method="post"> -- This generates a report of all Pages and Posts that have Per Page/Post settings that need conversion to Weaver Xtreme.

" method="post"> -- This action will copy all the Aspen Per Page and Per Post settings to new Weaver Xtreme values.

Per Page/Post conversion'; if ($fname) $set_name .= ' and ' . $fname . ''; ?>

Clear Current Conversion settings

" method="post"> -- This will clear the conversion settings from .

Aspen to Weaver Xtreme Instructions

Aspen and Weaver Xtreme are very different themes. While they share a family history, they are as different as any two members of a "real" family. Weaver Xtreme is the newest theme, and has been updated to take advantage of the latest in web design technology.

While these themes are different, they share enough history that it is possible to automatically convert many of your Aspen setting to mostly compatible Weaver Xtreme settings. Please note that this conversion is nowhere near 100% complete - but it will convert maybe 90% of your settings. This conversion has been designed is such a way that the converted settings will allow you to then take advantage of many of Weaver Xtreme's new features without being overly burdened with legacy constraints of Aspen.

Note that the conversions done by this tool are non-destructive. You will always be able to go back to Aspen and have all your settings intact.

Converting Settings

Some of the main differences between Aspen and Weaver Xtreme are in 4 areas: Menus, Sidebars, the Header, and Font handling. Mostly, menus will convert quite well, but if you have custom CSS for you menus, it will likely have to be redone.

Weaver Xtreme does not support separate widget areas (Left and Right) for two column widget areas - this is accomplished using Columns per widget are in Xtreme. Thus, sidebar widget area settings are all set to the Primary or Secondary sidebar areas as appropriate. The visual styling of widget areas and widgets is largely intact, but you will likely want to manually setup the new layouts. You may have to reorganize which widgets go where. This is usually a fairly simple process.

Weaver Xtreme offers far greater customization of the Header area, and you may need to recreate your header, especially if you've used the header widget area or HTML insertion. Finally, since Weaver Xtreme has so much more flexibility in handling fonts than Aspen, and uses a completely different font family stack. The conversion will map the old font selections to similar fonts in Xtreme. You may need to manually reset your fonts. Custom Google Fonts are not converted.

  1. You should have both Aspen and Weaver Xtreme installed.
  2. It is highly recommended that you create a backup of your WP DataBase first.
  3. Using Aspen's Save/Restore tab, download your settings - probably all settings to a .w2b file on your computer.
  4. Open Aspen to Weaver Xtreme from the Dashboard tools tab.
  5. From the Convert tab, use the Choose File button to select the Aspen settings file you want to convert.
  6. Click the "Upload and Convert theme/backup button. This will load the file, and convert it to Weaver Xtreme settings.
  7. At the top of the refreshed page, you will get a "CONVERSION REPORT". This report is important! It contains a summary of the incompatible settings, and more importantly, a list of settings that require manual conversion. You might want to copy/paste this report to an editor, or even a temporary WP page. If you lose track of this information, simply repeat the above conversion process. Nothing is lost.
  8. Finally, you should download the converted settings to your computer. This will create a .wxt or .wxb file that you can now upload to from the Weaver Xtreme Save/Restore tab.

Converting Per Page and Per Post Settings

This converter will also convert your per page and per post settings from Aspen to Weaver Xtreme. This is a two step process. First, generate the report. This will give you a list of the pages that have Per Page/Post settings to convert. Then click the Convert button. This conversion is non-destructive - all your original Aspen settings remain intact. A new set of per page/post settings is added that is compatible with Weaver Xtreme.

The report (and, in fact, the conversion itself) will show which settings were converted, which might need some manual tweaking, and which are not convertible. You can run the converter more than once - it won't create duplicates, but will convert any new per page/post settings you might have created while switching back to Aspen.

Converting Aspen Shortcodes

A new plugin, Weaver Theme Compatibility, is available on WordPress.org. This new plugin supports most Aspen shortcodes for any theme, including Weaver Xtreme. This new plugin was not released at the time this version of this converter version was released.

More Conversion Information

There also is a fairly detailed discussion of the conversion process found here on our forum.


"; $ok = false; } if ($ok && $ext_check != 'ath' && $ext_check != 'abu'){ $errors[] = "Theme files must have .ath or .abu extension.
"; $ok = false; } if ($ok) { if (!aspen2wx_f_exists($openname)) { $errors[] = ''. aspen2wx_t_('Sorry, there was a problem uploading your file. You may need to check your folder permissions or other server settings.' /*a*/ ).''. "
(Trying to use file '$openname')"; $ok = false; } } if (!$ok) { echo '

ERROR

'; foreach($errors as $error){ echo $error.'
'; } echo '

'; return false; } else { // OK - read file and save to My Saved Theme // $handle has file handle to temp file. $contents = aspen2wx_f_get_contents($openname); // echo 'UPLOAD:' . esc_html($contents); // @@@@@@ aspen2wx_setopt('filename', $filename, false); aspen2wx_setopt('openname', $openname, false); aspen2wx_setopt('aspen_options', $contents, false); aspen2wx_save_all_options(); } return true; } //======================================== function aspen2wx_converttheme() { $wii = aspen2wx_getopt('aspen_options'); if ( ! $wii ) { aspen2wx_error_msg('No settings to convert.'); aspen2wx_delete_all_options(); return false; } $file_type = substr($wii,0,10); if ($file_type != 'ATH-V01.00' && $file_type != 'ABU-V01.00') { aspen2wx_error_msg('Uploaded .ath or .abu file wrong format.'); aspen2wx_delete_all_options(); return false; } $wii_settings = array(); $wii_settings = unserialize(substr($wii,10)); ?>
CONVERSION REPORT FOR
$value ) { if ( strlen($value) < 1 || $value == 'default') continue; if ( ! isset( $convert[$opt] )) { $report[] = aspen2wx_report("Unknown Aspen option - {$opt}:{$value}",'??'); //$report[] = aspen2wx_report("'{$opt}' => '{$value}',"); continue; } //continue; // @@@@ //echo esc_html("* {$opt}={$value}"); if (isset($convert[$opt])) { $to = $convert[$opt]; // the to value if (strpos($to, 'none:NS:') !== FALSE) { $to = substr($to, 8 ); $opt_name = aspen2wx_fix_opt_name($opt); $reportNS[] = aspen2wx_report('Not Supported: ' . $to . " - [{$opt_name} = '{$value}']"); $ns++; continue; } elseif (strpos($to, 'none:MC:') !== FALSE ) { $to = substr($to, 8 ); $opt_name = aspen2wx_fix_opt_name($opt); $reportMC[] = aspen2wx_report('Convert Manually: ' . $to. " - [{$opt_name} = '{$value}']"); $mc++; continue; } elseif (strpos($to, 'none:`') !== FALSE ) { $to = substr($to, 5 ); $opt_name = aspen2wx_fix_opt_name($opt); $reportNC[] = aspen2wx_report('Incompatibility: ' . $to . " - [{$opt_name} = '{$value}']"); $nc++; continue; } elseif (strpos($to, 'none') !== FALSE ) { $reportNOT[] = aspen2wx_fix_opt_name($opt); $nones++; continue; } elseif (strpos($to, 'admin') !== FALSE ) { continue; } // To here, than have something to convert $rules = explode(';',$to); // split into separate rules foreach ($rules as $rule) { if ( strpos($rule,'|') !== FALSE) { $parts = explode('|',$rule); $function = 'aspen2wx_' . $parts[1]; if (function_exists($function)) { $conv = $function($opt, $parts[0], $value); if ( $conv !== false ) $aspen2wx_opts[$parts[0]] = $conv; } else { aspen2wx_report("Unknown conversion rule: {$rule}", "ERROR"); } } else { $aspen2wx_opts[$rule] = $value; } $cv++; } // To here, than have something to convert //echo esc_html("*** [{$opt}:{$value}] -> {$to}") . '
'; } } $report = "Conversion Report\nOriginal Aspen settings from " . aspen2wx_getopt('filename') . "\n\n"; if (!empty($reportMC)) { echo "

Settings that need Manual Conversion to Weaver Xtreme

\n\n"; } else { echo "

No settings need Manual Conversion to Weaver Xtreme

\n"; } if (!empty($reportNS)) { echo "

Settings that are Not Supported by Weaver Xtreme

\n\n"; } if (!empty($reportNC)) { echo "

Other Incompatible settings with Weaver Xtreme

\n\n"; } if (!empty($reportNOT)) { echo "

Obsolete/incompatible settings unable to be converted - mostly sidebar (sb) and mobile options

\n"; $n = 0; foreach ($reportNOT as $txt) { $txt = str_replace('Aspen: ','',$txt); $n++; if ( $n > 5) { echo '
'; $n = 1; } echo $txt . '; '; } } if ( !$aspen2wx_wpad_set ) { // the Aspen default for these is 10, and borders, etc. kind of depend on this happening. $aspen2wx_opts['wrapper_padding_B'] = 10; $aspen2wx_opts['wrapper_padding_L'] = 10; $aspen2wx_opts['wrapper_padding_R'] = 10; $aspen2wx_opts['wrapper_padding_T'] = 10; } if (isset($aspen2wx_opts['subtheme_notes'])) $aspen2wx_opts['subtheme_notes'] .= "\n" . $report; else $aspen2wx_opts['subtheme_notes'] = $report; echo "

Notes:

Converted settings: {$cv}. Need Manual Conversion: {$mc}. Not supported {$ns}.
\n"; echo "Other settings (mostly sidebar, mobile specific) not converted: {$nones}.
\n"; echo "This conversion report for basic settings will be included in the converted Weaver Xtreme Advanced Options:Subtheme Notes box.

\n"; aspen2wx_setopt('wx_converted',$aspen2wx_opts); echo "
\n"; return true; } function aspen2wx_report($msg, $lead = '', $echo = false) { if ($echo) echo "{$lead}:  " . esc_html($msg) . "
\n"; return $msg; } function aspen2wx_fix_opt_name($opt) { $c = str_replace(array('wii_','_int','_dec'),'',$opt); return 'Aspen: ' . str_replace('_', ' ', $c); } function aspen2wx_rounded_corners($old_opt, $new_opt, $val) { global $aspen2wx_opts; //echo "
old_opt:{$old_opt} - new_opt:{$new_opt} - val:{$val}
\n"; if ($old_opt == 'wii_rounded_corners') { $areas = array('wrapper_rounded','primary_rounded','secondary_rounded','top_rounded','bottom_rounded', 'header_rounded','footer_rounded'); foreach ($areas as $area) { $aspen2wx_opts[$area] = '-all'; } $aspen2wx_opts['m_primary_rounded'] = '-bottom'; $aspen2wx_opts['m_secondary_rounded'] = '-top'; } else if ($old_opt == 'wii_rounded_corners_content') { $aspen2wx_opts['content_rounded'] = '-all'; } return false; } function aspen2wx_font_family($old_opt, $new_opt, $val) { //echo "
old_opt:{$old_opt} - new_opt:{$new_opt} - val:{$val}
\n"; $converts = array( '"Helvetica Neue"' => 'sans-serif', 'Arial' => 'sans-serif', 'Verdana' => 'verdana', 'Tahoma' => 'sans-serif', '"Arial Black"' => 'arialBlack', '"Avant Garde"' => 'sans-serif', '"Comic Sans MS"' => 'comicSans', 'Impact' => 'arialBlack', '"Trebuchet MS"' => 'trebuchetMS', '"Century Gothic"' => 'sans-serif', '"Lucida Grande"' => 'lucidaSans', 'Univers' => 'sans-serif', '"Times New Roman"' => 'serif', '"Bitstream Charter"' => 'serif', 'Georgia' => 'georgia', 'Palatino' => 'palatino', 'Bookman' => 'serif', 'Garamond' => 'garamond', '"Courier New"' => 'monospace', '"Andale Mono"' => 'consolas', ); $new_font = 'sans-serif'; foreach ( $converts as $convert => $font ) { if (strpos( $val, $convert ) === 0 ) { $new_font = $font; break; } } return $new_font; } function aspen2wx_wrapper_pad_set($old_opt, $new_opt, $val) { global $aspen2wx_wpad_set; $aspen2wx_wpad_set = true; return $val; } function aspen2wx_shadows($old_opt, $new_opt, $val) { return '-3'; } function aspen2wx_fontsize_px($old_opt, $new_opt, $val) { return $val + 4; } function aspen2wx_title_fontsize($old_opt, $new_opt, $val) { // convert to fontsize_title value /* titles xxl - 2.625 xl - 2.25 l - 1.875 m - 1.5 s - 1.25 xs - 1 xxs - .875 */ if ( $val >= 260) return 'xxl-font-size-title'; else if ( $val >= 200) return 'xl-font-size-title'; else if ( $val >= 180) return 'l-font-size-title'; else if ( $val >= 150) return 'm-font-size-title'; else if ( $val >= 125) return 's-font-size-title'; else if ( $val >= 100) return 'xs-font-size-title'; else if ( $val >= 70 ) return 'xxs-font-size-title'; else return 'm-font-size-title'; } function aspen2wx_text_fontsize($old_opt, $new_opt, $val) { // convert tt fontsize value /* xxs- .625 xs- .75 s - .875 m - 1.0 l - 1.125 xl - 1.25 xxl - 1.5 */ if ( $val >= 150) return 'xxl-font-size'; else if ( $val >= 125) return 'xl-font-size'; else if ( $val >= 110) return 'l-font-size'; else if ( $val >= 100) return 'm-font-size'; else if ( $val >= 87) return 's-font-size'; else if ( $val >= 75) return 'xs-font-size'; else if ( $val >= 50 ) return 'xxs-font-size'; else return 'm-font-size'; } function aspen2wx_layout($old_opt, $new_opt, $val) { $layouts = array( 'default' => 'default', // default 'right-1-col' => 'right', // Single column sidebar on Right 'left-1-col' => 'left', // >Single column sidebar on Left 'right-2-col' => 'right', // >Double Cols, Right (top wide) 'left-2-col' => 'left', // >Double Cols, Left (top wide) 'right-2-col-bottom' => 'right', // >Double Cols, Right (bottom wide) 'left-2-col-bottom' => 'left', // >Double Cols, Left (bottom wide) 'split' => 'split', // >Split - sidebars on Right and Left 'one-column' => 'one-column', // >No sidebars, one column content ); foreach ($layouts as $layout => $new_val) { if ( $layout == $val ) { if ( $new_val == 'default' && ($new_opt == 'layout_default' || $new_opt == 'layout_default_archive' || $new_opt == '_pp_page_layout') ) { return 'right'; } return $new_val; } } return 'right'; // fallback } function aspen2wx_borders($old_opt, $new_opt, $val) { global $aspen2wx_opts; $areas = array('wrapper_border','primary_border','secondary_border','top_border','bottom_border'); foreach ($areas as $area) { $aspen2wx_opts[$area] = 'on'; } return false; } function aspen2wx_fix_container_bg($old_opt, $new_opt, $val) { // try to compensate for #main global $aspen2wx_opts; if (isset($aspen2wx_opts[$new_opt])) { // main_bg must have set it already - don't reset if transparent if ( $val == 'transparent' ) return false; } return $val; } function aspen2wx_css_fix($old_opt, $new_opt, $val) { require(dirname( __FILE__ ) . '/map_css.php'); // load the conversion definitions $new_val = str_replace ( $map_css['weaverii'], $map_css['weaverx'], $val); return $new_val; } function aspen2wx_hide($old_opt, $new_opt, $val) { // convert hide true/false to hide all return 'hide'; } function aspen2wx_post_icons($old_opt, $new_opt, $val) { return 'fonticons'; } function aspen2wx_set_current_to_serialized_values($contents) { global $aspen2wx_cache; // need to mess with the cache if (substr($contents,0,10) == 'ATH-V01.00') $type = 'theme'; else if (substr($contents,0,10) == 'ABU-V01.00') $type = 'backup'; else return aspen2wx_alert(aspen2wx_t_("Wrong theme file format version" /*a*/ )); /* simple check for one of ours */ $restore = array(); $restore = unserialize(substr($contents,10)); if (!$restore) return waspen2wx_alert("Unserialize of Aspen Theme failed"); $version = aspen2wx_getopt('wii_version_id'); // get something to force load if ($type == 'theme') { // need to clear some settings // first, pickup the per-site settings that aren't theme related... $new_cache = array(); foreach (_cache as $key => $val) { if ($key[0] == '_') // these are non-theme specific settings $new_cache[$key] = $val; // keep } $opts = $restore['aspen_base']; // fetch base opts aspen2wx_delete_all_options(); foreach ($opts as $key => $val) { if ($key[0] != '_') aspen2wx_setopt($key, $val, false); // overwrite with saved theme values } foreach ($new_cache as $key => $val) { // set the values we need to keep aspen2wx_setopt($key,$val,false); } } else if ($type == 'backup') { aspen2wx_delete_all_options(); $opts = $restore['aspen_base']; // fetch base opts foreach ($opts as $key => $val) { aspen2wx_setopt($key, $val, false); // overwrite with saved values } } aspen2wx_setopt('aspen_version_id',$version); // keep version, force save of db aspen2wx_setopt('last_option','WeaverII'); aspen2wx_save_opts('loading theme'); // OK, now we've saved the options, update them in the DB return true; } ?>