Version Description
Download this release
Release Info
Developer | SEO Design Solutions |
Plugin | SEO Ultimate |
Version | 2.5 |
Comparing to | |
See all releases |
Code changes from version 2.4 to 2.5
- includes/jlwp/functions.php +32 -0
- modules/class.su-module.php +52 -16
- modules/settings/install.css +24 -0
- modules/settings/install.php +156 -0
- plugin/class.su-installer.php +84 -0
- readme.txt +11 -4
- seo-ultimate.php +4 -4
- seo-ultimate.pot +199 -16
includes/jlwp/functions.php
CHANGED
@@ -70,6 +70,14 @@ class suwp {
|
|
70 |
return $rss;
|
71 |
}
|
72 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
73 |
/**
|
74 |
* @return string
|
75 |
*/
|
@@ -95,6 +103,30 @@ class suwp {
|
|
95 |
return get_edit_tag_link($id, $taxonomy);
|
96 |
}
|
97 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
98 |
function remove_instance_action($tag, $class, $function, $priority=10) {
|
99 |
return suwp::remove_instance_filter($tag, $class, $function, $priority);
|
100 |
}
|
70 |
return $rss;
|
71 |
}
|
72 |
|
73 |
+
/**
|
74 |
+
* @return string
|
75 |
+
*/
|
76 |
+
function add_backup_url($text) {
|
77 |
+
$anchor = __('backup your database', 'seo-ultimate');
|
78 |
+
return str_replace($anchor, '<a href="'.suwp::get_backup_url().'" target="_blank">'.$anchor.'</a>', $text);
|
79 |
+
}
|
80 |
+
|
81 |
/**
|
82 |
* @return string
|
83 |
*/
|
103 |
return get_edit_tag_link($id, $taxonomy);
|
104 |
}
|
105 |
|
106 |
+
function get_all_the_terms($id = 0) {
|
107 |
+
|
108 |
+
$id = (int)$id;
|
109 |
+
|
110 |
+
if ($id) {
|
111 |
+
$post = get_post($id);
|
112 |
+
if (!$post) return false;
|
113 |
+
} else {
|
114 |
+
if (!in_the_loop()) return false;
|
115 |
+
global $post;
|
116 |
+
$id = (int)$post->ID;
|
117 |
+
}
|
118 |
+
|
119 |
+
$taxonomies = get_object_taxonomies($post);
|
120 |
+
$terms = array();
|
121 |
+
|
122 |
+
foreach ($taxonomies as $taxonomy) {
|
123 |
+
$newterms = get_the_terms($id, $taxonomy);
|
124 |
+
if ($newterms) $terms = array_merge($terms, $newterms);
|
125 |
+
}
|
126 |
+
|
127 |
+
return $terms;
|
128 |
+
}
|
129 |
+
|
130 |
function remove_instance_action($tag, $class, $function, $priority=10) {
|
131 |
return suwp::remove_instance_filter($tag, $class, $function, $priority);
|
132 |
}
|
modules/class.su-module.php
CHANGED
@@ -646,7 +646,9 @@ class SU_Module {
|
|
646 |
function get_setting($key, $default=null, $module=null) {
|
647 |
if (!$module) $module = $this->get_settings_key();
|
648 |
|
649 |
-
if (isset($this->plugin->dbdata['settings']
|
|
|
|
|
650 |
$setting = $this->plugin->dbdata['settings'][$module][$key];
|
651 |
else
|
652 |
$setting = $default;
|
@@ -1434,19 +1436,6 @@ class SU_Module {
|
|
1434 |
$this->textareas(array($id => $title), $rows, $cols);
|
1435 |
}
|
1436 |
|
1437 |
-
/**
|
1438 |
-
* Outputs <option> tags.
|
1439 |
-
*
|
1440 |
-
* @since 2.4
|
1441 |
-
*/
|
1442 |
-
function dropdown_options($options, $current = null) {
|
1443 |
-
foreach ($options as $value => $label) {
|
1444 |
-
echo "<option value='$value'";
|
1445 |
-
selected($value, $current);
|
1446 |
-
echo ">$label</option>";
|
1447 |
-
}
|
1448 |
-
}
|
1449 |
-
|
1450 |
/********** ADMIN SECURITY FUNCTIONS **********/
|
1451 |
|
1452 |
/**
|
@@ -1656,7 +1645,7 @@ class SU_Module {
|
|
1656 |
$id = "_su_".su_esc_attr($id);
|
1657 |
$title = str_replace(' ', ' ', $title);
|
1658 |
|
1659 |
-
$html .= "<tr class='textbox'>\n<th scope='row'><label for='$id'>$title</label></th>\n"
|
1660 |
."<td><input name='$id' id='$id' type='text' value='$value' class='regular-text' tabindex='2' /></td>\n</tr>\n";
|
1661 |
}
|
1662 |
|
@@ -1689,7 +1678,8 @@ class SU_Module {
|
|
1689 |
*/
|
1690 |
function get_postmeta_checkboxes($checkboxes, $grouptext) {
|
1691 |
|
1692 |
-
$
|
|
|
1693 |
|
1694 |
if (is_array($checkboxes)) {
|
1695 |
foreach ($checkboxes as $name => $desc) {
|
@@ -1724,6 +1714,52 @@ class SU_Module {
|
|
1724 |
return $this->get_postmeta_checkboxes(array($id => $title), $grouptext);
|
1725 |
}
|
1726 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1727 |
|
1728 |
/********** CRON FUNCTION **********/
|
1729 |
|
646 |
function get_setting($key, $default=null, $module=null) {
|
647 |
if (!$module) $module = $this->get_settings_key();
|
648 |
|
649 |
+
if (isset($this->plugin->dbdata['settings']
|
650 |
+
, $this->plugin->dbdata['settings'][$module]
|
651 |
+
, $this->plugin->dbdata['settings'][$module][$key]))
|
652 |
$setting = $this->plugin->dbdata['settings'][$module][$key];
|
653 |
else
|
654 |
$setting = $default;
|
1436 |
$this->textareas(array($id => $title), $rows, $cols);
|
1437 |
}
|
1438 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1439 |
/********** ADMIN SECURITY FUNCTIONS **********/
|
1440 |
|
1441 |
/**
|
1645 |
$id = "_su_".su_esc_attr($id);
|
1646 |
$title = str_replace(' ', ' ', $title);
|
1647 |
|
1648 |
+
$html .= "<tr class='textbox' valign='middle'>\n<th scope='row'><label for='$id'>$title</label></th>\n"
|
1649 |
."<td><input name='$id' id='$id' type='text' value='$value' class='regular-text' tabindex='2' /></td>\n</tr>\n";
|
1650 |
}
|
1651 |
|
1678 |
*/
|
1679 |
function get_postmeta_checkboxes($checkboxes, $grouptext) {
|
1680 |
|
1681 |
+
$valign = (is_array($checkboxes) && count($checkboxes)) ? 'top' : 'middle';
|
1682 |
+
$html = "<tr class='checkboxes' valign='$valign'>\n<th scope='row'>$grouptext</th>\n<td><fieldset><legend class='hidden'>$grouptext</legend>\n";
|
1683 |
|
1684 |
if (is_array($checkboxes)) {
|
1685 |
foreach ($checkboxes as $name => $desc) {
|
1714 |
return $this->get_postmeta_checkboxes(array($id => $title), $grouptext);
|
1715 |
}
|
1716 |
|
1717 |
+
/**
|
1718 |
+
* Generates the HTML for a single <select> post meta dropdown.
|
1719 |
+
*
|
1720 |
+
* @since 2.5
|
1721 |
+
* @uses get_module_key()
|
1722 |
+
* @uses get_postmeta()
|
1723 |
+
*
|
1724 |
+
* @param string $name The name of the <select> element.
|
1725 |
+
* @param array $options An array of options, where the array keys are the <option> values and the array values are the labels (<option> contents).
|
1726 |
+
* @param string $grouptext The text to display in a table cell to the left of the one containing the dropdown.
|
1727 |
+
* @return string $html
|
1728 |
+
*/
|
1729 |
+
function get_postmeta_dropdown($name, $options, $grouptext) {
|
1730 |
+
|
1731 |
+
register_setting('seo-ultimate', $name);
|
1732 |
+
$current = $this->get_postmeta($name);
|
1733 |
+
$name = "_su_".su_esc_attr($name);
|
1734 |
+
|
1735 |
+
$html = "<tr class='dropdown' valign='middle'>\n<th scope='row'>$grouptext</th>\n<td><fieldset><legend class='hidden'>$grouptext</legend>\n";
|
1736 |
+
$html .= "<select name='$name' id='$name' onchange='javascript:su_toggle_select_children(this)'>";
|
1737 |
+
$html .= suhtml::option_tags($options, $current);
|
1738 |
+
$html .= "</select>\n";
|
1739 |
+
$html .= "</fieldset></td>\n</tr>\n";
|
1740 |
+
|
1741 |
+
return $html;
|
1742 |
+
}
|
1743 |
+
|
1744 |
+
/**
|
1745 |
+
* Turns a <tr> into a post meta subsection.
|
1746 |
+
*
|
1747 |
+
* @since 2.5
|
1748 |
+
* @uses get_postmeta
|
1749 |
+
*
|
1750 |
+
* @param string $field
|
1751 |
+
* @param string $value
|
1752 |
+
* @param string $html
|
1753 |
+
* @return string $html
|
1754 |
+
*/
|
1755 |
+
function get_postmeta_subsection($field, $value, $html) {
|
1756 |
+
$hidden = ($this->get_postmeta($field) == $value) ? '' : ' hidden';
|
1757 |
+
|
1758 |
+
$field = su_esc_attr($field);
|
1759 |
+
$value = su_esc_attr($value);
|
1760 |
+
$html = str_replace('<tr ', "<tr class='su_{$field}_{$value}_subsection$hidden' ", $html);
|
1761 |
+
return $html;
|
1762 |
+
}
|
1763 |
|
1764 |
/********** CRON FUNCTION **********/
|
1765 |
|
modules/settings/install.css
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.su-xgrade table.form-table ul {
|
2 |
+
list-style-type: disc;
|
3 |
+
padding: 0 0 0 2em;
|
4 |
+
margin: 0 0 2em 2em;
|
5 |
+
}
|
6 |
+
|
7 |
+
.su-xgrade table.form-table li {
|
8 |
+
padding-top: 0;
|
9 |
+
padding-bottom: 0;
|
10 |
+
margin-top: 0;
|
11 |
+
margin-bottom: 0;
|
12 |
+
}
|
13 |
+
|
14 |
+
.su-xgrade label {
|
15 |
+
padding: 0.5em 1em;
|
16 |
+
}
|
17 |
+
|
18 |
+
.su-xgrade label.first {
|
19 |
+
background-color: #DFFFE3;
|
20 |
+
}
|
21 |
+
|
22 |
+
.su-xgrade label.current-setting {
|
23 |
+
background-color: #FFFFE0;
|
24 |
+
}
|
modules/settings/install.php
ADDED
@@ -0,0 +1,156 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Install Module
|
4 |
+
*
|
5 |
+
* @since 2.5
|
6 |
+
*/
|
7 |
+
|
8 |
+
if (class_exists('SU_Module')) {
|
9 |
+
|
10 |
+
define('SU_DOWNGRADE_LIMIT', '2.5');
|
11 |
+
|
12 |
+
class SU_Install extends SU_Module {
|
13 |
+
|
14 |
+
function get_parent_module() { return 'settings'; }
|
15 |
+
function get_child_order() { return 20; }
|
16 |
+
function is_independent_module() { return false; }
|
17 |
+
|
18 |
+
function get_module_title() { return __('Upgrade/Downgrade/Reinstall', 'seo-ultimate'); }
|
19 |
+
function get_menu_title() { return __('Installer', 'seo-ultimate'); }
|
20 |
+
|
21 |
+
function get_admin_page_tabs() {
|
22 |
+
return array(
|
23 |
+
__('Upgrade', 'seo-ultimate') => 'upgrade_tab'
|
24 |
+
, __('Downgrade', 'seo-ultimate') => 'downgrade_tab'
|
25 |
+
);
|
26 |
+
}
|
27 |
+
|
28 |
+
function init() {
|
29 |
+
if ($this->is_action('update')) {
|
30 |
+
add_filter('su_custom_admin_page-settings', array(&$this, 'do_installation'));
|
31 |
+
}
|
32 |
+
}
|
33 |
+
|
34 |
+
function upgrade_tab() {
|
35 |
+
|
36 |
+
$radiobuttons = $this->get_version_radiobuttons(SU_VERSION, false);
|
37 |
+
if (is_array($radiobuttons)) {
|
38 |
+
if (count($radiobuttons) > 1) {
|
39 |
+
|
40 |
+
echo "\n<p>";
|
41 |
+
_e("From the list below, select the version to which you would like to upgrade. Then click the “Upgrade” button at the bottom of the screen.", 'seo-ultimate');
|
42 |
+
echo "</p>\n";
|
43 |
+
|
44 |
+
echo "<div class='su-xgrade'>\n";
|
45 |
+
$this->admin_form_start();
|
46 |
+
$this->radiobuttons('version', $radiobuttons);
|
47 |
+
$this->admin_form_end(__('Upgrade', 'seo-ultimate'));
|
48 |
+
echo "</div>\n";
|
49 |
+
} else
|
50 |
+
$this->print_message('success', __("You are already running the latest version.", 'seo-ultimate'));
|
51 |
+
} else
|
52 |
+
$this->print_message('error', __("There was an error retrieving the list of available versions. Please try again later. You can also upgrade to the latest version of SEO Ultimate using the WordPress plugin upgrader.", 'seo-ultimate'));
|
53 |
+
}
|
54 |
+
|
55 |
+
function downgrade_tab() {
|
56 |
+
|
57 |
+
$radiobuttons = $this->get_version_radiobuttons(SU_DOWNGRADE_LIMIT, SU_VERSION);
|
58 |
+
if (is_array($radiobuttons)) {
|
59 |
+
if (count($radiobuttons) > 1) {
|
60 |
+
|
61 |
+
$this->print_message('warning', suwp::add_backup_url(__("Downgrading is provided as a convenience only and is not officially supported. Although unlikely, you may lose data in the downgrading process. It is your responsibility to backup your database before proceeding.", 'seo-ultimate')));
|
62 |
+
|
63 |
+
echo "\n<p>";
|
64 |
+
_e("From the list below, select the version to which you would like to downgrade. Then click the “Downgrade” button at the bottom of the screen.", 'seo-ultimate');
|
65 |
+
echo "</p>\n";
|
66 |
+
|
67 |
+
echo "<div class='su-xgrade'>\n";
|
68 |
+
$this->admin_form_start();
|
69 |
+
$this->radiobuttons('version', $radiobuttons);
|
70 |
+
$this->admin_form_end(__('Downgrade', 'seo-ultimate'));
|
71 |
+
echo "</div>\n";
|
72 |
+
} else
|
73 |
+
$this->print_message('warning', sprintf(__("Downgrading to versions earlier than %s is not supported.", 'seo-ultimate'), SU_DOWNGRADE_LIMIT));
|
74 |
+
} else
|
75 |
+
$this->print_message('error', __("There was an error retrieving the list of available versions. Please try again later.", 'seo-ultimate'));
|
76 |
+
}
|
77 |
+
|
78 |
+
function get_version_radiobuttons($min, $max) {
|
79 |
+
|
80 |
+
$this->update_setting('version', SU_VERSION);
|
81 |
+
|
82 |
+
$trunk_readme = suwp::load_webpage('http://plugins.trac.wordpress.org/browser/seo-ultimate/trunk/readme.txt?format=txt', SU_USER_AGENT);
|
83 |
+
if (!$trunk_readme) return false;
|
84 |
+
$trunk_changelog = sumd::get_section($trunk_readme, 'Changelog');
|
85 |
+
$versions = sumd::get_sections($trunk_changelog);
|
86 |
+
|
87 |
+
if (count($versions)) {
|
88 |
+
|
89 |
+
$radiobuttons = array();
|
90 |
+
$first = true;
|
91 |
+
foreach ($versions as $title => $changes) {
|
92 |
+
if (preg_match('|Version ([0-9.]{3,9}) |', $title, $matches)) {
|
93 |
+
$version = $matches[1];
|
94 |
+
|
95 |
+
if ($max && version_compare($version, $max, '>')) continue;
|
96 |
+
if ($min && version_compare($version, $min, '<')) break;
|
97 |
+
|
98 |
+
$changes = wptexturize(Markdown($changes));
|
99 |
+
if ($version == SU_VERSION)
|
100 |
+
$message = __('Current Version', 'seo-ultimate');
|
101 |
+
elseif ($first)
|
102 |
+
$message = __('Latest Version', 'seo-ultimate');
|
103 |
+
else
|
104 |
+
$message = '';
|
105 |
+
if ($message) $message = " — <em>$message</em>";
|
106 |
+
|
107 |
+
$radiobuttons[$version] = "<strong>$title</strong>$message</label>\n$changes\n";
|
108 |
+
|
109 |
+
$first = false;
|
110 |
+
}
|
111 |
+
}
|
112 |
+
|
113 |
+
return $radiobuttons;
|
114 |
+
}
|
115 |
+
|
116 |
+
return false; //Error
|
117 |
+
}
|
118 |
+
|
119 |
+
function do_installation() {
|
120 |
+
|
121 |
+
if ( ! current_user_can('update_plugins') )
|
122 |
+
wp_die(__('You do not have sufficient permissions to upgrade/downgrade plugins for this blog.', 'seo-ultimate'));
|
123 |
+
|
124 |
+
$nv = sustr::preg_filter('[0-9a-zA-Z .]', $_POST['version']);
|
125 |
+
if (!strlen($nv)) return false;
|
126 |
+
|
127 |
+
//Don't allow downgrading to anything below the minimum limit
|
128 |
+
if (version_compare(SU_DOWNGRADE_LIMIT, $nv)) return;
|
129 |
+
|
130 |
+
switch (version_compare($nv, SU_VERSION)) {
|
131 |
+
case -1: //Downgrade
|
132 |
+
$title = __('Downgrade to SEO Ultimate %s', 'seo-ultimate');
|
133 |
+
break;
|
134 |
+
case 0: //Reinstall
|
135 |
+
$title = __('Reinstall SEO Ultimate %s', 'seo-ultimate');
|
136 |
+
break;
|
137 |
+
case 1: //Upgrade
|
138 |
+
$title = __('Upgrade to SEO Ultimate %s', 'seo-ultimate');
|
139 |
+
}
|
140 |
+
|
141 |
+
$title = sprintf($title, $nv);
|
142 |
+
$nonce = 'su-install-plugin';
|
143 |
+
$plugin = 'seo-ultimate/seo-ultimate.php';
|
144 |
+
$url = 'update.php?action=upgrade-plugin&plugin='.$plugin;
|
145 |
+
|
146 |
+
include_once $this->plugin->plugin_dir_path.'plugin/class.su-installer.php';
|
147 |
+
|
148 |
+
$upgrader = new SU_Installer( new SU_Installer_Skin( compact('title', 'nonce', 'url', 'plugin') ) );
|
149 |
+
$upgrader->upgrade($plugin, SU_VERSION, $nv);
|
150 |
+
|
151 |
+
return true;
|
152 |
+
}
|
153 |
+
}
|
154 |
+
|
155 |
+
}
|
156 |
+
?>
|
plugin/class.su-installer.php
ADDED
@@ -0,0 +1,84 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
include_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php';
|
3 |
+
|
4 |
+
class SU_Installer extends Plugin_Upgrader {
|
5 |
+
|
6 |
+
function su_strings($cv, $nv) {
|
7 |
+
|
8 |
+
//Generic
|
9 |
+
$this->strings['no_package'] = __('Package not available.', 'seo-ultimate');
|
10 |
+
|
11 |
+
//Upgrade
|
12 |
+
$this->strings['remove_old'] = __('Removing the current version of the plugin…', 'seo-ultimate');
|
13 |
+
$this->strings['remove_old_failed'] = __('Could not remove the current version of the plugin.', 'seo-ultimate');
|
14 |
+
|
15 |
+
switch (version_compare($nv, $cv)) {
|
16 |
+
case -1: //Downgrade
|
17 |
+
$this->strings['downloading_package'] = __('Downloading old version from <span class="code">%s</span>…', 'seo-ultimate');
|
18 |
+
$this->strings['unpack_package'] = __('Unpacking the downgrade…', 'seo-ultimate');
|
19 |
+
$this->strings['installing_package'] = __('Installing the downgrade…', 'seo-ultimate');
|
20 |
+
$this->strings['process_failed'] = __('Plugin downgrade failed.', 'seo-ultimate');
|
21 |
+
$this->strings['process_success'] = __('Plugin downgraded successfully.', 'seo-ultimate');
|
22 |
+
break;
|
23 |
+
case 0: //Reinstall
|
24 |
+
$this->strings['downloading_package'] = __('Downloading from <span class="code">%s</span>…', 'seo-ultimate');
|
25 |
+
$this->strings['unpack_package'] = __('Unpacking the reinstall…', 'seo-ultimate');
|
26 |
+
$this->strings['installing_package'] = __('Reinstalling the current version…', 'seo-ultimate');
|
27 |
+
$this->strings['process_failed'] = __('Plugin reinstallation failed.', 'seo-ultimate');
|
28 |
+
$this->strings['process_success'] = __('Plugin reinstalled successfully.', 'seo-ultimate');
|
29 |
+
break;
|
30 |
+
case 1: //Upgrade
|
31 |
+
default:
|
32 |
+
$this->strings['downloading_package'] = __('Downloading upgrade from <span class="code">%s</span>…', 'seo-ultimate');
|
33 |
+
$this->strings['unpack_package'] = __('Unpacking the upgrade…', 'seo-ultimate');
|
34 |
+
$this->strings['installing_package'] = __('Installing the upgrade…', 'seo-ultimate');
|
35 |
+
$this->strings['process_failed'] = __('Plugin upgrade failed.', 'seo-ultimate');
|
36 |
+
$this->strings['process_success'] = __('Plugin upgraded successfully.', 'seo-ultimate');
|
37 |
+
break;
|
38 |
+
}
|
39 |
+
}
|
40 |
+
|
41 |
+
function upgrade($plugin, $cv, $nv) {
|
42 |
+
|
43 |
+
$this->init();
|
44 |
+
$this->upgrade_strings();
|
45 |
+
$this->su_strings($cv, $nv);
|
46 |
+
|
47 |
+
add_filter('upgrader_pre_install', array(&$this, 'deactivate_plugin_before_upgrade'), 10, 2);
|
48 |
+
add_filter('upgrader_clear_destination', array(&$this, 'delete_old_plugin'), 10, 4);
|
49 |
+
|
50 |
+
$this->run(array(
|
51 |
+
'package' => "http://downloads.wordpress.org/plugin/seo-ultimate.$nv.zip",
|
52 |
+
'destination' => WP_PLUGIN_DIR,
|
53 |
+
'clear_destination' => true,
|
54 |
+
'clear_working' => true,
|
55 |
+
'hook_extra' => array(
|
56 |
+
'plugin' => $plugin
|
57 |
+
)
|
58 |
+
));
|
59 |
+
|
60 |
+
// Cleanup our hooks, incase something else does a upgrade on this connection.
|
61 |
+
remove_filter('upgrader_pre_install', array(&$this, 'deactivate_plugin_before_upgrade'));
|
62 |
+
remove_filter('upgrader_clear_destination', array(&$this, 'delete_old_plugin'));
|
63 |
+
|
64 |
+
if ( ! $this->result || is_wp_error($this->result) )
|
65 |
+
return $this->result;
|
66 |
+
|
67 |
+
// Force refresh of plugin update information
|
68 |
+
delete_site_transient('update_plugins');
|
69 |
+
}
|
70 |
+
}
|
71 |
+
|
72 |
+
class SU_Installer_Skin extends Plugin_Upgrader_Skin {
|
73 |
+
|
74 |
+
function header() {
|
75 |
+
if ( $this->done_header )
|
76 |
+
return;
|
77 |
+
$this->done_header = true;
|
78 |
+
echo '<div class="wrap">';
|
79 |
+
echo screen_icon('plugins');
|
80 |
+
echo '<h2>' . $this->options['title'] . '</h2>';
|
81 |
+
}
|
82 |
+
|
83 |
+
}
|
84 |
+
?>
|
readme.txt
CHANGED
@@ -1,9 +1,9 @@
|
|
1 |
=== SEO Ultimate ===
|
2 |
Contributors: SEO Design Solutions
|
3 |
-
Tags: seo, google, yahoo, bing, search engines, admin, post, page, modules, title, meta, robots, noindex, nofollow, canonical, 404, robots.txt, htaccess, slugs, url, anchor, more, link, excerpt, permalink, links, autolinks, categories, uninstallable
|
4 |
Requires at least: 2.8
|
5 |
-
Tested up to:
|
6 |
-
Stable tag: 2.
|
7 |
|
8 |
This all-in-one SEO plugin gives you control over titles, noindex/nofollow, meta tags, slugs, canonical tags, "more" links, 404 errors, and more.
|
9 |
|
@@ -11,9 +11,11 @@ This all-in-one SEO plugin gives you control over titles, noindex/nofollow, meta
|
|
11 |
|
12 |
= Recent Releases =
|
13 |
|
|
|
14 |
* Version 2.4 adds a nofollow option for Deeplink Juggernaut links
|
15 |
* Version 2.3 adds per-post noindex/nofollow toggles
|
16 |
* Version 2.2 adds a links-per-post limiter for Deeplink Juggernaut
|
|
|
17 |
|
18 |
= Features =
|
19 |
|
@@ -93,11 +95,12 @@ SEO Ultimate is an all-in-one [SEO](http://www.seodesignsolutions.com/) plugin w
|
|
93 |
* If you choose to delete SEO Ultimate from within the WordPress plugin manager, SEO Ultimate will remove all its settings from your database.
|
94 |
* Includes icon integration with the WordPress 2.7+ menu and the Ozh Admin Drop Down Menu plugin.
|
95 |
* Uses WordPress plugin security features like nonces, etc.
|
|
|
96 |
|
97 |
* **Features Coming Soon**
|
98 |
* Automatic XHTML validation checking
|
99 |
* Nofollow options
|
100 |
-
* Title
|
101 |
* ...And much, much more! Install SEO Ultimate today and use WordPress's automatic plugin updater to get new features as they're released.
|
102 |
|
103 |
[**Download**](http://downloads.wordpress.org/plugin/seo-ultimate.zip) **your free copy of SEO Ultimate today.**
|
@@ -588,6 +591,10 @@ Frequently asked questions, documentation, and troubleshooting tips for SEO Ulti
|
|
588 |
|
589 |
== Changelog ==
|
590 |
|
|
|
|
|
|
|
|
|
591 |
= Version 2.4 (May 28, 2010) =
|
592 |
* Feature: Added nofollow option for Deeplink Juggernaut links
|
593 |
|
1 |
=== SEO Ultimate ===
|
2 |
Contributors: SEO Design Solutions
|
3 |
+
Tags: seo, google, yahoo, bing, search engines, admin, post, page, modules, title, meta, robots, noindex, nofollow, canonical, 404, robots.txt, htaccess, slugs, url, anchor, more, link, excerpt, permalink, links, autolinks, categories, uninstallable, downgradable
|
4 |
Requires at least: 2.8
|
5 |
+
Tested up to: 3.0
|
6 |
+
Stable tag: 2.5
|
7 |
|
8 |
This all-in-one SEO plugin gives you control over titles, noindex/nofollow, meta tags, slugs, canonical tags, "more" links, 404 errors, and more.
|
9 |
|
11 |
|
12 |
= Recent Releases =
|
13 |
|
14 |
+
* Version 2.5 adds advanced plugin upgrade/downgrade functionality
|
15 |
* Version 2.4 adds a nofollow option for Deeplink Juggernaut links
|
16 |
* Version 2.3 adds per-post noindex/nofollow toggles
|
17 |
* Version 2.2 adds a links-per-post limiter for Deeplink Juggernaut
|
18 |
+
* Version 2.1 adds a 404 Monitor overhaul and many other improvements
|
19 |
|
20 |
= Features =
|
21 |
|
95 |
* If you choose to delete SEO Ultimate from within the WordPress plugin manager, SEO Ultimate will remove all its settings from your database.
|
96 |
* Includes icon integration with the WordPress 2.7+ menu and the Ozh Admin Drop Down Menu plugin.
|
97 |
* Uses WordPress plugin security features like nonces, etc.
|
98 |
+
* Lets you upgrade/downgrade the plugin to versions of your choosing (starting with 2.5).
|
99 |
|
100 |
* **Features Coming Soon**
|
101 |
* Automatic XHTML validation checking
|
102 |
* Nofollow options
|
103 |
+
* Title rewriting for attachments and custom post types
|
104 |
* ...And much, much more! Install SEO Ultimate today and use WordPress's automatic plugin updater to get new features as they're released.
|
105 |
|
106 |
[**Download**](http://downloads.wordpress.org/plugin/seo-ultimate.zip) **your free copy of SEO Ultimate today.**
|
591 |
|
592 |
== Changelog ==
|
593 |
|
594 |
+
= Version 2.5 (June 1, 2010) =
|
595 |
+
* Feature: Users can now upgrade/downgrade SEO Ultimate to versions of their choosing starting with 2.5
|
596 |
+
* Bugfix: Fixed "string offset" fatal error
|
597 |
+
|
598 |
= Version 2.4 (May 28, 2010) =
|
599 |
* Feature: Added nofollow option for Deeplink Juggernaut links
|
600 |
|
seo-ultimate.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: SEO Ultimate
|
4 |
Plugin URI: http://www.seodesignsolutions.com/wordpress-seo/
|
5 |
Description: This all-in-one SEO plugin gives you control over title tags, noindex/nofollow, meta tags, slugs, canonical tags, "more" links, 404 errors, and more.
|
6 |
-
Version: 2.
|
7 |
Author: SEO Design Solutions
|
8 |
Author URI: http://www.seodesignsolutions.com/
|
9 |
Text Domain: seo-ultimate
|
@@ -12,7 +12,7 @@ Text Domain: seo-ultimate
|
|
12 |
/**
|
13 |
* The main SEO Ultimate plugin file.
|
14 |
* @package SeoUltimate
|
15 |
-
* @version 2.
|
16 |
* @link http://www.seodesignsolutions.com/wordpress-seo/ SEO Ultimate Homepage
|
17 |
*/
|
18 |
|
@@ -38,10 +38,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
38 |
//Reading plugin info from constants is faster than trying to parse it from the header above.
|
39 |
define("SU_PLUGIN_NAME", "SEO Ultimate");
|
40 |
define("SU_PLUGIN_URI", "http://www.seodesignsolutions.com/wordpress-seo/");
|
41 |
-
define("SU_VERSION", "2.
|
42 |
define("SU_AUTHOR", "SEO Design Solutions");
|
43 |
define("SU_AUTHOR_URI", "http://www.seodesignsolutions.com/");
|
44 |
-
define("SU_USER_AGENT", "SeoUltimate/2.
|
45 |
|
46 |
/********** INCLUDES **********/
|
47 |
|
3 |
Plugin Name: SEO Ultimate
|
4 |
Plugin URI: http://www.seodesignsolutions.com/wordpress-seo/
|
5 |
Description: This all-in-one SEO plugin gives you control over title tags, noindex/nofollow, meta tags, slugs, canonical tags, "more" links, 404 errors, and more.
|
6 |
+
Version: 2.5
|
7 |
Author: SEO Design Solutions
|
8 |
Author URI: http://www.seodesignsolutions.com/
|
9 |
Text Domain: seo-ultimate
|
12 |
/**
|
13 |
* The main SEO Ultimate plugin file.
|
14 |
* @package SeoUltimate
|
15 |
+
* @version 2.5
|
16 |
* @link http://www.seodesignsolutions.com/wordpress-seo/ SEO Ultimate Homepage
|
17 |
*/
|
18 |
|
38 |
//Reading plugin info from constants is faster than trying to parse it from the header above.
|
39 |
define("SU_PLUGIN_NAME", "SEO Ultimate");
|
40 |
define("SU_PLUGIN_URI", "http://www.seodesignsolutions.com/wordpress-seo/");
|
41 |
+
define("SU_VERSION", "2.5");
|
42 |
define("SU_AUTHOR", "SEO Design Solutions");
|
43 |
define("SU_AUTHOR_URI", "http://www.seodesignsolutions.com/");
|
44 |
+
define("SU_USER_AGENT", "SeoUltimate/2.5");
|
45 |
|
46 |
/********** INCLUDES **********/
|
47 |
|
seo-ultimate.pot
CHANGED
@@ -1,4 +1,4 @@
|
|
1 |
-
# Translation of the WordPress plugin SEO Ultimate 2.
|
2 |
# Copyright (C) 2010 SEO Design Solutions
|
3 |
# This file is distributed under the same license as the SEO Ultimate package.
|
4 |
# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
|
@@ -6,9 +6,9 @@
|
|
6 |
#, fuzzy
|
7 |
msgid ""
|
8 |
msgstr ""
|
9 |
-
"Project-Id-Version: SEO Ultimate 2.
|
10 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/seo-ultimate\n"
|
11 |
-
"POT-Creation-Date: 2010-
|
12 |
"PO-Revision-Date: 2010-MO-DA HO:MI+ZONE\n"
|
13 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
14 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
@@ -31,6 +31,10 @@ msgstr ""
|
|
31 |
msgid "%s, and %s"
|
32 |
msgstr ""
|
33 |
|
|
|
|
|
|
|
|
|
34 |
#: modules/404s/fofs-log.php:16
|
35 |
msgid "404 Monitor Log"
|
36 |
msgstr ""
|
@@ -171,21 +175,25 @@ msgstr ""
|
|
171 |
msgid "Content Links"
|
172 |
msgstr ""
|
173 |
|
174 |
-
#: modules/autolinks/content-autolinks.php:
|
175 |
msgid ""
|
176 |
"The Deeplink Juggernaut can automatically link post/page anchor text to "
|
177 |
"given URLs. This is a preview beta version. More functionality will be added "
|
178 |
"in future releases of SEO Ultimate."
|
179 |
msgstr ""
|
180 |
|
181 |
-
#: modules/autolinks/content-autolinks.php:
|
182 |
msgid "Anchor Text"
|
183 |
msgstr ""
|
184 |
|
185 |
-
#: modules/autolinks/content-autolinks.php:
|
186 |
msgid "URL"
|
187 |
msgstr ""
|
188 |
|
|
|
|
|
|
|
|
|
189 |
#: modules/canonical/canonical.php:12
|
190 |
msgid "Canonicalizer"
|
191 |
msgstr ""
|
@@ -231,21 +239,21 @@ msgid ""
|
|
231 |
"SEO Ultimate and may be outdated.)"
|
232 |
msgstr ""
|
233 |
|
234 |
-
#: modules/class.su-module.php:
|
235 |
#, php-format
|
236 |
msgid "%s %s|Dropdown Title"
|
237 |
msgstr ""
|
238 |
|
239 |
-
#: modules/class.su-module.php:
|
240 |
#, php-format
|
241 |
msgid "%1$s | %2$s %3$s by %4$s"
|
242 |
msgstr ""
|
243 |
|
244 |
-
#: modules/class.su-module.php:
|
245 |
msgid "Settings updated."
|
246 |
msgstr ""
|
247 |
|
248 |
-
#: modules/class.su-module.php:
|
249 |
msgid "Save Changes"
|
250 |
msgstr ""
|
251 |
|
@@ -665,7 +673,7 @@ msgid "Custom Header Code"
|
|
665 |
msgstr ""
|
666 |
|
667 |
#: modules/meta/meta.php:97
|
668 |
-
msgid "Description:"
|
669 |
msgstr ""
|
670 |
|
671 |
#: modules/meta/meta.php:100
|
@@ -674,7 +682,7 @@ msgid "You’ve entered %s characters. Most search engines use up to 160."
|
|
674 |
msgstr ""
|
675 |
|
676 |
#: modules/meta/meta.php:102
|
677 |
-
msgid "Keywords:<br /><em>(separate with commas)</em>"
|
678 |
msgstr ""
|
679 |
|
680 |
#: modules/meta/meta.php:109
|
@@ -804,6 +812,18 @@ msgstr ""
|
|
804 |
msgid "User login/registration pages"
|
805 |
msgstr ""
|
806 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
807 |
#: modules/sds-blog/sds-blog.php:12
|
808 |
msgid "Whitepapers"
|
809 |
msgstr ""
|
@@ -812,7 +832,7 @@ msgstr ""
|
|
812 |
msgid "SEO Design Solutions Whitepapers"
|
813 |
msgstr ""
|
814 |
|
815 |
-
#. #-#-#-#-# plugin.pot (SEO Ultimate 2.
|
816 |
#. Author of the plugin/theme
|
817 |
#: modules/sds-blog/sds-blog.php:49
|
818 |
msgid "SEO Design Solutions"
|
@@ -845,6 +865,93 @@ msgstr ""
|
|
845 |
msgid "Insert comments around HTML code insertions"
|
846 |
msgstr ""
|
847 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
848 |
#: modules/settings/settings-data.php:16
|
849 |
msgid "Settings Data Manager"
|
850 |
msgstr ""
|
@@ -954,7 +1061,7 @@ msgstr ""
|
|
954 |
msgid "SEO Ultimate Plugin Settings"
|
955 |
msgstr ""
|
956 |
|
957 |
-
#. #-#-#-#-# plugin.pot (SEO Ultimate 2.
|
958 |
#. Plugin Name of the plugin/theme
|
959 |
#: modules/settings/settings.php:14 plugin/class.seo-ultimate.php:723
|
960 |
msgid "SEO Ultimate"
|
@@ -1242,14 +1349,90 @@ msgstr ""
|
|
1242 |
msgid "SEO Settings"
|
1243 |
msgstr ""
|
1244 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1245 |
#. Plugin URI of the plugin/theme
|
1246 |
msgid "http://www.seodesignsolutions.com/wordpress-seo/"
|
1247 |
msgstr ""
|
1248 |
|
1249 |
#. Description of the plugin/theme
|
1250 |
msgid ""
|
1251 |
-
"This all-in-one SEO plugin gives you control over title tags, noindex
|
1252 |
-
"
|
|
|
1253 |
msgstr ""
|
1254 |
|
1255 |
#. Author URI of the plugin/theme
|
1 |
+
# Translation of the WordPress plugin SEO Ultimate 2.5 by SEO Design Solutions.
|
2 |
# Copyright (C) 2010 SEO Design Solutions
|
3 |
# This file is distributed under the same license as the SEO Ultimate package.
|
4 |
# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
|
6 |
#, fuzzy
|
7 |
msgid ""
|
8 |
msgstr ""
|
9 |
+
"Project-Id-Version: SEO Ultimate 2.5\n"
|
10 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/seo-ultimate\n"
|
11 |
+
"POT-Creation-Date: 2010-06-01 14:30+0000\n"
|
12 |
"PO-Revision-Date: 2010-MO-DA HO:MI+ZONE\n"
|
13 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
14 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
31 |
msgid "%s, and %s"
|
32 |
msgstr ""
|
33 |
|
34 |
+
#: includes/jlwp/functions.php:77
|
35 |
+
msgid "backup your database"
|
36 |
+
msgstr ""
|
37 |
+
|
38 |
#: modules/404s/fofs-log.php:16
|
39 |
msgid "404 Monitor Log"
|
40 |
msgstr ""
|
175 |
msgid "Content Links"
|
176 |
msgstr ""
|
177 |
|
178 |
+
#: modules/autolinks/content-autolinks.php:77
|
179 |
msgid ""
|
180 |
"The Deeplink Juggernaut can automatically link post/page anchor text to "
|
181 |
"given URLs. This is a preview beta version. More functionality will be added "
|
182 |
"in future releases of SEO Ultimate."
|
183 |
msgstr ""
|
184 |
|
185 |
+
#: modules/autolinks/content-autolinks.php:102
|
186 |
msgid "Anchor Text"
|
187 |
msgstr ""
|
188 |
|
189 |
+
#: modules/autolinks/content-autolinks.php:103
|
190 |
msgid "URL"
|
191 |
msgstr ""
|
192 |
|
193 |
+
#: modules/autolinks/content-autolinks.php:104
|
194 |
+
msgid "Options"
|
195 |
+
msgstr ""
|
196 |
+
|
197 |
#: modules/canonical/canonical.php:12
|
198 |
msgid "Canonicalizer"
|
199 |
msgstr ""
|
239 |
"SEO Ultimate and may be outdated.)"
|
240 |
msgstr ""
|
241 |
|
242 |
+
#: modules/class.su-module.php:944
|
243 |
#, php-format
|
244 |
msgid "%s %s|Dropdown Title"
|
245 |
msgstr ""
|
246 |
|
247 |
+
#: modules/class.su-module.php:972
|
248 |
#, php-format
|
249 |
msgid "%1$s | %2$s %3$s by %4$s"
|
250 |
msgstr ""
|
251 |
|
252 |
+
#: modules/class.su-module.php:1006
|
253 |
msgid "Settings updated."
|
254 |
msgstr ""
|
255 |
|
256 |
+
#: modules/class.su-module.php:1026
|
257 |
msgid "Save Changes"
|
258 |
msgstr ""
|
259 |
|
673 |
msgstr ""
|
674 |
|
675 |
#: modules/meta/meta.php:97
|
676 |
+
msgid "Meta Description:"
|
677 |
msgstr ""
|
678 |
|
679 |
#: modules/meta/meta.php:100
|
682 |
msgstr ""
|
683 |
|
684 |
#: modules/meta/meta.php:102
|
685 |
+
msgid "Meta Keywords:<br /><em>(separate with commas)</em>"
|
686 |
msgstr ""
|
687 |
|
688 |
#: modules/meta/meta.php:109
|
812 |
msgid "User login/registration pages"
|
813 |
msgstr ""
|
814 |
|
815 |
+
#: modules/noindex/noindex.php:105
|
816 |
+
msgid "Noindex: Tell search engines not to index this webpage."
|
817 |
+
msgstr ""
|
818 |
+
|
819 |
+
#: modules/noindex/noindex.php:106
|
820 |
+
msgid "Nofollow: Tell search engines not to spider links on this webpage."
|
821 |
+
msgstr ""
|
822 |
+
|
823 |
+
#: modules/noindex/noindex.php:107
|
824 |
+
msgid "Meta Robots Tag:"
|
825 |
+
msgstr ""
|
826 |
+
|
827 |
#: modules/sds-blog/sds-blog.php:12
|
828 |
msgid "Whitepapers"
|
829 |
msgstr ""
|
832 |
msgid "SEO Design Solutions Whitepapers"
|
833 |
msgstr ""
|
834 |
|
835 |
+
#. #-#-#-#-# plugin.pot (SEO Ultimate 2.5) #-#-#-#-#
|
836 |
#. Author of the plugin/theme
|
837 |
#: modules/sds-blog/sds-blog.php:49
|
838 |
msgid "SEO Design Solutions"
|
865 |
msgid "Insert comments around HTML code insertions"
|
866 |
msgstr ""
|
867 |
|
868 |
+
#: modules/settings/install.php:18
|
869 |
+
msgid "Upgrade/Downgrade/Reinstall"
|
870 |
+
msgstr ""
|
871 |
+
|
872 |
+
#: modules/settings/install.php:19
|
873 |
+
msgid "Installer"
|
874 |
+
msgstr ""
|
875 |
+
|
876 |
+
#: modules/settings/install.php:23 modules/settings/install.php:47
|
877 |
+
msgid "Upgrade"
|
878 |
+
msgstr ""
|
879 |
+
|
880 |
+
#: modules/settings/install.php:24 modules/settings/install.php:70
|
881 |
+
msgid "Downgrade"
|
882 |
+
msgstr ""
|
883 |
+
|
884 |
+
#: modules/settings/install.php:41
|
885 |
+
msgid ""
|
886 |
+
"From the list below, select the version to which you would like to upgrade. "
|
887 |
+
"Then click the “Upgrade” button at the bottom of the screen."
|
888 |
+
msgstr ""
|
889 |
+
|
890 |
+
#: modules/settings/install.php:50
|
891 |
+
msgid "You are already running the latest version."
|
892 |
+
msgstr ""
|
893 |
+
|
894 |
+
#: modules/settings/install.php:52
|
895 |
+
msgid ""
|
896 |
+
"There was an error retrieving the list of available versions. Please try "
|
897 |
+
"again later. You can also upgrade to the latest version of SEO Ultimate "
|
898 |
+
"using the WordPress plugin upgrader."
|
899 |
+
msgstr ""
|
900 |
+
|
901 |
+
#: modules/settings/install.php:61
|
902 |
+
msgid ""
|
903 |
+
"Downgrading is provided as a convenience only and is not officially "
|
904 |
+
"supported. Although unlikely, you may lose data in the downgrading process. "
|
905 |
+
"It is your responsibility to backup your database before proceeding."
|
906 |
+
msgstr ""
|
907 |
+
|
908 |
+
#: modules/settings/install.php:64
|
909 |
+
msgid ""
|
910 |
+
"From the list below, select the version to which you would like to "
|
911 |
+
"downgrade. Then click the “Downgrade” button at the bottom of "
|
912 |
+
"the screen."
|
913 |
+
msgstr ""
|
914 |
+
|
915 |
+
#: modules/settings/install.php:73
|
916 |
+
#, php-format
|
917 |
+
msgid "Downgrading to versions earlier than %s is not supported."
|
918 |
+
msgstr ""
|
919 |
+
|
920 |
+
#: modules/settings/install.php:75
|
921 |
+
msgid ""
|
922 |
+
"There was an error retrieving the list of available versions. Please try "
|
923 |
+
"again later."
|
924 |
+
msgstr ""
|
925 |
+
|
926 |
+
#: modules/settings/install.php:100
|
927 |
+
msgid "Current Version"
|
928 |
+
msgstr ""
|
929 |
+
|
930 |
+
#: modules/settings/install.php:102
|
931 |
+
msgid "Latest Version"
|
932 |
+
msgstr ""
|
933 |
+
|
934 |
+
#: modules/settings/install.php:122
|
935 |
+
msgid ""
|
936 |
+
"You do not have sufficient permissions to upgrade/downgrade plugins for this "
|
937 |
+
"blog."
|
938 |
+
msgstr ""
|
939 |
+
|
940 |
+
#: modules/settings/install.php:132
|
941 |
+
#, php-format
|
942 |
+
msgid "Downgrade to SEO Ultimate %s"
|
943 |
+
msgstr ""
|
944 |
+
|
945 |
+
#: modules/settings/install.php:135
|
946 |
+
#, php-format
|
947 |
+
msgid "Reinstall SEO Ultimate %s"
|
948 |
+
msgstr ""
|
949 |
+
|
950 |
+
#: modules/settings/install.php:138
|
951 |
+
#, php-format
|
952 |
+
msgid "Upgrade to SEO Ultimate %s"
|
953 |
+
msgstr ""
|
954 |
+
|
955 |
#: modules/settings/settings-data.php:16
|
956 |
msgid "Settings Data Manager"
|
957 |
msgstr ""
|
1061 |
msgid "SEO Ultimate Plugin Settings"
|
1062 |
msgstr ""
|
1063 |
|
1064 |
+
#. #-#-#-#-# plugin.pot (SEO Ultimate 2.5) #-#-#-#-#
|
1065 |
#. Plugin Name of the plugin/theme
|
1066 |
#: modules/settings/settings.php:14 plugin/class.seo-ultimate.php:723
|
1067 |
msgid "SEO Ultimate"
|
1349 |
msgid "SEO Settings"
|
1350 |
msgstr ""
|
1351 |
|
1352 |
+
#: plugin/class.su-installer.php:9
|
1353 |
+
msgid "Package not available."
|
1354 |
+
msgstr ""
|
1355 |
+
|
1356 |
+
#: plugin/class.su-installer.php:12
|
1357 |
+
msgid "Removing the current version of the plugin…"
|
1358 |
+
msgstr ""
|
1359 |
+
|
1360 |
+
#: plugin/class.su-installer.php:13
|
1361 |
+
msgid "Could not remove the current version of the plugin."
|
1362 |
+
msgstr ""
|
1363 |
+
|
1364 |
+
#: plugin/class.su-installer.php:17
|
1365 |
+
#, php-format
|
1366 |
+
msgid "Downloading old version from <span class=\"code\">%s</span>…"
|
1367 |
+
msgstr ""
|
1368 |
+
|
1369 |
+
#: plugin/class.su-installer.php:18
|
1370 |
+
msgid "Unpacking the downgrade…"
|
1371 |
+
msgstr ""
|
1372 |
+
|
1373 |
+
#: plugin/class.su-installer.php:19
|
1374 |
+
msgid "Installing the downgrade…"
|
1375 |
+
msgstr ""
|
1376 |
+
|
1377 |
+
#: plugin/class.su-installer.php:20
|
1378 |
+
msgid "Plugin downgrade failed."
|
1379 |
+
msgstr ""
|
1380 |
+
|
1381 |
+
#: plugin/class.su-installer.php:21
|
1382 |
+
msgid "Plugin downgraded successfully."
|
1383 |
+
msgstr ""
|
1384 |
+
|
1385 |
+
#: plugin/class.su-installer.php:24
|
1386 |
+
#, php-format
|
1387 |
+
msgid "Downloading from <span class=\"code\">%s</span>…"
|
1388 |
+
msgstr ""
|
1389 |
+
|
1390 |
+
#: plugin/class.su-installer.php:25
|
1391 |
+
msgid "Unpacking the reinstall…"
|
1392 |
+
msgstr ""
|
1393 |
+
|
1394 |
+
#: plugin/class.su-installer.php:26
|
1395 |
+
msgid "Reinstalling the current version…"
|
1396 |
+
msgstr ""
|
1397 |
+
|
1398 |
+
#: plugin/class.su-installer.php:27
|
1399 |
+
msgid "Plugin reinstallation failed."
|
1400 |
+
msgstr ""
|
1401 |
+
|
1402 |
+
#: plugin/class.su-installer.php:28
|
1403 |
+
msgid "Plugin reinstalled successfully."
|
1404 |
+
msgstr ""
|
1405 |
+
|
1406 |
+
#: plugin/class.su-installer.php:32
|
1407 |
+
#, php-format
|
1408 |
+
msgid "Downloading upgrade from <span class=\"code\">%s</span>…"
|
1409 |
+
msgstr ""
|
1410 |
+
|
1411 |
+
#: plugin/class.su-installer.php:33
|
1412 |
+
msgid "Unpacking the upgrade…"
|
1413 |
+
msgstr ""
|
1414 |
+
|
1415 |
+
#: plugin/class.su-installer.php:34
|
1416 |
+
msgid "Installing the upgrade…"
|
1417 |
+
msgstr ""
|
1418 |
+
|
1419 |
+
#: plugin/class.su-installer.php:35
|
1420 |
+
msgid "Plugin upgrade failed."
|
1421 |
+
msgstr ""
|
1422 |
+
|
1423 |
+
#: plugin/class.su-installer.php:36
|
1424 |
+
msgid "Plugin upgraded successfully."
|
1425 |
+
msgstr ""
|
1426 |
+
|
1427 |
#. Plugin URI of the plugin/theme
|
1428 |
msgid "http://www.seodesignsolutions.com/wordpress-seo/"
|
1429 |
msgstr ""
|
1430 |
|
1431 |
#. Description of the plugin/theme
|
1432 |
msgid ""
|
1433 |
+
"This all-in-one SEO plugin gives you control over title tags, noindex/"
|
1434 |
+
"nofollow, meta tags, slugs, canonical tags, \"more\" links, 404 errors, and "
|
1435 |
+
"more."
|
1436 |
msgstr ""
|
1437 |
|
1438 |
#. Author URI of the plugin/theme
|