'; 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
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.
Per Page/Post conversion';
if ($fname)
$set_name .= ' and
' . $fname . '';
?>
Clear Current Conversion settings
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.
- You should have both Aspen and Weaver Xtreme installed.
- It is highly recommended that you create a backup of your WP DataBase first.
- Using Aspen's Save/Restore tab, download your settings - probably all settings to a .w2b file on your computer.
- Open Aspen to Weaver Xtreme from the Dashboard tools tab.
- From the Convert tab, use the Choose File button to select the Aspen settings file you want to convert.
- Click the "Upload and Convert theme/backup button. This will load the file, and convert it to Weaver Xtreme settings.
- 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.
- 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";
foreach ($reportMC as $txt) {
echo "- {$txt}
";
$report .= $txt . "\n";
}
echo "
\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";
foreach ($reportNS as $txt) {
echo "- {$txt}
";
$report .= $txt . "\n";
}
echo "
\n";
}
if (!empty($reportNC)) {
echo "
Other Incompatible settings with Weaver Xtreme
\n
\n";
foreach ($reportNC as $txt) {
echo "- {$txt}
";
$report .= $txt . "\n";
}
echo "
\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;
}
?>