Version Description
- Fix: transient bug
- Fix: notice when attachments not set
=
Download this release
Release Info
Developer | No3x |
Plugin | WP Mail Logging |
Version | 1.8.4 |
Comparing to | |
See all releases |
Code changes from version 1.8.3 to 1.8.4
- WPML_Plugin.php +259 -258
- languages/wp-mail-logging-de_DE.mo +0 -0
- languages/wp-mail-logging-de_DE.po +375 -375
- languages/wp-mail-logging-zh_CN.mo +0 -0
- languages/wp-mail-logging-zh_CN.po +371 -371
- languages/wp-mail-logging.pot +329 -370
- lib/vendor/redux-framework/inc/welcome/welcome.php +570 -568
- readme.txt +144 -139
- wp-mail-logging.php +108 -108
WPML_Plugin.php
CHANGED
@@ -1,258 +1,259 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
namespace No3x\WPML;
|
4 |
-
|
5 |
-
use No3x\WPML\Model\WPML_Mail as Mail;
|
6 |
-
|
7 |
-
// Exit if accessed directly.
|
8 |
-
if ( ! defined( 'ABSPATH' ) ) exit;
|
9 |
-
|
10 |
-
class WPML_Plugin extends WPML_LifeCycle {
|
11 |
-
|
12 |
-
protected $emailLogList;
|
13 |
-
|
14 |
-
const HOOK_LOGGING_COLUMNS = 'wpml_hook_mail_columns';
|
15 |
-
const HOOK_LOGGING_COLUMNS_RENDER = 'wpml_hook_mail_columns_render';
|
16 |
-
const HOOK_LOGGING_SUPPORTED_FORMATS = 'wpml_hook_supported_formats';
|
17 |
-
const HOOK_LOGGING_FORMAT_CONTENT = 'wpml_hook_format_content';
|
18 |
-
|
19 |
-
public static function getTablename( $name ) {
|
20 |
-
global $wpdb;
|
21 |
-
return $wpdb->prefix . 'wpml_' . $name;
|
22 |
-
}
|
23 |
-
|
24 |
-
public function getPluginDisplayName() {
|
25 |
-
return 'WP Mail Logging';
|
26 |
-
}
|
27 |
-
|
28 |
-
public function getMainPluginFileName() {
|
29 |
-
return 'wp-mail-logging.php';
|
30 |
-
}
|
31 |
-
|
32 |
-
public function getVersionSaved() {
|
33 |
-
return parent::getVersionSaved();
|
34 |
-
}
|
35 |
-
|
36 |
-
/**
|
37 |
-
* See: http://plugin.michael-simpson.com/?page_id=101
|
38 |
-
* Called by install() to create any database tables if needed.
|
39 |
-
* Best Practice:
|
40 |
-
* (1) Prefix all table names with $wpdb->prefix
|
41 |
-
* (2) make table names lower case only
|
42 |
-
* @return void
|
43 |
-
*/
|
44 |
-
protected function installDatabaseTables() {
|
45 |
-
global $wpdb;
|
46 |
-
$tableName = WPML_Plugin::getTablename('mails');
|
47 |
-
$wpdb->query("CREATE TABLE IF NOT EXISTS `$tableName` (
|
48 |
-
`mail_id` INT NOT NULL AUTO_INCREMENT,
|
49 |
-
`timestamp` TIMESTAMP NOT NULL,
|
50 |
-
`host` VARCHAR(200) NOT NULL DEFAULT '0',
|
51 |
-
`receiver` VARCHAR(200) NOT NULL DEFAULT '0',
|
52 |
-
`subject` VARCHAR(200) NOT NULL DEFAULT '0',
|
53 |
-
`message` TEXT NULL,
|
54 |
-
`headers` TEXT NULL,
|
55 |
-
`attachments` VARCHAR(800) NOT NULL DEFAULT '0',
|
56 |
-
`error` VARCHAR(400) NULL DEFAULT '',
|
57 |
-
`plugin_version` VARCHAR(200) NOT NULL DEFAULT '0',
|
58 |
-
PRIMARY KEY (`mail_id`)
|
59 |
-
) DEFAULT CHARACTER SET = utf8 DEFAULT COLLATE utf8_general_ci;");
|
60 |
-
}
|
61 |
-
|
62 |
-
/**
|
63 |
-
* See: http://plugin.michael-simpson.com/?page_id=101
|
64 |
-
* Drop plugin-created tables on uninstall.
|
65 |
-
* @return void
|
66 |
-
*/
|
67 |
-
protected function unInstallDatabaseTables() {
|
68 |
-
global $wpdb;
|
69 |
-
$tableName = WPML_Plugin::getTablename('mails');
|
70 |
-
$wpdb->query("DROP TABLE IF EXISTS `$tableName`");
|
71 |
-
}
|
72 |
-
|
73 |
-
/**
|
74 |
-
* Perform actions when upgrading from version X to version Y
|
75 |
-
* See: http://plugin.michael-simpson.com/?page_id=35
|
76 |
-
* @return void
|
77 |
-
*/
|
78 |
-
public function upgrade() {
|
79 |
-
global $wpdb;
|
80 |
-
|
81 |
-
$savedVersion = $this->getVersionSaved();
|
82 |
-
if(! $this->isInstalled() || empty( $savedVersion ) ) {
|
83 |
-
// The plugin must be installed before any upgrades
|
84 |
-
return;
|
85 |
-
}
|
86 |
-
|
87 |
-
$upgradeOk = true;
|
88 |
-
$savedVersion = $this->getVersionSaved();
|
89 |
-
$codeVersion = $this->getVersion();
|
90 |
-
$tableName = $this->getTablename('mails');
|
91 |
-
|
92 |
-
/* check for downgrade or beta
|
93 |
-
if( $this->isVersionLessThan($codeVersion, $savedVersion)
|
94 |
-
|| false !== strpos($savedVersion, 'beta') ) {
|
95 |
-
$upgradeOk = false;
|
96 |
-
// This is only be the case if the user had a beta version installed
|
97 |
-
if ( is_admin() ) {
|
98 |
-
wp_die( "[{$this->getPluginDisplayName()}] You have installed version {$savedVersion} but try to install {$codeVersion}! This would require a database downgrade which is not supported! You need to install {$savedVersion} again, enable \"Cleanup\" in the settings and disable the plugin.");
|
99 |
-
}
|
100 |
-
}*/
|
101 |
-
|
102 |
-
if ($this->isVersionLessThan($savedVersion, '2.0')) {
|
103 |
-
if ($this->isVersionLessThan($savedVersion, '1.2')) {
|
104 |
-
$wpdb->query("ALTER TABLE `$tableName` CHANGE COLUMN `to` `receiver` VARCHAR(200)");
|
105 |
-
}
|
106 |
-
if ($this->isVersionLessThan($savedVersion, '1.3')) {
|
107 |
-
$wpdb->query("ALTER TABLE `$tableName` MODIFY COLUMN `attachments` VARCHAR(800) NOT NULL DEFAULT '0'");
|
108 |
-
}
|
109 |
-
if ($this->isVersionLessThan($savedVersion, '1.4')) {
|
110 |
-
$wpdb->query("ALTER TABLE `$tableName` CHARACTER SET utf8 COLLATE utf8_general_ci;");
|
111 |
-
}
|
112 |
-
if ($this->isVersionLessThan($savedVersion, '1.7')) {
|
113 |
-
$wpdb->query("ALTER TABLE `$tableName` ADD COLUMN `host` VARCHAR(200) NOT NULL DEFAULT '0' AFTER `timestamp`;");
|
114 |
-
}
|
115 |
-
if ($this->isVersionLessThan($savedVersion, '1.8')) {
|
116 |
-
// Due to upgrade bug upgrades from 1.6.2 to 1.7.0 failed. Redo the schema change if required
|
117 |
-
$results = $wpdb->get_results( $wpdb->prepare( "SHOW COLUMNS FROM `$tableName` LIKE %s", 'host' ) );
|
118 |
-
$column_exists = ( count( $results ) > 0 ) ? true : false;
|
119 |
-
|
120 |
-
if ( false === $column_exists && is_array( $results ) ) {
|
121 |
-
$wpdb->query("ALTER TABLE `$tableName` ADD COLUMN `host` VARCHAR(200) NOT NULL DEFAULT '0' AFTER `timestamp`;");
|
122 |
-
}
|
123 |
-
|
124 |
-
$wpdb->query("ALTER TABLE `$tableName` ADD COLUMN `error` VARCHAR(400) NULL DEFAULT '' AFTER `attachments`;");
|
125 |
-
}
|
126 |
-
}
|
127 |
-
|
128 |
-
if ( !empty( $wpdb->last_error ) ) {
|
129 |
-
$upgradeOk = false;
|
130 |
-
if ( is_admin() ) {
|
131 |
-
echo "There was at least one error while upgrading the database schema. Please report the following error: {$wpdb->last_error}";
|
132 |
-
}
|
133 |
-
}
|
134 |
-
|
135 |
-
// Post-upgrade, set the current version in the options
|
136 |
-
if ($upgradeOk && $savedVersion != $codeVersion) {
|
137 |
-
$this->saveInstalledVersion();
|
138 |
-
}
|
139 |
-
}
|
140 |
-
|
141 |
-
public function addActionsAndFilters() {
|
142 |
-
// Add options administration page
|
143 |
-
// http://plugin.michael-simpson.com/?page_id=47
|
144 |
-
add_action( 'admin_menu', array(&$this, 'createSettingsMenu'), 9 );
|
145 |
-
|
146 |
-
// Example adding a script & style just for the options administration page
|
147 |
-
// http://plugin.michael-simpson.com/?page_id=47
|
148 |
-
// if (strpos($_SERVER['REQUEST_URI'], $this->getSettingsSlug()) !== false) {
|
149 |
-
// wp_enqueue_script('my-script', plugins_url('/js/my-script.js', __FILE__));
|
150 |
-
// wp_enqueue_style('my-style', plugins_url('/css/my-style.css', __FILE__));
|
151 |
-
// }
|
152 |
-
|
153 |
-
|
154 |
-
// Add Actions & Filters
|
155 |
-
// http://plugin.michael-simpson.com/?page_id=37
|
156 |
-
add_filter( 'plugin_action_links', array( &$this, 'registerPluginActionLinks'), 10, 5 );
|
157 |
-
add_filter( 'wp_mail', array( &$this, 'log_email' ), PHP_INT_MAX );
|
158 |
-
add_action( 'wp_mail_failed', array( &$this, 'log_email_failed' ) );
|
159 |
-
add_filter( 'set-screen-option', array( &$this, 'save_screen_options' ), 10, 3);
|
160 |
-
add_filter( 'wpml_get_plugin_version', array( &$this, 'getVersion' ) );
|
161 |
-
add_filter( 'wpml_get_plugin_name', array( &$this, 'getPluginDisplayName' ) );
|
162 |
-
add_filter( 'wpml_get_date_time_format', array( &$this, 'getDateTimeFormatString' ) );
|
163 |
-
// Adding scripts & styles to all pages
|
164 |
-
// Examples:
|
165 |
-
// wp_enqueue_script('jquery');
|
166 |
-
// wp_enqueue_style('my-style', plugins_url('/css/my-style.css', __FILE__));
|
167 |
-
// wp_enqueue_script('my-script', plugins_url('/js/my-script.js', __FILE__));
|
168 |
-
|
169 |
-
|
170 |
-
// Register short codes
|
171 |
-
// http://plugin.michael-simpson.com/?page_id=39
|
172 |
-
|
173 |
-
|
174 |
-
// Register AJAX hooks
|
175 |
-
// http://plugin.michael-simpson.com/?page_id=41
|
176 |
-
}
|
177 |
-
|
178 |
-
/**
|
179 |
-
* Action to log errors for mails failed to send.
|
180 |
-
*
|
181 |
-
* @since 1.8.0
|
182 |
-
* @global $wpml_current_mail_id
|
183 |
-
* @param \WP_Error $wperror
|
184 |
-
*/
|
185 |
-
public function log_email_failed( $wperror ) {
|
186 |
-
global $wpml_current_mail_id;
|
187 |
-
if(!isset($wpml_current_mail_id)) return;
|
188 |
-
$failed_mail = Mail::find_one($wpml_current_mail_id);
|
189 |
-
if( !$failed_mail ) return;
|
190 |
-
$failed_mail->set_error($wperror->get_error_message())->save();
|
191 |
-
}
|
192 |
-
|
193 |
-
private function extractReceiver( $receiver ) {
|
194 |
-
return is_array( $receiver ) ? implode( ',\n', $receiver ) : $receiver;
|
195 |
-
}
|
196 |
-
|
197 |
-
private function extractHeader( $headers ) {
|
198 |
-
return is_array( $headers ) ? implode( ',\n', $headers ) : $headers;
|
199 |
-
}
|
200 |
-
|
201 |
-
private function extractAttachments( $
|
202 |
-
$attachments =
|
203 |
-
$
|
204 |
-
$
|
205 |
-
$
|
206 |
-
$
|
207 |
-
|
208 |
-
|
209 |
-
$
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
'
|
230 |
-
'
|
231 |
-
'
|
232 |
-
'
|
233 |
-
'
|
234 |
-
'
|
235 |
-
'
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
*
|
243 |
-
*
|
244 |
-
* @
|
245 |
-
* @
|
246 |
-
* @
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
$
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
}
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace No3x\WPML;
|
4 |
+
|
5 |
+
use No3x\WPML\Model\WPML_Mail as Mail;
|
6 |
+
|
7 |
+
// Exit if accessed directly.
|
8 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
9 |
+
|
10 |
+
class WPML_Plugin extends WPML_LifeCycle {
|
11 |
+
|
12 |
+
protected $emailLogList;
|
13 |
+
|
14 |
+
const HOOK_LOGGING_COLUMNS = 'wpml_hook_mail_columns';
|
15 |
+
const HOOK_LOGGING_COLUMNS_RENDER = 'wpml_hook_mail_columns_render';
|
16 |
+
const HOOK_LOGGING_SUPPORTED_FORMATS = 'wpml_hook_supported_formats';
|
17 |
+
const HOOK_LOGGING_FORMAT_CONTENT = 'wpml_hook_format_content';
|
18 |
+
|
19 |
+
public static function getTablename( $name ) {
|
20 |
+
global $wpdb;
|
21 |
+
return $wpdb->prefix . 'wpml_' . $name;
|
22 |
+
}
|
23 |
+
|
24 |
+
public function getPluginDisplayName() {
|
25 |
+
return 'WP Mail Logging';
|
26 |
+
}
|
27 |
+
|
28 |
+
public function getMainPluginFileName() {
|
29 |
+
return 'wp-mail-logging.php';
|
30 |
+
}
|
31 |
+
|
32 |
+
public function getVersionSaved() {
|
33 |
+
return parent::getVersionSaved();
|
34 |
+
}
|
35 |
+
|
36 |
+
/**
|
37 |
+
* See: http://plugin.michael-simpson.com/?page_id=101
|
38 |
+
* Called by install() to create any database tables if needed.
|
39 |
+
* Best Practice:
|
40 |
+
* (1) Prefix all table names with $wpdb->prefix
|
41 |
+
* (2) make table names lower case only
|
42 |
+
* @return void
|
43 |
+
*/
|
44 |
+
protected function installDatabaseTables() {
|
45 |
+
global $wpdb;
|
46 |
+
$tableName = WPML_Plugin::getTablename('mails');
|
47 |
+
$wpdb->query("CREATE TABLE IF NOT EXISTS `$tableName` (
|
48 |
+
`mail_id` INT NOT NULL AUTO_INCREMENT,
|
49 |
+
`timestamp` TIMESTAMP NOT NULL,
|
50 |
+
`host` VARCHAR(200) NOT NULL DEFAULT '0',
|
51 |
+
`receiver` VARCHAR(200) NOT NULL DEFAULT '0',
|
52 |
+
`subject` VARCHAR(200) NOT NULL DEFAULT '0',
|
53 |
+
`message` TEXT NULL,
|
54 |
+
`headers` TEXT NULL,
|
55 |
+
`attachments` VARCHAR(800) NOT NULL DEFAULT '0',
|
56 |
+
`error` VARCHAR(400) NULL DEFAULT '',
|
57 |
+
`plugin_version` VARCHAR(200) NOT NULL DEFAULT '0',
|
58 |
+
PRIMARY KEY (`mail_id`)
|
59 |
+
) DEFAULT CHARACTER SET = utf8 DEFAULT COLLATE utf8_general_ci;");
|
60 |
+
}
|
61 |
+
|
62 |
+
/**
|
63 |
+
* See: http://plugin.michael-simpson.com/?page_id=101
|
64 |
+
* Drop plugin-created tables on uninstall.
|
65 |
+
* @return void
|
66 |
+
*/
|
67 |
+
protected function unInstallDatabaseTables() {
|
68 |
+
global $wpdb;
|
69 |
+
$tableName = WPML_Plugin::getTablename('mails');
|
70 |
+
$wpdb->query("DROP TABLE IF EXISTS `$tableName`");
|
71 |
+
}
|
72 |
+
|
73 |
+
/**
|
74 |
+
* Perform actions when upgrading from version X to version Y
|
75 |
+
* See: http://plugin.michael-simpson.com/?page_id=35
|
76 |
+
* @return void
|
77 |
+
*/
|
78 |
+
public function upgrade() {
|
79 |
+
global $wpdb;
|
80 |
+
|
81 |
+
$savedVersion = $this->getVersionSaved();
|
82 |
+
if(! $this->isInstalled() || empty( $savedVersion ) ) {
|
83 |
+
// The plugin must be installed before any upgrades
|
84 |
+
return;
|
85 |
+
}
|
86 |
+
|
87 |
+
$upgradeOk = true;
|
88 |
+
$savedVersion = $this->getVersionSaved();
|
89 |
+
$codeVersion = $this->getVersion();
|
90 |
+
$tableName = $this->getTablename('mails');
|
91 |
+
|
92 |
+
/* check for downgrade or beta
|
93 |
+
if( $this->isVersionLessThan($codeVersion, $savedVersion)
|
94 |
+
|| false !== strpos($savedVersion, 'beta') ) {
|
95 |
+
$upgradeOk = false;
|
96 |
+
// This is only be the case if the user had a beta version installed
|
97 |
+
if ( is_admin() ) {
|
98 |
+
wp_die( "[{$this->getPluginDisplayName()}] You have installed version {$savedVersion} but try to install {$codeVersion}! This would require a database downgrade which is not supported! You need to install {$savedVersion} again, enable \"Cleanup\" in the settings and disable the plugin.");
|
99 |
+
}
|
100 |
+
}*/
|
101 |
+
|
102 |
+
if ($this->isVersionLessThan($savedVersion, '2.0')) {
|
103 |
+
if ($this->isVersionLessThan($savedVersion, '1.2')) {
|
104 |
+
$wpdb->query("ALTER TABLE `$tableName` CHANGE COLUMN `to` `receiver` VARCHAR(200)");
|
105 |
+
}
|
106 |
+
if ($this->isVersionLessThan($savedVersion, '1.3')) {
|
107 |
+
$wpdb->query("ALTER TABLE `$tableName` MODIFY COLUMN `attachments` VARCHAR(800) NOT NULL DEFAULT '0'");
|
108 |
+
}
|
109 |
+
if ($this->isVersionLessThan($savedVersion, '1.4')) {
|
110 |
+
$wpdb->query("ALTER TABLE `$tableName` CHARACTER SET utf8 COLLATE utf8_general_ci;");
|
111 |
+
}
|
112 |
+
if ($this->isVersionLessThan($savedVersion, '1.7')) {
|
113 |
+
$wpdb->query("ALTER TABLE `$tableName` ADD COLUMN `host` VARCHAR(200) NOT NULL DEFAULT '0' AFTER `timestamp`;");
|
114 |
+
}
|
115 |
+
if ($this->isVersionLessThan($savedVersion, '1.8')) {
|
116 |
+
// Due to upgrade bug upgrades from 1.6.2 to 1.7.0 failed. Redo the schema change if required
|
117 |
+
$results = $wpdb->get_results( $wpdb->prepare( "SHOW COLUMNS FROM `$tableName` LIKE %s", 'host' ) );
|
118 |
+
$column_exists = ( count( $results ) > 0 ) ? true : false;
|
119 |
+
|
120 |
+
if ( false === $column_exists && is_array( $results ) ) {
|
121 |
+
$wpdb->query("ALTER TABLE `$tableName` ADD COLUMN `host` VARCHAR(200) NOT NULL DEFAULT '0' AFTER `timestamp`;");
|
122 |
+
}
|
123 |
+
|
124 |
+
$wpdb->query("ALTER TABLE `$tableName` ADD COLUMN `error` VARCHAR(400) NULL DEFAULT '' AFTER `attachments`;");
|
125 |
+
}
|
126 |
+
}
|
127 |
+
|
128 |
+
if ( !empty( $wpdb->last_error ) ) {
|
129 |
+
$upgradeOk = false;
|
130 |
+
if ( is_admin() ) {
|
131 |
+
echo "There was at least one error while upgrading the database schema. Please report the following error: {$wpdb->last_error}";
|
132 |
+
}
|
133 |
+
}
|
134 |
+
|
135 |
+
// Post-upgrade, set the current version in the options
|
136 |
+
if ($upgradeOk && $savedVersion != $codeVersion) {
|
137 |
+
$this->saveInstalledVersion();
|
138 |
+
}
|
139 |
+
}
|
140 |
+
|
141 |
+
public function addActionsAndFilters() {
|
142 |
+
// Add options administration page
|
143 |
+
// http://plugin.michael-simpson.com/?page_id=47
|
144 |
+
add_action( 'admin_menu', array(&$this, 'createSettingsMenu'), 9 );
|
145 |
+
|
146 |
+
// Example adding a script & style just for the options administration page
|
147 |
+
// http://plugin.michael-simpson.com/?page_id=47
|
148 |
+
// if (strpos($_SERVER['REQUEST_URI'], $this->getSettingsSlug()) !== false) {
|
149 |
+
// wp_enqueue_script('my-script', plugins_url('/js/my-script.js', __FILE__));
|
150 |
+
// wp_enqueue_style('my-style', plugins_url('/css/my-style.css', __FILE__));
|
151 |
+
// }
|
152 |
+
|
153 |
+
|
154 |
+
// Add Actions & Filters
|
155 |
+
// http://plugin.michael-simpson.com/?page_id=37
|
156 |
+
add_filter( 'plugin_action_links', array( &$this, 'registerPluginActionLinks'), 10, 5 );
|
157 |
+
add_filter( 'wp_mail', array( &$this, 'log_email' ), PHP_INT_MAX );
|
158 |
+
add_action( 'wp_mail_failed', array( &$this, 'log_email_failed' ) );
|
159 |
+
add_filter( 'set-screen-option', array( &$this, 'save_screen_options' ), 10, 3);
|
160 |
+
add_filter( 'wpml_get_plugin_version', array( &$this, 'getVersion' ) );
|
161 |
+
add_filter( 'wpml_get_plugin_name', array( &$this, 'getPluginDisplayName' ) );
|
162 |
+
add_filter( 'wpml_get_date_time_format', array( &$this, 'getDateTimeFormatString' ) );
|
163 |
+
// Adding scripts & styles to all pages
|
164 |
+
// Examples:
|
165 |
+
// wp_enqueue_script('jquery');
|
166 |
+
// wp_enqueue_style('my-style', plugins_url('/css/my-style.css', __FILE__));
|
167 |
+
// wp_enqueue_script('my-script', plugins_url('/js/my-script.js', __FILE__));
|
168 |
+
|
169 |
+
|
170 |
+
// Register short codes
|
171 |
+
// http://plugin.michael-simpson.com/?page_id=39
|
172 |
+
|
173 |
+
|
174 |
+
// Register AJAX hooks
|
175 |
+
// http://plugin.michael-simpson.com/?page_id=41
|
176 |
+
}
|
177 |
+
|
178 |
+
/**
|
179 |
+
* Action to log errors for mails failed to send.
|
180 |
+
*
|
181 |
+
* @since 1.8.0
|
182 |
+
* @global $wpml_current_mail_id
|
183 |
+
* @param \WP_Error $wperror
|
184 |
+
*/
|
185 |
+
public function log_email_failed( $wperror ) {
|
186 |
+
global $wpml_current_mail_id;
|
187 |
+
if(!isset($wpml_current_mail_id)) return;
|
188 |
+
$failed_mail = Mail::find_one($wpml_current_mail_id);
|
189 |
+
if( !$failed_mail ) return;
|
190 |
+
$failed_mail->set_error($wperror->get_error_message())->save();
|
191 |
+
}
|
192 |
+
|
193 |
+
private function extractReceiver( $receiver ) {
|
194 |
+
return is_array( $receiver ) ? implode( ',\n', $receiver ) : $receiver;
|
195 |
+
}
|
196 |
+
|
197 |
+
private function extractHeader( $headers ) {
|
198 |
+
return is_array( $headers ) ? implode( ',\n', $headers ) : $headers;
|
199 |
+
}
|
200 |
+
|
201 |
+
private function extractAttachments( $mail ) {
|
202 |
+
$attachments = isset($mail['attachments']) ? $mail['attachments'] : array();
|
203 |
+
$attachments = is_array( $attachments ) ? $attachments : array( $attachments );
|
204 |
+
$attachment_urls = array();
|
205 |
+
$uploads = wp_upload_dir();
|
206 |
+
$basename = 'uploads';
|
207 |
+
$basename_needle = '/'.$basename.'/';
|
208 |
+
foreach ( $attachments as $attachment ) {
|
209 |
+
$append_url = substr( $attachment, strrpos( $attachment, $basename_needle ) + strlen($basename_needle) - 1 );
|
210 |
+
$attachment_urls[] = $append_url;
|
211 |
+
}
|
212 |
+
return implode( ',\n', $attachment_urls );
|
213 |
+
}
|
214 |
+
|
215 |
+
private function extractMessage( $mail ) {
|
216 |
+
if ( isset($mail['message']) ) {
|
217 |
+
// usually the message is stored in the message field
|
218 |
+
return $mail['message'];
|
219 |
+
} elseif ( isset($mail['html']) ) {
|
220 |
+
// for example Mandrill stores the message in the 'html' field (see gh-22)
|
221 |
+
return $mail['html'];
|
222 |
+
}
|
223 |
+
return "";
|
224 |
+
}
|
225 |
+
|
226 |
+
|
227 |
+
private function extractFields( $mail ) {
|
228 |
+
return array(
|
229 |
+
'receiver' => $this->extractReceiver( $mail['to'] ),
|
230 |
+
'subject' => $mail['subject'],
|
231 |
+
'message' => $this->extractMessage( $mail ),
|
232 |
+
'headers' => $this->extractHeader( $mail['headers'] ),
|
233 |
+
'attachments' => $this->extractAttachments( $mail ),
|
234 |
+
'plugin_version' => $this->getVersionSaved(),
|
235 |
+
'timestamp' => current_time( 'mysql' ),
|
236 |
+
'host' => isset( $_SERVER['SERVER_ADDR'] ) ? $_SERVER['SERVER_ADDR'] : ''
|
237 |
+
);
|
238 |
+
}
|
239 |
+
|
240 |
+
|
241 |
+
/**
|
242 |
+
* Logs mail to database.
|
243 |
+
*
|
244 |
+
* @param array $mailOriginal
|
245 |
+
* @global $wpml_current_mail_id
|
246 |
+
* @since 1.0
|
247 |
+
* @return array $mailOriginal
|
248 |
+
*/
|
249 |
+
public function log_email( $mailOriginal ) {
|
250 |
+
global $wpml_current_mail_id;
|
251 |
+
// make copy to avoid any changes on the original mail
|
252 |
+
$mail = $mailOriginal;
|
253 |
+
|
254 |
+
$fields = $this->extractFields( $mail );
|
255 |
+
$wpml_current_mail_id = Mail::create($fields)->save();
|
256 |
+
|
257 |
+
return $mailOriginal;
|
258 |
+
}
|
259 |
+
}
|
languages/wp-mail-logging-de_DE.mo
CHANGED
Binary file
|
languages/wp-mail-logging-de_DE.po
CHANGED
@@ -1,375 +1,375 @@
|
|
1 |
-
# Copyright (C) 2016 Christian Zöller
|
2 |
-
# This file is distributed under the GPLv3.
|
3 |
-
msgid ""
|
4 |
-
msgstr ""
|
5 |
-
"Project-Id-Version: WP Mail Logging 1.8.0\n"
|
6 |
-
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-mail-logging\n"
|
7 |
-
"POT-Creation-Date: 2017-01-03 19:59+0100\n"
|
8 |
-
"PO-Revision-Date:
|
9 |
-
"Last-Translator: \n"
|
10 |
-
"Language-Team: \n"
|
11 |
-
"Language: de_DE\n"
|
12 |
-
"MIME-Version: 1.0\n"
|
13 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
14 |
-
"Content-Transfer-Encoding: 8bit\n"
|
15 |
-
"X-Generator: Poedit
|
16 |
-
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
17 |
-
|
18 |
-
#: WPML_Email_Log_List.php:59
|
19 |
-
msgid "No email found."
|
20 |
-
msgstr "Keine E-Mail gefunden."
|
21 |
-
|
22 |
-
#: WPML_Email_Log_List.php:71
|
23 |
-
msgid "ID"
|
24 |
-
msgstr "ID"
|
25 |
-
|
26 |
-
#: WPML_Email_Log_List.php:72 inc/redux/WPML_Redux_Framework_config.php:343
|
27 |
-
msgid "Time"
|
28 |
-
msgstr "Zeit"
|
29 |
-
|
30 |
-
#: WPML_Email_Log_List.php:73
|
31 |
-
msgid "Receiver"
|
32 |
-
msgstr "Empfänger"
|
33 |
-
|
34 |
-
#: WPML_Email_Log_List.php:74
|
35 |
-
msgid "Subject"
|
36 |
-
msgstr "Betreff"
|
37 |
-
|
38 |
-
#: WPML_Email_Log_List.php:75 WPML_OptionsManager.php:497
|
39 |
-
msgid "Message"
|
40 |
-
msgstr "Nachricht"
|
41 |
-
|
42 |
-
#: WPML_Email_Log_List.php:76
|
43 |
-
msgid "Headers"
|
44 |
-
msgstr "Header"
|
45 |
-
|
46 |
-
#: WPML_Email_Log_List.php:77
|
47 |
-
msgid "Attachments"
|
48 |
-
msgstr "Anhänge"
|
49 |
-
|
50 |
-
#: WPML_Email_Log_List.php:78
|
51 |
-
msgid "Error"
|
52 |
-
msgstr "Fehler"
|
53 |
-
|
54 |
-
#: WPML_Email_Log_List.php:79
|
55 |
-
msgid "Plugin Version"
|
56 |
-
msgstr "Plugin Version"
|
57 |
-
|
58 |
-
#: WPML_Email_Log_List.php:90
|
59 |
-
msgid "Host"
|
60 |
-
msgstr "Host"
|
61 |
-
|
62 |
-
#: WPML_Email_Log_List.php:267 WPML_Email_Log_List.php:301
|
63 |
-
msgid "Attachment %s is not present"
|
64 |
-
msgstr "Anhang %s ist nicht vorhanden"
|
65 |
-
|
66 |
-
#: WPML_Email_Log_List.php:495
|
67 |
-
msgid "Fallback to raw format because html is not convertible to json."
|
68 |
-
msgstr ""
|
69 |
-
"Darstellung in raw-Format, da eine html Nachricht nicht als json "
|
70 |
-
"dargestellt werden kann."
|
71 |
-
|
72 |
-
#: WPML_LifeCycle.php:205
|
73 |
-
msgid "Settings"
|
74 |
-
msgstr "Einstellungen"
|
75 |
-
|
76 |
-
#: WPML_OptionsManager.php:321 WPML_OptionsManager.php:322
|
77 |
-
msgid "WP Mail Log"
|
78 |
-
msgstr ""
|
79 |
-
|
80 |
-
#: WPML_OptionsManager.php:333 WPML_OptionsManager.php:334
|
81 |
-
#: WPML_OptionsManager.php:345
|
82 |
-
msgid "About"
|
83 |
-
msgstr "Über"
|
84 |
-
|
85 |
-
#: WPML_OptionsManager.php:422
|
86 |
-
msgid "About Plugin"
|
87 |
-
msgstr "Über das Plugin"
|
88 |
-
|
89 |
-
#: WPML_OptionsManager.php:431
|
90 |
-
msgid "More information"
|
91 |
-
msgstr "Mehr Informationen"
|
92 |
-
|
93 |
-
#: WPML_OptionsManager.php:432
|
94 |
-
msgid "Plugin Homepage/support"
|
95 |
-
msgstr ""
|
96 |
-
|
97 |
-
#: WPML_OptionsManager.php:433
|
98 |
-
msgid "Plugin author's blog"
|
99 |
-
msgstr ""
|
100 |
-
|
101 |
-
#: WPML_OptionsManager.php:440
|
102 |
-
msgid "Entries per page"
|
103 |
-
msgstr "Einträge pro Seite"
|
104 |
-
|
105 |
-
#: WPML_OptionsManager.php:462
|
106 |
-
msgid "You do not have sufficient permissions to access this page."
|
107 |
-
msgstr "Sie haben keine ausreichende Berechtigung um diese Seite zu öffnen."
|
108 |
-
|
109 |
-
#: WPML_OptionsManager.php:471
|
110 |
-
msgid "Log"
|
111 |
-
msgstr "Log"
|
112 |
-
|
113 |
-
#: WPML_OptionsManager.php:515
|
114 |
-
msgid "Close"
|
115 |
-
msgstr "Schließen"
|
116 |
-
|
117 |
-
#: WPML_OptionsManager.php:529
|
118 |
-
msgid "Search"
|
119 |
-
msgstr "Suchen"
|
120 |
-
|
121 |
-
#: WPML_OptionsManager.php:554
|
122 |
-
msgid "true"
|
123 |
-
msgstr ""
|
124 |
-
|
125 |
-
#: WPML_OptionsManager.php:556
|
126 |
-
msgid "false"
|
127 |
-
msgstr ""
|
128 |
-
|
129 |
-
#: WPML_OptionsManager.php:559
|
130 |
-
msgid "Administrator"
|
131 |
-
msgstr ""
|
132 |
-
|
133 |
-
#: WPML_OptionsManager.php:561
|
134 |
-
msgid "Editor"
|
135 |
-
msgstr ""
|
136 |
-
|
137 |
-
#: WPML_OptionsManager.php:563
|
138 |
-
msgid "Author"
|
139 |
-
msgstr ""
|
140 |
-
|
141 |
-
#: WPML_OptionsManager.php:565
|
142 |
-
msgid "Contributor"
|
143 |
-
msgstr ""
|
144 |
-
|
145 |
-
#: WPML_OptionsManager.php:567
|
146 |
-
msgid "Subscriber"
|
147 |
-
msgstr ""
|
148 |
-
|
149 |
-
#: WPML_OptionsManager.php:569
|
150 |
-
msgid "Anyone"
|
151 |
-
msgstr ""
|
152 |
-
|
153 |
-
#: inc/class-wp-list-table.php:191
|
154 |
-
msgid "No items found."
|
155 |
-
msgstr "Keine Einträge gefunden."
|
156 |
-
|
157 |
-
#: inc/class-wp-list-table.php:315
|
158 |
-
msgid "Bulk Actions"
|
159 |
-
msgstr ""
|
160 |
-
|
161 |
-
#: inc/class-wp-list-table.php:325
|
162 |
-
msgid "Apply"
|
163 |
-
msgstr "Anwenden"
|
164 |
-
|
165 |
-
#: inc/class-wp-list-table.php:409
|
166 |
-
msgid "Show all dates"
|
167 |
-
msgstr ""
|
168 |
-
|
169 |
-
#. translators: 1: month name, 2: 4-digit year
|
170 |
-
#: inc/class-wp-list-table.php:422
|
171 |
-
msgid "%1$s %2$d"
|
172 |
-
msgstr ""
|
173 |
-
|
174 |
-
#: inc/class-wp-list-table.php:438
|
175 |
-
msgid "List View"
|
176 |
-
msgstr ""
|
177 |
-
|
178 |
-
#: inc/class-wp-list-table.php:439
|
179 |
-
msgid "Excerpt View"
|
180 |
-
msgstr ""
|
181 |
-
|
182 |
-
#: inc/class-wp-list-table.php:465
|
183 |
-
msgid "%s pending"
|
184 |
-
msgstr ""
|
185 |
-
|
186 |
-
#: inc/class-wp-list-table.php:533 inc/class-wp-list-table.php:948
|
187 |
-
msgid "1 item"
|
188 |
-
msgid_plural "%s items"
|
189 |
-
msgstr[0] ""
|
190 |
-
msgstr[1] ""
|
191 |
-
|
192 |
-
#: inc/class-wp-list-table.php:551
|
193 |
-
msgid "Go to the first page"
|
194 |
-
msgstr ""
|
195 |
-
|
196 |
-
#: inc/class-wp-list-table.php:558
|
197 |
-
msgid "Go to the previous page"
|
198 |
-
msgstr ""
|
199 |
-
|
200 |
-
#: inc/class-wp-list-table.php:567
|
201 |
-
msgid "Current page"
|
202 |
-
msgstr ""
|
203 |
-
|
204 |
-
#: inc/class-wp-list-table.php:577
|
205 |
-
msgid "Go to the next page"
|
206 |
-
msgstr ""
|
207 |
-
|
208 |
-
#: inc/class-wp-list-table.php:584
|
209 |
-
msgid "Go to the last page"
|
210 |
-
msgstr ""
|
211 |
-
|
212 |
-
#: inc/class-wp-list-table.php:720
|
213 |
-
msgid "Select All"
|
214 |
-
msgstr ""
|
215 |
-
|
216 |
-
#: inc/redux/WPML_Redux_Framework_config.php:194
|
217 |
-
msgid "Customize “%s”"
|
218 |
-
msgstr ""
|
219 |
-
|
220 |
-
#: inc/redux/WPML_Redux_Framework_config.php:203
|
221 |
-
#: inc/redux/WPML_Redux_Framework_config.php:207
|
222 |
-
msgid "Current theme preview"
|
223 |
-
msgstr ""
|
224 |
-
|
225 |
-
#: inc/redux/WPML_Redux_Framework_config.php:214
|
226 |
-
msgid "By %s"
|
227 |
-
msgstr ""
|
228 |
-
|
229 |
-
#: inc/redux/WPML_Redux_Framework_config.php:215
|
230 |
-
msgid "Version %s"
|
231 |
-
msgstr ""
|
232 |
-
|
233 |
-
#: inc/redux/WPML_Redux_Framework_config.php:216
|
234 |
-
msgid "Tags"
|
235 |
-
msgstr ""
|
236 |
-
|
237 |
-
#: inc/redux/WPML_Redux_Framework_config.php:221
|
238 |
-
msgid "This <a href=\"%1$s\">child theme</a> requires its parent theme, %2$s."
|
239 |
-
msgstr ""
|
240 |
-
|
241 |
-
#: inc/redux/WPML_Redux_Framework_config.php:221
|
242 |
-
msgid "http://codex.wordpress.org/Child_Themes"
|
243 |
-
msgstr ""
|
244 |
-
|
245 |
-
#: inc/redux/WPML_Redux_Framework_config.php:244
|
246 |
-
msgid "General Settings"
|
247 |
-
msgstr ""
|
248 |
-
|
249 |
-
#: inc/redux/WPML_Redux_Framework_config.php:253
|
250 |
-
msgid "Cleanup"
|
251 |
-
msgstr "Aufräumen"
|
252 |
-
|
253 |
-
#: inc/redux/WPML_Redux_Framework_config.php:254
|
254 |
-
msgid "Delete all data on deactivation? (emails and settings)?"
|
255 |
-
msgstr "Alle Daten bei Deaktivierung löschen? (E-Mails und Einstellungen)"
|
256 |
-
|
257 |
-
#: inc/redux/WPML_Redux_Framework_config.php:264
|
258 |
-
msgid "Can See Submission data"
|
259 |
-
msgstr "Daten sichtbar für"
|
260 |
-
|
261 |
-
#: inc/redux/WPML_Redux_Framework_config.php:265
|
262 |
-
msgid "Select the minimum role."
|
263 |
-
msgstr "Wähle die Mindestberechtigung"
|
264 |
-
|
265 |
-
#: inc/redux/WPML_Redux_Framework_config.php:270
|
266 |
-
msgid "WordPress Date Time Format"
|
267 |
-
msgstr "WordPress Zeitstempel Format"
|
268 |
-
|
269 |
-
#: inc/redux/WPML_Redux_Framework_config.php:271
|
270 |
-
msgid "Use format from WordPress settings (%s)"
|
271 |
-
msgstr "Benutze das WordPress Datumsformat aus den Einstellungen (%s)"
|
272 |
-
|
273 |
-
#: inc/redux/WPML_Redux_Framework_config.php:273
|
274 |
-
#: inc/redux/WPML_Redux_Framework_config.php:298
|
275 |
-
#: inc/redux/WPML_Redux_Framework_config.php:314
|
276 |
-
#: inc/redux/WPML_Redux_Framework_config.php:336
|
277 |
-
msgid "Enabled"
|
278 |
-
msgstr "Ein"
|
279 |
-
|
280 |
-
#: inc/redux/WPML_Redux_Framework_config.php:274
|
281 |
-
#: inc/redux/WPML_Redux_Framework_config.php:299
|
282 |
-
#: inc/redux/WPML_Redux_Framework_config.php:315
|
283 |
-
#: inc/redux/WPML_Redux_Framework_config.php:337
|
284 |
-
msgid "Disabled"
|
285 |
-
msgstr "Aus"
|
286 |
-
|
287 |
-
#: inc/redux/WPML_Redux_Framework_config.php:285
|
288 |
-
msgid "Default Format for Message"
|
289 |
-
msgstr "Standardformat für Nachrichten"
|
290 |
-
|
291 |
-
#: inc/redux/WPML_Redux_Framework_config.php:286
|
292 |
-
msgid "Select your preferred display format."
|
293 |
-
msgstr "Bevorzugtes Standardformat"
|
294 |
-
|
295 |
-
#: inc/redux/WPML_Redux_Framework_config.php:291
|
296 |
-
msgid "Display Host"
|
297 |
-
msgstr "Zeige Host"
|
298 |
-
|
299 |
-
#: inc/redux/WPML_Redux_Framework_config.php:292
|
300 |
-
msgid "Display host column in list."
|
301 |
-
msgstr "Zeige Host Spalte in Liste"
|
302 |
-
|
303 |
-
#: inc/redux/WPML_Redux_Framework_config.php:304
|
304 |
-
msgid "Log Rotation"
|
305 |
-
msgstr ""
|
306 |
-
|
307 |
-
#: inc/redux/WPML_Redux_Framework_config.php:305
|
308 |
-
msgid "Save space by deleting logs regularly."
|
309 |
-
msgstr "Platz sparen durch regelmäßiges Löschen des Logs."
|
310 |
-
|
311 |
-
#: inc/redux/WPML_Redux_Framework_config.php:311
|
312 |
-
msgid "Cleanup by Amount"
|
313 |
-
msgstr "Löschen nach Anzahl"
|
314 |
-
|
315 |
-
#: inc/redux/WPML_Redux_Framework_config.php:312
|
316 |
-
#: inc/redux/WPML_Redux_Framework_config.php:334
|
317 |
-
msgid "Setup a automated cleanup routine!"
|
318 |
-
msgstr "Erstelle eine automatische Aufräumroutine!"
|
319 |
-
|
320 |
-
#: inc/redux/WPML_Redux_Framework_config.php:321
|
321 |
-
msgid "Amount"
|
322 |
-
msgstr "Anzahl"
|
323 |
-
|
324 |
-
#: inc/redux/WPML_Redux_Framework_config.php:322
|
325 |
-
#: inc/redux/WPML_Redux_Framework_config.php:344
|
326 |
-
msgid "When should mails are deleted?"
|
327 |
-
msgstr "Wann sollen Mails gelöscht werden?"
|
328 |
-
|
329 |
-
#: inc/redux/WPML_Redux_Framework_config.php:323
|
330 |
-
msgid "Cleanup when the stored mails exceed..."
|
331 |
-
msgstr "Lösche wenn die Mails den Betrag übersteigen..."
|
332 |
-
|
333 |
-
#: inc/redux/WPML_Redux_Framework_config.php:333
|
334 |
-
msgid "Cleanup by Time"
|
335 |
-
msgstr "Löschen nach Zeit"
|
336 |
-
|
337 |
-
#: inc/redux/WPML_Redux_Framework_config.php:345
|
338 |
-
msgid "Delete mails older than days..."
|
339 |
-
msgstr "Lösche Mails älter als ... Tage"
|
340 |
-
|
341 |
-
#: inc/redux/WPML_Redux_Framework_config.php:510
|
342 |
-
msgid "Documentation"
|
343 |
-
msgstr "Dokumentation"
|
344 |
-
|
345 |
-
#: inc/redux/WPML_Redux_Framework_config.php:516
|
346 |
-
msgid "Support"
|
347 |
-
msgstr "Hilfe"
|
348 |
-
|
349 |
-
#: inc/redux/WPML_Redux_Framework_config.php:522
|
350 |
-
msgid "Extensions"
|
351 |
-
msgstr "Erweiterungen"
|
352 |
-
|
353 |
-
#: wp-mail-logging.php:48
|
354 |
-
msgid ""
|
355 |
-
"Error: plugin \"WP Mail Logging\" requires a newer version of PHP to be "
|
356 |
-
"running."
|
357 |
-
msgstr ""
|
358 |
-
"Fehler: Das Plugin \"WP Mail Logging\" benötigt eine neuere PHP Version."
|
359 |
-
|
360 |
-
#: wp-mail-logging.php:49
|
361 |
-
msgid "Minimal version of PHP required: "
|
362 |
-
msgstr "Mindestanforderung PHP Version:"
|
363 |
-
|
364 |
-
#: wp-mail-logging.php:50
|
365 |
-
msgid "Your server's PHP version: "
|
366 |
-
msgstr "Die PHP Version des Servers:"
|
367 |
-
|
368 |
-
#. Description of the plugin/theme
|
369 |
-
msgid "Logs each email sent by WordPress."
|
370 |
-
msgstr ""
|
371 |
-
|
372 |
-
#: inc/class-wp-list-table.php:573
|
373 |
-
msgctxt "paging"
|
374 |
-
msgid "%1$s of %2$s"
|
375 |
-
msgstr "%1$s von %2$s"
|
1 |
+
# Copyright (C) 2016 Christian Zöller
|
2 |
+
# This file is distributed under the GPLv3.
|
3 |
+
msgid ""
|
4 |
+
msgstr ""
|
5 |
+
"Project-Id-Version: WP Mail Logging 1.8.0\n"
|
6 |
+
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-mail-logging\n"
|
7 |
+
"POT-Creation-Date: 2017-01-03 19:59+0100\n"
|
8 |
+
"PO-Revision-Date: 2018-06-22 17:31+0200\n"
|
9 |
+
"Last-Translator: \n"
|
10 |
+
"Language-Team: \n"
|
11 |
+
"Language: de_DE\n"
|
12 |
+
"MIME-Version: 1.0\n"
|
13 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
14 |
+
"Content-Transfer-Encoding: 8bit\n"
|
15 |
+
"X-Generator: Poedit 2.0.8\n"
|
16 |
+
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
17 |
+
|
18 |
+
#: WPML_Email_Log_List.php:59
|
19 |
+
msgid "No email found."
|
20 |
+
msgstr "Keine E-Mail gefunden."
|
21 |
+
|
22 |
+
#: WPML_Email_Log_List.php:71
|
23 |
+
msgid "ID"
|
24 |
+
msgstr "ID"
|
25 |
+
|
26 |
+
#: WPML_Email_Log_List.php:72 inc/redux/WPML_Redux_Framework_config.php:343
|
27 |
+
msgid "Time"
|
28 |
+
msgstr "Zeit"
|
29 |
+
|
30 |
+
#: WPML_Email_Log_List.php:73
|
31 |
+
msgid "Receiver"
|
32 |
+
msgstr "Empfänger"
|
33 |
+
|
34 |
+
#: WPML_Email_Log_List.php:74
|
35 |
+
msgid "Subject"
|
36 |
+
msgstr "Betreff"
|
37 |
+
|
38 |
+
#: WPML_Email_Log_List.php:75 WPML_OptionsManager.php:497
|
39 |
+
msgid "Message"
|
40 |
+
msgstr "Nachricht"
|
41 |
+
|
42 |
+
#: WPML_Email_Log_List.php:76
|
43 |
+
msgid "Headers"
|
44 |
+
msgstr "Header"
|
45 |
+
|
46 |
+
#: WPML_Email_Log_List.php:77
|
47 |
+
msgid "Attachments"
|
48 |
+
msgstr "Anhänge"
|
49 |
+
|
50 |
+
#: WPML_Email_Log_List.php:78
|
51 |
+
msgid "Error"
|
52 |
+
msgstr "Fehler"
|
53 |
+
|
54 |
+
#: WPML_Email_Log_List.php:79
|
55 |
+
msgid "Plugin Version"
|
56 |
+
msgstr "Plugin Version"
|
57 |
+
|
58 |
+
#: WPML_Email_Log_List.php:90
|
59 |
+
msgid "Host"
|
60 |
+
msgstr "Host"
|
61 |
+
|
62 |
+
#: WPML_Email_Log_List.php:267 WPML_Email_Log_List.php:301
|
63 |
+
msgid "Attachment %s is not present"
|
64 |
+
msgstr "Anhang %s ist nicht vorhanden"
|
65 |
+
|
66 |
+
#: WPML_Email_Log_List.php:495
|
67 |
+
msgid "Fallback to raw format because html is not convertible to json."
|
68 |
+
msgstr ""
|
69 |
+
"Darstellung in raw-Format, da eine html Nachricht nicht als json "
|
70 |
+
"dargestellt werden kann."
|
71 |
+
|
72 |
+
#: WPML_LifeCycle.php:205
|
73 |
+
msgid "Settings"
|
74 |
+
msgstr "Einstellungen"
|
75 |
+
|
76 |
+
#: WPML_OptionsManager.php:321 WPML_OptionsManager.php:322
|
77 |
+
msgid "WP Mail Log"
|
78 |
+
msgstr ""
|
79 |
+
|
80 |
+
#: WPML_OptionsManager.php:333 WPML_OptionsManager.php:334
|
81 |
+
#: WPML_OptionsManager.php:345
|
82 |
+
msgid "About"
|
83 |
+
msgstr "Über"
|
84 |
+
|
85 |
+
#: WPML_OptionsManager.php:422
|
86 |
+
msgid "About Plugin"
|
87 |
+
msgstr "Über das Plugin"
|
88 |
+
|
89 |
+
#: WPML_OptionsManager.php:431
|
90 |
+
msgid "More information"
|
91 |
+
msgstr "Mehr Informationen"
|
92 |
+
|
93 |
+
#: WPML_OptionsManager.php:432
|
94 |
+
msgid "Plugin Homepage/support"
|
95 |
+
msgstr ""
|
96 |
+
|
97 |
+
#: WPML_OptionsManager.php:433
|
98 |
+
msgid "Plugin author's blog"
|
99 |
+
msgstr ""
|
100 |
+
|
101 |
+
#: WPML_OptionsManager.php:440
|
102 |
+
msgid "Entries per page"
|
103 |
+
msgstr "Einträge pro Seite"
|
104 |
+
|
105 |
+
#: WPML_OptionsManager.php:462
|
106 |
+
msgid "You do not have sufficient permissions to access this page."
|
107 |
+
msgstr "Sie haben keine ausreichende Berechtigung um diese Seite zu öffnen."
|
108 |
+
|
109 |
+
#: WPML_OptionsManager.php:471
|
110 |
+
msgid "Log"
|
111 |
+
msgstr "Log"
|
112 |
+
|
113 |
+
#: WPML_OptionsManager.php:515
|
114 |
+
msgid "Close"
|
115 |
+
msgstr "Schließen"
|
116 |
+
|
117 |
+
#: WPML_OptionsManager.php:529
|
118 |
+
msgid "Search"
|
119 |
+
msgstr "Suchen"
|
120 |
+
|
121 |
+
#: WPML_OptionsManager.php:554
|
122 |
+
msgid "true"
|
123 |
+
msgstr ""
|
124 |
+
|
125 |
+
#: WPML_OptionsManager.php:556
|
126 |
+
msgid "false"
|
127 |
+
msgstr ""
|
128 |
+
|
129 |
+
#: WPML_OptionsManager.php:559
|
130 |
+
msgid "Administrator"
|
131 |
+
msgstr ""
|
132 |
+
|
133 |
+
#: WPML_OptionsManager.php:561
|
134 |
+
msgid "Editor"
|
135 |
+
msgstr ""
|
136 |
+
|
137 |
+
#: WPML_OptionsManager.php:563
|
138 |
+
msgid "Author"
|
139 |
+
msgstr ""
|
140 |
+
|
141 |
+
#: WPML_OptionsManager.php:565
|
142 |
+
msgid "Contributor"
|
143 |
+
msgstr ""
|
144 |
+
|
145 |
+
#: WPML_OptionsManager.php:567
|
146 |
+
msgid "Subscriber"
|
147 |
+
msgstr ""
|
148 |
+
|
149 |
+
#: WPML_OptionsManager.php:569
|
150 |
+
msgid "Anyone"
|
151 |
+
msgstr ""
|
152 |
+
|
153 |
+
#: inc/class-wp-list-table.php:191
|
154 |
+
msgid "No items found."
|
155 |
+
msgstr "Keine Einträge gefunden."
|
156 |
+
|
157 |
+
#: inc/class-wp-list-table.php:315
|
158 |
+
msgid "Bulk Actions"
|
159 |
+
msgstr ""
|
160 |
+
|
161 |
+
#: inc/class-wp-list-table.php:325
|
162 |
+
msgid "Apply"
|
163 |
+
msgstr "Anwenden"
|
164 |
+
|
165 |
+
#: inc/class-wp-list-table.php:409
|
166 |
+
msgid "Show all dates"
|
167 |
+
msgstr ""
|
168 |
+
|
169 |
+
#. translators: 1: month name, 2: 4-digit year
|
170 |
+
#: inc/class-wp-list-table.php:422
|
171 |
+
msgid "%1$s %2$d"
|
172 |
+
msgstr ""
|
173 |
+
|
174 |
+
#: inc/class-wp-list-table.php:438
|
175 |
+
msgid "List View"
|
176 |
+
msgstr ""
|
177 |
+
|
178 |
+
#: inc/class-wp-list-table.php:439
|
179 |
+
msgid "Excerpt View"
|
180 |
+
msgstr ""
|
181 |
+
|
182 |
+
#: inc/class-wp-list-table.php:465
|
183 |
+
msgid "%s pending"
|
184 |
+
msgstr ""
|
185 |
+
|
186 |
+
#: inc/class-wp-list-table.php:533 inc/class-wp-list-table.php:948
|
187 |
+
msgid "1 item"
|
188 |
+
msgid_plural "%s items"
|
189 |
+
msgstr[0] ""
|
190 |
+
msgstr[1] ""
|
191 |
+
|
192 |
+
#: inc/class-wp-list-table.php:551
|
193 |
+
msgid "Go to the first page"
|
194 |
+
msgstr ""
|
195 |
+
|
196 |
+
#: inc/class-wp-list-table.php:558
|
197 |
+
msgid "Go to the previous page"
|
198 |
+
msgstr ""
|
199 |
+
|
200 |
+
#: inc/class-wp-list-table.php:567
|
201 |
+
msgid "Current page"
|
202 |
+
msgstr ""
|
203 |
+
|
204 |
+
#: inc/class-wp-list-table.php:577
|
205 |
+
msgid "Go to the next page"
|
206 |
+
msgstr ""
|
207 |
+
|
208 |
+
#: inc/class-wp-list-table.php:584
|
209 |
+
msgid "Go to the last page"
|
210 |
+
msgstr ""
|
211 |
+
|
212 |
+
#: inc/class-wp-list-table.php:720
|
213 |
+
msgid "Select All"
|
214 |
+
msgstr ""
|
215 |
+
|
216 |
+
#: inc/redux/WPML_Redux_Framework_config.php:194
|
217 |
+
msgid "Customize “%s”"
|
218 |
+
msgstr ""
|
219 |
+
|
220 |
+
#: inc/redux/WPML_Redux_Framework_config.php:203
|
221 |
+
#: inc/redux/WPML_Redux_Framework_config.php:207
|
222 |
+
msgid "Current theme preview"
|
223 |
+
msgstr ""
|
224 |
+
|
225 |
+
#: inc/redux/WPML_Redux_Framework_config.php:214
|
226 |
+
msgid "By %s"
|
227 |
+
msgstr ""
|
228 |
+
|
229 |
+
#: inc/redux/WPML_Redux_Framework_config.php:215
|
230 |
+
msgid "Version %s"
|
231 |
+
msgstr ""
|
232 |
+
|
233 |
+
#: inc/redux/WPML_Redux_Framework_config.php:216
|
234 |
+
msgid "Tags"
|
235 |
+
msgstr ""
|
236 |
+
|
237 |
+
#: inc/redux/WPML_Redux_Framework_config.php:221
|
238 |
+
msgid "This <a href=\"%1$s\">child theme</a> requires its parent theme, %2$s."
|
239 |
+
msgstr ""
|
240 |
+
|
241 |
+
#: inc/redux/WPML_Redux_Framework_config.php:221
|
242 |
+
msgid "http://codex.wordpress.org/Child_Themes"
|
243 |
+
msgstr ""
|
244 |
+
|
245 |
+
#: inc/redux/WPML_Redux_Framework_config.php:244
|
246 |
+
msgid "General Settings"
|
247 |
+
msgstr ""
|
248 |
+
|
249 |
+
#: inc/redux/WPML_Redux_Framework_config.php:253
|
250 |
+
msgid "Cleanup"
|
251 |
+
msgstr "Aufräumen"
|
252 |
+
|
253 |
+
#: inc/redux/WPML_Redux_Framework_config.php:254
|
254 |
+
msgid "Delete all data on deactivation? (emails and settings)?"
|
255 |
+
msgstr "Alle Daten bei Deaktivierung löschen? (E-Mails und Einstellungen)"
|
256 |
+
|
257 |
+
#: inc/redux/WPML_Redux_Framework_config.php:264
|
258 |
+
msgid "Can See Submission data"
|
259 |
+
msgstr "Daten sichtbar für"
|
260 |
+
|
261 |
+
#: inc/redux/WPML_Redux_Framework_config.php:265
|
262 |
+
msgid "Select the minimum role."
|
263 |
+
msgstr "Wähle die Mindestberechtigung"
|
264 |
+
|
265 |
+
#: inc/redux/WPML_Redux_Framework_config.php:270
|
266 |
+
msgid "WordPress Date Time Format"
|
267 |
+
msgstr "WordPress Zeitstempel Format"
|
268 |
+
|
269 |
+
#: inc/redux/WPML_Redux_Framework_config.php:271
|
270 |
+
msgid "Use format from WordPress settings (%s)"
|
271 |
+
msgstr "Benutze das WordPress Datumsformat aus den Einstellungen (%s)"
|
272 |
+
|
273 |
+
#: inc/redux/WPML_Redux_Framework_config.php:273
|
274 |
+
#: inc/redux/WPML_Redux_Framework_config.php:298
|
275 |
+
#: inc/redux/WPML_Redux_Framework_config.php:314
|
276 |
+
#: inc/redux/WPML_Redux_Framework_config.php:336
|
277 |
+
msgid "Enabled"
|
278 |
+
msgstr "Ein"
|
279 |
+
|
280 |
+
#: inc/redux/WPML_Redux_Framework_config.php:274
|
281 |
+
#: inc/redux/WPML_Redux_Framework_config.php:299
|
282 |
+
#: inc/redux/WPML_Redux_Framework_config.php:315
|
283 |
+
#: inc/redux/WPML_Redux_Framework_config.php:337
|
284 |
+
msgid "Disabled"
|
285 |
+
msgstr "Aus"
|
286 |
+
|
287 |
+
#: inc/redux/WPML_Redux_Framework_config.php:285
|
288 |
+
msgid "Default Format for Message"
|
289 |
+
msgstr "Standardformat für Nachrichten"
|
290 |
+
|
291 |
+
#: inc/redux/WPML_Redux_Framework_config.php:286
|
292 |
+
msgid "Select your preferred display format."
|
293 |
+
msgstr "Bevorzugtes Standardformat"
|
294 |
+
|
295 |
+
#: inc/redux/WPML_Redux_Framework_config.php:291
|
296 |
+
msgid "Display Host"
|
297 |
+
msgstr "Zeige Host"
|
298 |
+
|
299 |
+
#: inc/redux/WPML_Redux_Framework_config.php:292
|
300 |
+
msgid "Display host column in list."
|
301 |
+
msgstr "Zeige Host Spalte in Liste"
|
302 |
+
|
303 |
+
#: inc/redux/WPML_Redux_Framework_config.php:304
|
304 |
+
msgid "Log Rotation"
|
305 |
+
msgstr ""
|
306 |
+
|
307 |
+
#: inc/redux/WPML_Redux_Framework_config.php:305
|
308 |
+
msgid "Save space by deleting logs regularly."
|
309 |
+
msgstr "Platz sparen durch regelmäßiges Löschen des Logs."
|
310 |
+
|
311 |
+
#: inc/redux/WPML_Redux_Framework_config.php:311
|
312 |
+
msgid "Cleanup by Amount"
|
313 |
+
msgstr "Löschen nach Anzahl"
|
314 |
+
|
315 |
+
#: inc/redux/WPML_Redux_Framework_config.php:312
|
316 |
+
#: inc/redux/WPML_Redux_Framework_config.php:334
|
317 |
+
msgid "Setup a automated cleanup routine!"
|
318 |
+
msgstr "Erstelle eine automatische Aufräumroutine!"
|
319 |
+
|
320 |
+
#: inc/redux/WPML_Redux_Framework_config.php:321
|
321 |
+
msgid "Amount"
|
322 |
+
msgstr "Anzahl"
|
323 |
+
|
324 |
+
#: inc/redux/WPML_Redux_Framework_config.php:322
|
325 |
+
#: inc/redux/WPML_Redux_Framework_config.php:344
|
326 |
+
msgid "When should mails are deleted?"
|
327 |
+
msgstr "Wann sollen Mails gelöscht werden?"
|
328 |
+
|
329 |
+
#: inc/redux/WPML_Redux_Framework_config.php:323
|
330 |
+
msgid "Cleanup when the stored mails exceed..."
|
331 |
+
msgstr "Lösche wenn die Mails den Betrag übersteigen..."
|
332 |
+
|
333 |
+
#: inc/redux/WPML_Redux_Framework_config.php:333
|
334 |
+
msgid "Cleanup by Time"
|
335 |
+
msgstr "Löschen nach Zeit"
|
336 |
+
|
337 |
+
#: inc/redux/WPML_Redux_Framework_config.php:345
|
338 |
+
msgid "Delete mails older than days..."
|
339 |
+
msgstr "Lösche Mails älter als ... Tage"
|
340 |
+
|
341 |
+
#: inc/redux/WPML_Redux_Framework_config.php:510
|
342 |
+
msgid "Documentation"
|
343 |
+
msgstr "Dokumentation"
|
344 |
+
|
345 |
+
#: inc/redux/WPML_Redux_Framework_config.php:516
|
346 |
+
msgid "Support"
|
347 |
+
msgstr "Hilfe"
|
348 |
+
|
349 |
+
#: inc/redux/WPML_Redux_Framework_config.php:522
|
350 |
+
msgid "Extensions"
|
351 |
+
msgstr "Erweiterungen"
|
352 |
+
|
353 |
+
#: wp-mail-logging.php:48
|
354 |
+
msgid ""
|
355 |
+
"Error: plugin \"WP Mail Logging\" requires a newer version of PHP to be "
|
356 |
+
"running."
|
357 |
+
msgstr ""
|
358 |
+
"Fehler: Das Plugin \"WP Mail Logging\" benötigt eine neuere PHP Version."
|
359 |
+
|
360 |
+
#: wp-mail-logging.php:49
|
361 |
+
msgid "Minimal version of PHP required: "
|
362 |
+
msgstr "Mindestanforderung PHP Version:"
|
363 |
+
|
364 |
+
#: wp-mail-logging.php:50
|
365 |
+
msgid "Your server's PHP version: "
|
366 |
+
msgstr "Die PHP Version des Servers:"
|
367 |
+
|
368 |
+
#. Description of the plugin/theme
|
369 |
+
msgid "Logs each email sent by WordPress."
|
370 |
+
msgstr ""
|
371 |
+
|
372 |
+
#: inc/class-wp-list-table.php:573
|
373 |
+
msgctxt "paging"
|
374 |
+
msgid "%1$s of %2$s"
|
375 |
+
msgstr "%1$s von %2$s"
|
languages/wp-mail-logging-zh_CN.mo
CHANGED
Binary file
|
languages/wp-mail-logging-zh_CN.po
CHANGED
@@ -1,371 +1,371 @@
|
|
1 |
-
# Copyright (C) 2017 Christian Zöller
|
2 |
-
# This file is distributed under the GPLv3.
|
3 |
-
msgid ""
|
4 |
-
msgstr ""
|
5 |
-
"Project-Id-Version: WP Mail Logging 1.8.0\n"
|
6 |
-
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-mail-logging\n"
|
7 |
-
"POT-Creation-Date: 2017-02-12 02:34+0800\n"
|
8 |
-
"MIME-Version: 1.0\n"
|
9 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
-
"Content-Transfer-Encoding: 8bit\n"
|
11 |
-
"PO-Revision-Date:
|
12 |
-
"Language-Team: \n"
|
13 |
-
"X-Generator: Poedit
|
14 |
-
"Plural-Forms: nplurals=1; plural=0;\n"
|
15 |
-
"Language: zh_CN\n"
|
16 |
-
"Last-Translator: \n"
|
17 |
-
|
18 |
-
#: WPML_Email_Log_List.php:59
|
19 |
-
msgid "No email found."
|
20 |
-
msgstr "未找到电子邮件。"
|
21 |
-
|
22 |
-
#: WPML_Email_Log_List.php:71
|
23 |
-
msgid "ID"
|
24 |
-
msgstr "ID"
|
25 |
-
|
26 |
-
#: WPML_Email_Log_List.php:72 inc/redux/WPML_Redux_Framework_config.php:343
|
27 |
-
msgid "Time"
|
28 |
-
msgstr "时间"
|
29 |
-
|
30 |
-
#: WPML_Email_Log_List.php:73
|
31 |
-
msgid "Receiver"
|
32 |
-
msgstr "收件人"
|
33 |
-
|
34 |
-
#: WPML_Email_Log_List.php:74
|
35 |
-
msgid "Subject"
|
36 |
-
msgstr "主题"
|
37 |
-
|
38 |
-
#: WPML_Email_Log_List.php:75 WPML_OptionsManager.php:497
|
39 |
-
msgid "Message"
|
40 |
-
msgstr "消息"
|
41 |
-
|
42 |
-
#: WPML_Email_Log_List.php:76
|
43 |
-
msgid "Headers"
|
44 |
-
msgstr "邮件头"
|
45 |
-
|
46 |
-
#: WPML_Email_Log_List.php:77
|
47 |
-
msgid "Attachments"
|
48 |
-
msgstr "附件"
|
49 |
-
|
50 |
-
#: WPML_Email_Log_List.php:78
|
51 |
-
msgid "Error"
|
52 |
-
msgstr "错误"
|
53 |
-
|
54 |
-
#: WPML_Email_Log_List.php:79
|
55 |
-
msgid "Plugin Version"
|
56 |
-
msgstr "插件版本"
|
57 |
-
|
58 |
-
#: WPML_Email_Log_List.php:90
|
59 |
-
msgid "Host"
|
60 |
-
msgstr "主机名"
|
61 |
-
|
62 |
-
#: WPML_Email_Log_List.php:267 WPML_Email_Log_List.php:301
|
63 |
-
msgid "Attachment %s is not present"
|
64 |
-
msgstr "附件 %s 不存在"
|
65 |
-
|
66 |
-
#: WPML_Email_Log_List.php:495
|
67 |
-
msgid "Fallback to raw format because html is not convertible to json."
|
68 |
-
msgstr "回退到原始格式,因为 html 不是转换为 json。"
|
69 |
-
|
70 |
-
#: WPML_LifeCycle.php:205
|
71 |
-
msgid "Settings"
|
72 |
-
msgstr "设置"
|
73 |
-
|
74 |
-
#: WPML_OptionsManager.php:321 WPML_OptionsManager.php:322
|
75 |
-
msgid "WP Mail Log"
|
76 |
-
msgstr "WP Mail Log"
|
77 |
-
|
78 |
-
#: WPML_OptionsManager.php:333 WPML_OptionsManager.php:334
|
79 |
-
#: WPML_OptionsManager.php:345
|
80 |
-
msgid "About"
|
81 |
-
msgstr "关于"
|
82 |
-
|
83 |
-
#: WPML_OptionsManager.php:422
|
84 |
-
msgid "About Plugin"
|
85 |
-
msgstr "关于插件"
|
86 |
-
|
87 |
-
#: WPML_OptionsManager.php:431
|
88 |
-
msgid "More information"
|
89 |
-
msgstr "更多信息"
|
90 |
-
|
91 |
-
#: WPML_OptionsManager.php:432
|
92 |
-
msgid "Plugin Homepage/support"
|
93 |
-
msgstr "插件主页/支持"
|
94 |
-
|
95 |
-
#: WPML_OptionsManager.php:433
|
96 |
-
msgid "Plugin author's blog"
|
97 |
-
msgstr "插件作者的博客"
|
98 |
-
|
99 |
-
#: WPML_OptionsManager.php:440
|
100 |
-
msgid "Entries per page"
|
101 |
-
msgstr "每页的项目数:"
|
102 |
-
|
103 |
-
#: WPML_OptionsManager.php:462
|
104 |
-
msgid "You do not have sufficient permissions to access this page."
|
105 |
-
msgstr "您没有足够的权限来访问该页面。"
|
106 |
-
|
107 |
-
#: WPML_OptionsManager.php:471
|
108 |
-
msgid "Log"
|
109 |
-
msgstr "日志"
|
110 |
-
|
111 |
-
#: WPML_OptionsManager.php:515
|
112 |
-
msgid "Close"
|
113 |
-
msgstr "关闭"
|
114 |
-
|
115 |
-
#: WPML_OptionsManager.php:529
|
116 |
-
msgid "Search"
|
117 |
-
msgstr "搜索"
|
118 |
-
|
119 |
-
#: WPML_OptionsManager.php:554
|
120 |
-
msgid "true"
|
121 |
-
msgstr "true"
|
122 |
-
|
123 |
-
#: WPML_OptionsManager.php:556
|
124 |
-
msgid "false"
|
125 |
-
msgstr "false"
|
126 |
-
|
127 |
-
#: WPML_OptionsManager.php:559
|
128 |
-
msgid "Administrator"
|
129 |
-
msgstr "管理员"
|
130 |
-
|
131 |
-
#: WPML_OptionsManager.php:561
|
132 |
-
msgid "Editor"
|
133 |
-
msgstr "编辑"
|
134 |
-
|
135 |
-
#: WPML_OptionsManager.php:563
|
136 |
-
msgid "Author"
|
137 |
-
msgstr "作者"
|
138 |
-
|
139 |
-
#: WPML_OptionsManager.php:565
|
140 |
-
msgid "Contributor"
|
141 |
-
msgstr "贡献者"
|
142 |
-
|
143 |
-
#: WPML_OptionsManager.php:567
|
144 |
-
msgid "Subscriber"
|
145 |
-
msgstr "订阅者"
|
146 |
-
|
147 |
-
#: WPML_OptionsManager.php:569
|
148 |
-
msgid "Anyone"
|
149 |
-
msgstr "任何人"
|
150 |
-
|
151 |
-
#: inc/class-wp-list-table.php:191
|
152 |
-
msgid "No items found."
|
153 |
-
msgstr "没有找到项目。"
|
154 |
-
|
155 |
-
#: inc/class-wp-list-table.php:315
|
156 |
-
msgid "Bulk Actions"
|
157 |
-
msgstr "批量操作"
|
158 |
-
|
159 |
-
#: inc/class-wp-list-table.php:325
|
160 |
-
msgid "Apply"
|
161 |
-
msgstr "应用"
|
162 |
-
|
163 |
-
#: inc/class-wp-list-table.php:409
|
164 |
-
msgid "Show all dates"
|
165 |
-
msgstr "显示所有日期"
|
166 |
-
|
167 |
-
#. translators: 1: month name, 2: 4-digit year
|
168 |
-
#: inc/class-wp-list-table.php:422
|
169 |
-
msgid "%1$s %2$d"
|
170 |
-
msgstr "%1$s %2$d"
|
171 |
-
|
172 |
-
#: inc/class-wp-list-table.php:438
|
173 |
-
msgid "List View"
|
174 |
-
msgstr "列表视图"
|
175 |
-
|
176 |
-
#: inc/class-wp-list-table.php:439
|
177 |
-
msgid "Excerpt View"
|
178 |
-
msgstr "摘要"
|
179 |
-
|
180 |
-
#: inc/class-wp-list-table.php:465
|
181 |
-
msgid "%s pending"
|
182 |
-
msgstr "%s 待处理"
|
183 |
-
|
184 |
-
#: inc/class-wp-list-table.php:533 inc/class-wp-list-table.php:948
|
185 |
-
msgid "1 item"
|
186 |
-
msgid_plural "%s items"
|
187 |
-
msgstr[0] "1 项"
|
188 |
-
|
189 |
-
#: inc/class-wp-list-table.php:551
|
190 |
-
msgid "Go to the first page"
|
191 |
-
msgstr "转到第一页"
|
192 |
-
|
193 |
-
#: inc/class-wp-list-table.php:558
|
194 |
-
msgid "Go to the previous page"
|
195 |
-
msgstr "转到前一页"
|
196 |
-
|
197 |
-
#: inc/class-wp-list-table.php:567
|
198 |
-
msgid "Current page"
|
199 |
-
msgstr "当前页面"
|
200 |
-
|
201 |
-
#: inc/class-wp-list-table.php:577
|
202 |
-
msgid "Go to the next page"
|
203 |
-
msgstr "转到下一页"
|
204 |
-
|
205 |
-
#: inc/class-wp-list-table.php:584
|
206 |
-
msgid "Go to the last page"
|
207 |
-
msgstr "转到最后一页"
|
208 |
-
|
209 |
-
#: inc/class-wp-list-table.php:720
|
210 |
-
msgid "Select All"
|
211 |
-
msgstr "全选"
|
212 |
-
|
213 |
-
#: inc/redux/WPML_Redux_Framework_config.php:194
|
214 |
-
msgid "Customize “%s”"
|
215 |
-
msgstr "自定义 “%s”"
|
216 |
-
|
217 |
-
#: inc/redux/WPML_Redux_Framework_config.php:203
|
218 |
-
#: inc/redux/WPML_Redux_Framework_config.php:207
|
219 |
-
msgid "Current theme preview"
|
220 |
-
msgstr "预览当前主题"
|
221 |
-
|
222 |
-
#: inc/redux/WPML_Redux_Framework_config.php:214
|
223 |
-
msgid "By %s"
|
224 |
-
msgstr "由 %s"
|
225 |
-
|
226 |
-
#: inc/redux/WPML_Redux_Framework_config.php:215
|
227 |
-
msgid "Version %s"
|
228 |
-
msgstr "版本 %s"
|
229 |
-
|
230 |
-
#: inc/redux/WPML_Redux_Framework_config.php:216
|
231 |
-
msgid "Tags"
|
232 |
-
msgstr "标签"
|
233 |
-
|
234 |
-
#: inc/redux/WPML_Redux_Framework_config.php:221
|
235 |
-
msgid "This <a href=\"%1$s\">child theme</a> requires its parent theme, %2$s."
|
236 |
-
msgstr "此<a href=\"%1$s\">子主题</a>需要其父主题 %2$s。"
|
237 |
-
|
238 |
-
#: inc/redux/WPML_Redux_Framework_config.php:221
|
239 |
-
msgid "http://codex.wordpress.org/Child_Themes"
|
240 |
-
msgstr "http://codex.wordpress.org/Child_Themes"
|
241 |
-
|
242 |
-
#: inc/redux/WPML_Redux_Framework_config.php:244
|
243 |
-
msgid "General Settings"
|
244 |
-
msgstr "常规设置"
|
245 |
-
|
246 |
-
#: inc/redux/WPML_Redux_Framework_config.php:253
|
247 |
-
msgid "Cleanup"
|
248 |
-
msgstr "清理"
|
249 |
-
|
250 |
-
#: inc/redux/WPML_Redux_Framework_config.php:254
|
251 |
-
msgid "Delete all data on deactivation? (emails and settings)?"
|
252 |
-
msgstr "删除所有停用的数据吗?(电子邮件和设置)?"
|
253 |
-
|
254 |
-
#: inc/redux/WPML_Redux_Framework_config.php:264
|
255 |
-
msgid "Can See Submission data"
|
256 |
-
msgstr "可以看到提交数据"
|
257 |
-
|
258 |
-
#: inc/redux/WPML_Redux_Framework_config.php:265
|
259 |
-
msgid "Select the minimum role."
|
260 |
-
msgstr "选择的最小的角色。"
|
261 |
-
|
262 |
-
#: inc/redux/WPML_Redux_Framework_config.php:270
|
263 |
-
msgid "WordPress Date Time Format"
|
264 |
-
msgstr "WordPress 的日期时间格式"
|
265 |
-
|
266 |
-
#: inc/redux/WPML_Redux_Framework_config.php:271
|
267 |
-
msgid "Use format from WordPress settings (%s)"
|
268 |
-
msgstr "从 WordPress 使用格式设置 (%s)"
|
269 |
-
|
270 |
-
#: inc/redux/WPML_Redux_Framework_config.php:273
|
271 |
-
#: inc/redux/WPML_Redux_Framework_config.php:298
|
272 |
-
#: inc/redux/WPML_Redux_Framework_config.php:314
|
273 |
-
#: inc/redux/WPML_Redux_Framework_config.php:336
|
274 |
-
msgid "Enabled"
|
275 |
-
msgstr "启用"
|
276 |
-
|
277 |
-
#: inc/redux/WPML_Redux_Framework_config.php:274
|
278 |
-
#: inc/redux/WPML_Redux_Framework_config.php:299
|
279 |
-
#: inc/redux/WPML_Redux_Framework_config.php:315
|
280 |
-
#: inc/redux/WPML_Redux_Framework_config.php:337
|
281 |
-
msgid "Disabled"
|
282 |
-
msgstr "禁用"
|
283 |
-
|
284 |
-
#: inc/redux/WPML_Redux_Framework_config.php:285
|
285 |
-
msgid "Default Format for Message"
|
286 |
-
msgstr "消息的默认格式"
|
287 |
-
|
288 |
-
#: inc/redux/WPML_Redux_Framework_config.php:286
|
289 |
-
msgid "Select your preferred display format."
|
290 |
-
msgstr "选择您喜欢的显示格式。"
|
291 |
-
|
292 |
-
#: inc/redux/WPML_Redux_Framework_config.php:291
|
293 |
-
msgid "Display Host"
|
294 |
-
msgstr "显示主机"
|
295 |
-
|
296 |
-
#: inc/redux/WPML_Redux_Framework_config.php:292
|
297 |
-
msgid "Display host column in list."
|
298 |
-
msgstr "在列表中显示主机。"
|
299 |
-
|
300 |
-
#: inc/redux/WPML_Redux_Framework_config.php:304
|
301 |
-
msgid "Log Rotation"
|
302 |
-
msgstr "日志轮转"
|
303 |
-
|
304 |
-
#: inc/redux/WPML_Redux_Framework_config.php:305
|
305 |
-
msgid "Save space by deleting logs regularly."
|
306 |
-
msgstr "定期删除日志以节省空间。"
|
307 |
-
|
308 |
-
#: inc/redux/WPML_Redux_Framework_config.php:311
|
309 |
-
msgid "Cleanup by Amount"
|
310 |
-
msgstr "按数量清理"
|
311 |
-
|
312 |
-
#: inc/redux/WPML_Redux_Framework_config.php:312
|
313 |
-
#: inc/redux/WPML_Redux_Framework_config.php:334
|
314 |
-
msgid "Setup a automated cleanup routine!"
|
315 |
-
msgstr "设置自动清理"
|
316 |
-
|
317 |
-
#: inc/redux/WPML_Redux_Framework_config.php:321
|
318 |
-
msgid "Amount"
|
319 |
-
msgstr "数量"
|
320 |
-
|
321 |
-
#: inc/redux/WPML_Redux_Framework_config.php:322
|
322 |
-
#: inc/redux/WPML_Redux_Framework_config.php:344
|
323 |
-
msgid "When should mails are deleted?"
|
324 |
-
msgstr "邮件何时被删除?"
|
325 |
-
|
326 |
-
#: inc/redux/WPML_Redux_Framework_config.php:323
|
327 |
-
msgid "Cleanup when the stored mails exceed..."
|
328 |
-
msgstr "当存储的邮件超过上述数量时开始清理邮件..."
|
329 |
-
|
330 |
-
#: inc/redux/WPML_Redux_Framework_config.php:333
|
331 |
-
msgid "Cleanup by Time"
|
332 |
-
msgstr "按时间清理"
|
333 |
-
|
334 |
-
#: inc/redux/WPML_Redux_Framework_config.php:345
|
335 |
-
msgid "Delete mails older than days..."
|
336 |
-
msgstr "删除超过上述天数的邮件..."
|
337 |
-
|
338 |
-
#: inc/redux/WPML_Redux_Framework_config.php:510
|
339 |
-
msgid "Documentation"
|
340 |
-
msgstr "文档"
|
341 |
-
|
342 |
-
#: inc/redux/WPML_Redux_Framework_config.php:516
|
343 |
-
msgid "Support"
|
344 |
-
msgstr "支持"
|
345 |
-
|
346 |
-
#: inc/redux/WPML_Redux_Framework_config.php:522
|
347 |
-
msgid "Extensions"
|
348 |
-
msgstr "扩展"
|
349 |
-
|
350 |
-
#: wp-mail-logging.php:48
|
351 |
-
msgid ""
|
352 |
-
"Error: plugin \"WP Mail Logging\" requires a newer version of PHP to be "
|
353 |
-
"running."
|
354 |
-
msgstr "错误:插件“WP Mail Logging”需要运行较新版本的PHP。"
|
355 |
-
|
356 |
-
#: wp-mail-logging.php:49
|
357 |
-
msgid "Minimal version of PHP required: "
|
358 |
-
msgstr "PHP的最低版本要求:"
|
359 |
-
|
360 |
-
#: wp-mail-logging.php:50
|
361 |
-
msgid "Your server's PHP version: "
|
362 |
-
msgstr "您的服务器的PHP版本:"
|
363 |
-
|
364 |
-
#. Description of the plugin/theme
|
365 |
-
msgid "Logs each email sent by WordPress."
|
366 |
-
msgstr "记录WordPress发送的每封电子邮件。"
|
367 |
-
|
368 |
-
#: inc/class-wp-list-table.php:573
|
369 |
-
msgctxt "paging"
|
370 |
-
msgid "%1$s of %2$s"
|
371 |
-
msgstr "%1$s of %2$s"
|
1 |
+
# Copyright (C) 2017 Christian Zöller
|
2 |
+
# This file is distributed under the GPLv3.
|
3 |
+
msgid ""
|
4 |
+
msgstr ""
|
5 |
+
"Project-Id-Version: WP Mail Logging 1.8.0\n"
|
6 |
+
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-mail-logging\n"
|
7 |
+
"POT-Creation-Date: 2017-02-12 02:34+0800\n"
|
8 |
+
"MIME-Version: 1.0\n"
|
9 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
+
"Content-Transfer-Encoding: 8bit\n"
|
11 |
+
"PO-Revision-Date: 2018-06-22 17:31+0200\n"
|
12 |
+
"Language-Team: \n"
|
13 |
+
"X-Generator: Poedit 2.0.8\n"
|
14 |
+
"Plural-Forms: nplurals=1; plural=0;\n"
|
15 |
+
"Language: zh_CN\n"
|
16 |
+
"Last-Translator: \n"
|
17 |
+
|
18 |
+
#: WPML_Email_Log_List.php:59
|
19 |
+
msgid "No email found."
|
20 |
+
msgstr "未找到电子邮件。"
|
21 |
+
|
22 |
+
#: WPML_Email_Log_List.php:71
|
23 |
+
msgid "ID"
|
24 |
+
msgstr "ID"
|
25 |
+
|
26 |
+
#: WPML_Email_Log_List.php:72 inc/redux/WPML_Redux_Framework_config.php:343
|
27 |
+
msgid "Time"
|
28 |
+
msgstr "时间"
|
29 |
+
|
30 |
+
#: WPML_Email_Log_List.php:73
|
31 |
+
msgid "Receiver"
|
32 |
+
msgstr "收件人"
|
33 |
+
|
34 |
+
#: WPML_Email_Log_List.php:74
|
35 |
+
msgid "Subject"
|
36 |
+
msgstr "主题"
|
37 |
+
|
38 |
+
#: WPML_Email_Log_List.php:75 WPML_OptionsManager.php:497
|
39 |
+
msgid "Message"
|
40 |
+
msgstr "消息"
|
41 |
+
|
42 |
+
#: WPML_Email_Log_List.php:76
|
43 |
+
msgid "Headers"
|
44 |
+
msgstr "邮件头"
|
45 |
+
|
46 |
+
#: WPML_Email_Log_List.php:77
|
47 |
+
msgid "Attachments"
|
48 |
+
msgstr "附件"
|
49 |
+
|
50 |
+
#: WPML_Email_Log_List.php:78
|
51 |
+
msgid "Error"
|
52 |
+
msgstr "错误"
|
53 |
+
|
54 |
+
#: WPML_Email_Log_List.php:79
|
55 |
+
msgid "Plugin Version"
|
56 |
+
msgstr "插件版本"
|
57 |
+
|
58 |
+
#: WPML_Email_Log_List.php:90
|
59 |
+
msgid "Host"
|
60 |
+
msgstr "主机名"
|
61 |
+
|
62 |
+
#: WPML_Email_Log_List.php:267 WPML_Email_Log_List.php:301
|
63 |
+
msgid "Attachment %s is not present"
|
64 |
+
msgstr "附件 %s 不存在"
|
65 |
+
|
66 |
+
#: WPML_Email_Log_List.php:495
|
67 |
+
msgid "Fallback to raw format because html is not convertible to json."
|
68 |
+
msgstr "回退到原始格式,因为 html 不是转换为 json。"
|
69 |
+
|
70 |
+
#: WPML_LifeCycle.php:205
|
71 |
+
msgid "Settings"
|
72 |
+
msgstr "设置"
|
73 |
+
|
74 |
+
#: WPML_OptionsManager.php:321 WPML_OptionsManager.php:322
|
75 |
+
msgid "WP Mail Log"
|
76 |
+
msgstr "WP Mail Log"
|
77 |
+
|
78 |
+
#: WPML_OptionsManager.php:333 WPML_OptionsManager.php:334
|
79 |
+
#: WPML_OptionsManager.php:345
|
80 |
+
msgid "About"
|
81 |
+
msgstr "关于"
|
82 |
+
|
83 |
+
#: WPML_OptionsManager.php:422
|
84 |
+
msgid "About Plugin"
|
85 |
+
msgstr "关于插件"
|
86 |
+
|
87 |
+
#: WPML_OptionsManager.php:431
|
88 |
+
msgid "More information"
|
89 |
+
msgstr "更多信息"
|
90 |
+
|
91 |
+
#: WPML_OptionsManager.php:432
|
92 |
+
msgid "Plugin Homepage/support"
|
93 |
+
msgstr "插件主页/支持"
|
94 |
+
|
95 |
+
#: WPML_OptionsManager.php:433
|
96 |
+
msgid "Plugin author's blog"
|
97 |
+
msgstr "插件作者的博客"
|
98 |
+
|
99 |
+
#: WPML_OptionsManager.php:440
|
100 |
+
msgid "Entries per page"
|
101 |
+
msgstr "每页的项目数:"
|
102 |
+
|
103 |
+
#: WPML_OptionsManager.php:462
|
104 |
+
msgid "You do not have sufficient permissions to access this page."
|
105 |
+
msgstr "您没有足够的权限来访问该页面。"
|
106 |
+
|
107 |
+
#: WPML_OptionsManager.php:471
|
108 |
+
msgid "Log"
|
109 |
+
msgstr "日志"
|
110 |
+
|
111 |
+
#: WPML_OptionsManager.php:515
|
112 |
+
msgid "Close"
|
113 |
+
msgstr "关闭"
|
114 |
+
|
115 |
+
#: WPML_OptionsManager.php:529
|
116 |
+
msgid "Search"
|
117 |
+
msgstr "搜索"
|
118 |
+
|
119 |
+
#: WPML_OptionsManager.php:554
|
120 |
+
msgid "true"
|
121 |
+
msgstr "true"
|
122 |
+
|
123 |
+
#: WPML_OptionsManager.php:556
|
124 |
+
msgid "false"
|
125 |
+
msgstr "false"
|
126 |
+
|
127 |
+
#: WPML_OptionsManager.php:559
|
128 |
+
msgid "Administrator"
|
129 |
+
msgstr "管理员"
|
130 |
+
|
131 |
+
#: WPML_OptionsManager.php:561
|
132 |
+
msgid "Editor"
|
133 |
+
msgstr "编辑"
|
134 |
+
|
135 |
+
#: WPML_OptionsManager.php:563
|
136 |
+
msgid "Author"
|
137 |
+
msgstr "作者"
|
138 |
+
|
139 |
+
#: WPML_OptionsManager.php:565
|
140 |
+
msgid "Contributor"
|
141 |
+
msgstr "贡献者"
|
142 |
+
|
143 |
+
#: WPML_OptionsManager.php:567
|
144 |
+
msgid "Subscriber"
|
145 |
+
msgstr "订阅者"
|
146 |
+
|
147 |
+
#: WPML_OptionsManager.php:569
|
148 |
+
msgid "Anyone"
|
149 |
+
msgstr "任何人"
|
150 |
+
|
151 |
+
#: inc/class-wp-list-table.php:191
|
152 |
+
msgid "No items found."
|
153 |
+
msgstr "没有找到项目。"
|
154 |
+
|
155 |
+
#: inc/class-wp-list-table.php:315
|
156 |
+
msgid "Bulk Actions"
|
157 |
+
msgstr "批量操作"
|
158 |
+
|
159 |
+
#: inc/class-wp-list-table.php:325
|
160 |
+
msgid "Apply"
|
161 |
+
msgstr "应用"
|
162 |
+
|
163 |
+
#: inc/class-wp-list-table.php:409
|
164 |
+
msgid "Show all dates"
|
165 |
+
msgstr "显示所有日期"
|
166 |
+
|
167 |
+
#. translators: 1: month name, 2: 4-digit year
|
168 |
+
#: inc/class-wp-list-table.php:422
|
169 |
+
msgid "%1$s %2$d"
|
170 |
+
msgstr "%1$s %2$d"
|
171 |
+
|
172 |
+
#: inc/class-wp-list-table.php:438
|
173 |
+
msgid "List View"
|
174 |
+
msgstr "列表视图"
|
175 |
+
|
176 |
+
#: inc/class-wp-list-table.php:439
|
177 |
+
msgid "Excerpt View"
|
178 |
+
msgstr "摘要"
|
179 |
+
|
180 |
+
#: inc/class-wp-list-table.php:465
|
181 |
+
msgid "%s pending"
|
182 |
+
msgstr "%s 待处理"
|
183 |
+
|
184 |
+
#: inc/class-wp-list-table.php:533 inc/class-wp-list-table.php:948
|
185 |
+
msgid "1 item"
|
186 |
+
msgid_plural "%s items"
|
187 |
+
msgstr[0] "1 项"
|
188 |
+
|
189 |
+
#: inc/class-wp-list-table.php:551
|
190 |
+
msgid "Go to the first page"
|
191 |
+
msgstr "转到第一页"
|
192 |
+
|
193 |
+
#: inc/class-wp-list-table.php:558
|
194 |
+
msgid "Go to the previous page"
|
195 |
+
msgstr "转到前一页"
|
196 |
+
|
197 |
+
#: inc/class-wp-list-table.php:567
|
198 |
+
msgid "Current page"
|
199 |
+
msgstr "当前页面"
|
200 |
+
|
201 |
+
#: inc/class-wp-list-table.php:577
|
202 |
+
msgid "Go to the next page"
|
203 |
+
msgstr "转到下一页"
|
204 |
+
|
205 |
+
#: inc/class-wp-list-table.php:584
|
206 |
+
msgid "Go to the last page"
|
207 |
+
msgstr "转到最后一页"
|
208 |
+
|
209 |
+
#: inc/class-wp-list-table.php:720
|
210 |
+
msgid "Select All"
|
211 |
+
msgstr "全选"
|
212 |
+
|
213 |
+
#: inc/redux/WPML_Redux_Framework_config.php:194
|
214 |
+
msgid "Customize “%s”"
|
215 |
+
msgstr "自定义 “%s”"
|
216 |
+
|
217 |
+
#: inc/redux/WPML_Redux_Framework_config.php:203
|
218 |
+
#: inc/redux/WPML_Redux_Framework_config.php:207
|
219 |
+
msgid "Current theme preview"
|
220 |
+
msgstr "预览当前主题"
|
221 |
+
|
222 |
+
#: inc/redux/WPML_Redux_Framework_config.php:214
|
223 |
+
msgid "By %s"
|
224 |
+
msgstr "由 %s"
|
225 |
+
|
226 |
+
#: inc/redux/WPML_Redux_Framework_config.php:215
|
227 |
+
msgid "Version %s"
|
228 |
+
msgstr "版本 %s"
|
229 |
+
|
230 |
+
#: inc/redux/WPML_Redux_Framework_config.php:216
|
231 |
+
msgid "Tags"
|
232 |
+
msgstr "标签"
|
233 |
+
|
234 |
+
#: inc/redux/WPML_Redux_Framework_config.php:221
|
235 |
+
msgid "This <a href=\"%1$s\">child theme</a> requires its parent theme, %2$s."
|
236 |
+
msgstr "此<a href=\"%1$s\">子主题</a>需要其父主题 %2$s。"
|
237 |
+
|
238 |
+
#: inc/redux/WPML_Redux_Framework_config.php:221
|
239 |
+
msgid "http://codex.wordpress.org/Child_Themes"
|
240 |
+
msgstr "http://codex.wordpress.org/Child_Themes"
|
241 |
+
|
242 |
+
#: inc/redux/WPML_Redux_Framework_config.php:244
|
243 |
+
msgid "General Settings"
|
244 |
+
msgstr "常规设置"
|
245 |
+
|
246 |
+
#: inc/redux/WPML_Redux_Framework_config.php:253
|
247 |
+
msgid "Cleanup"
|
248 |
+
msgstr "清理"
|
249 |
+
|
250 |
+
#: inc/redux/WPML_Redux_Framework_config.php:254
|
251 |
+
msgid "Delete all data on deactivation? (emails and settings)?"
|
252 |
+
msgstr "删除所有停用的数据吗?(电子邮件和设置)?"
|
253 |
+
|
254 |
+
#: inc/redux/WPML_Redux_Framework_config.php:264
|
255 |
+
msgid "Can See Submission data"
|
256 |
+
msgstr "可以看到提交数据"
|
257 |
+
|
258 |
+
#: inc/redux/WPML_Redux_Framework_config.php:265
|
259 |
+
msgid "Select the minimum role."
|
260 |
+
msgstr "选择的最小的角色。"
|
261 |
+
|
262 |
+
#: inc/redux/WPML_Redux_Framework_config.php:270
|
263 |
+
msgid "WordPress Date Time Format"
|
264 |
+
msgstr "WordPress 的日期时间格式"
|
265 |
+
|
266 |
+
#: inc/redux/WPML_Redux_Framework_config.php:271
|
267 |
+
msgid "Use format from WordPress settings (%s)"
|
268 |
+
msgstr "从 WordPress 使用格式设置 (%s)"
|
269 |
+
|
270 |
+
#: inc/redux/WPML_Redux_Framework_config.php:273
|
271 |
+
#: inc/redux/WPML_Redux_Framework_config.php:298
|
272 |
+
#: inc/redux/WPML_Redux_Framework_config.php:314
|
273 |
+
#: inc/redux/WPML_Redux_Framework_config.php:336
|
274 |
+
msgid "Enabled"
|
275 |
+
msgstr "启用"
|
276 |
+
|
277 |
+
#: inc/redux/WPML_Redux_Framework_config.php:274
|
278 |
+
#: inc/redux/WPML_Redux_Framework_config.php:299
|
279 |
+
#: inc/redux/WPML_Redux_Framework_config.php:315
|
280 |
+
#: inc/redux/WPML_Redux_Framework_config.php:337
|
281 |
+
msgid "Disabled"
|
282 |
+
msgstr "禁用"
|
283 |
+
|
284 |
+
#: inc/redux/WPML_Redux_Framework_config.php:285
|
285 |
+
msgid "Default Format for Message"
|
286 |
+
msgstr "消息的默认格式"
|
287 |
+
|
288 |
+
#: inc/redux/WPML_Redux_Framework_config.php:286
|
289 |
+
msgid "Select your preferred display format."
|
290 |
+
msgstr "选择您喜欢的显示格式。"
|
291 |
+
|
292 |
+
#: inc/redux/WPML_Redux_Framework_config.php:291
|
293 |
+
msgid "Display Host"
|
294 |
+
msgstr "显示主机"
|
295 |
+
|
296 |
+
#: inc/redux/WPML_Redux_Framework_config.php:292
|
297 |
+
msgid "Display host column in list."
|
298 |
+
msgstr "在列表中显示主机。"
|
299 |
+
|
300 |
+
#: inc/redux/WPML_Redux_Framework_config.php:304
|
301 |
+
msgid "Log Rotation"
|
302 |
+
msgstr "日志轮转"
|
303 |
+
|
304 |
+
#: inc/redux/WPML_Redux_Framework_config.php:305
|
305 |
+
msgid "Save space by deleting logs regularly."
|
306 |
+
msgstr "定期删除日志以节省空间。"
|
307 |
+
|
308 |
+
#: inc/redux/WPML_Redux_Framework_config.php:311
|
309 |
+
msgid "Cleanup by Amount"
|
310 |
+
msgstr "按数量清理"
|
311 |
+
|
312 |
+
#: inc/redux/WPML_Redux_Framework_config.php:312
|
313 |
+
#: inc/redux/WPML_Redux_Framework_config.php:334
|
314 |
+
msgid "Setup a automated cleanup routine!"
|
315 |
+
msgstr "设置自动清理"
|
316 |
+
|
317 |
+
#: inc/redux/WPML_Redux_Framework_config.php:321
|
318 |
+
msgid "Amount"
|
319 |
+
msgstr "数量"
|
320 |
+
|
321 |
+
#: inc/redux/WPML_Redux_Framework_config.php:322
|
322 |
+
#: inc/redux/WPML_Redux_Framework_config.php:344
|
323 |
+
msgid "When should mails are deleted?"
|
324 |
+
msgstr "邮件何时被删除?"
|
325 |
+
|
326 |
+
#: inc/redux/WPML_Redux_Framework_config.php:323
|
327 |
+
msgid "Cleanup when the stored mails exceed..."
|
328 |
+
msgstr "当存储的邮件超过上述数量时开始清理邮件..."
|
329 |
+
|
330 |
+
#: inc/redux/WPML_Redux_Framework_config.php:333
|
331 |
+
msgid "Cleanup by Time"
|
332 |
+
msgstr "按时间清理"
|
333 |
+
|
334 |
+
#: inc/redux/WPML_Redux_Framework_config.php:345
|
335 |
+
msgid "Delete mails older than days..."
|
336 |
+
msgstr "删除超过上述天数的邮件..."
|
337 |
+
|
338 |
+
#: inc/redux/WPML_Redux_Framework_config.php:510
|
339 |
+
msgid "Documentation"
|
340 |
+
msgstr "文档"
|
341 |
+
|
342 |
+
#: inc/redux/WPML_Redux_Framework_config.php:516
|
343 |
+
msgid "Support"
|
344 |
+
msgstr "支持"
|
345 |
+
|
346 |
+
#: inc/redux/WPML_Redux_Framework_config.php:522
|
347 |
+
msgid "Extensions"
|
348 |
+
msgstr "扩展"
|
349 |
+
|
350 |
+
#: wp-mail-logging.php:48
|
351 |
+
msgid ""
|
352 |
+
"Error: plugin \"WP Mail Logging\" requires a newer version of PHP to be "
|
353 |
+
"running."
|
354 |
+
msgstr "错误:插件“WP Mail Logging”需要运行较新版本的PHP。"
|
355 |
+
|
356 |
+
#: wp-mail-logging.php:49
|
357 |
+
msgid "Minimal version of PHP required: "
|
358 |
+
msgstr "PHP的最低版本要求:"
|
359 |
+
|
360 |
+
#: wp-mail-logging.php:50
|
361 |
+
msgid "Your server's PHP version: "
|
362 |
+
msgstr "您的服务器的PHP版本:"
|
363 |
+
|
364 |
+
#. Description of the plugin/theme
|
365 |
+
msgid "Logs each email sent by WordPress."
|
366 |
+
msgstr "记录WordPress发送的每封电子邮件。"
|
367 |
+
|
368 |
+
#: inc/class-wp-list-table.php:573
|
369 |
+
msgctxt "paging"
|
370 |
+
msgid "%1$s of %2$s"
|
371 |
+
msgstr "%1$s of %2$s"
|
languages/wp-mail-logging.pot
CHANGED
@@ -1,371 +1,330 @@
|
|
1 |
-
# Copyright (C)
|
2 |
-
# This file is distributed under the GPLv3.
|
3 |
-
msgid ""
|
4 |
-
msgstr ""
|
5 |
-
"Project-Id-Version: WP Mail Logging 1.8.
|
6 |
-
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-mail-logging\n"
|
7 |
-
"POT-Creation-Date:
|
8 |
-
"MIME-Version: 1.0\n"
|
9 |
-
"Content-Type: text/plain; charset=utf-8\n"
|
10 |
-
"Content-Transfer-Encoding: 8bit\n"
|
11 |
-
"PO-Revision-Date:
|
12 |
-
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
13 |
-
"Language-Team: LANGUAGE <LL@li.org>\n"
|
14 |
-
"X-Generator: grunt-wp-i18n 0.5.4\n"
|
15 |
-
"Language: en_GB\n"
|
16 |
-
|
17 |
-
#: WPML_Email_Log_List.php:
|
18 |
-
msgid "No email found."
|
19 |
-
msgstr ""
|
20 |
-
|
21 |
-
#: WPML_Email_Log_List.php:
|
22 |
-
msgid "ID"
|
23 |
-
msgstr ""
|
24 |
-
|
25 |
-
#: WPML_Email_Log_List.php:
|
26 |
-
msgid "Time"
|
27 |
-
msgstr ""
|
28 |
-
|
29 |
-
#: WPML_Email_Log_List.php:
|
30 |
-
msgid "Receiver"
|
31 |
-
msgstr ""
|
32 |
-
|
33 |
-
#: WPML_Email_Log_List.php:
|
34 |
-
msgid "Subject"
|
35 |
-
msgstr ""
|
36 |
-
|
37 |
-
#: WPML_Email_Log_List.php:
|
38 |
-
msgid "Message"
|
39 |
-
msgstr ""
|
40 |
-
|
41 |
-
#: WPML_Email_Log_List.php:
|
42 |
-
msgid "Headers"
|
43 |
-
msgstr ""
|
44 |
-
|
45 |
-
#: WPML_Email_Log_List.php:
|
46 |
-
msgid "Attachments"
|
47 |
-
msgstr ""
|
48 |
-
|
49 |
-
#: WPML_Email_Log_List.php:
|
50 |
-
msgid "Error"
|
51 |
-
msgstr ""
|
52 |
-
|
53 |
-
#: WPML_Email_Log_List.php:
|
54 |
-
msgid "Plugin Version"
|
55 |
-
msgstr ""
|
56 |
-
|
57 |
-
#: WPML_Email_Log_List.php:
|
58 |
-
msgid "Host"
|
59 |
-
msgstr ""
|
60 |
-
|
61 |
-
#: WPML_Email_Log_List.php:267 WPML_Email_Log_List.php:301
|
62 |
-
msgid "Attachment %s is not present"
|
63 |
-
msgstr ""
|
64 |
-
|
65 |
-
#: WPML_Email_Log_List.php:495
|
66 |
-
msgid "Fallback to raw format because html is not convertible to json."
|
67 |
-
msgstr ""
|
68 |
-
|
69 |
-
#: WPML_LifeCycle.php:205
|
70 |
-
msgid "Settings"
|
71 |
-
msgstr ""
|
72 |
-
|
73 |
-
#: WPML_OptionsManager.php:321 WPML_OptionsManager.php:322
|
74 |
-
msgid "WP Mail Log"
|
75 |
-
msgstr ""
|
76 |
-
|
77 |
-
#: WPML_OptionsManager.php:333 WPML_OptionsManager.php:334
|
78 |
-
#: WPML_OptionsManager.php:345
|
79 |
-
msgid "About"
|
80 |
-
msgstr ""
|
81 |
-
|
82 |
-
#: WPML_OptionsManager.php:422
|
83 |
-
msgid "About Plugin"
|
84 |
-
msgstr ""
|
85 |
-
|
86 |
-
#: WPML_OptionsManager.php:431
|
87 |
-
msgid "More information"
|
88 |
-
msgstr ""
|
89 |
-
|
90 |
-
#: WPML_OptionsManager.php:432
|
91 |
-
msgid "Plugin Homepage/support"
|
92 |
-
msgstr ""
|
93 |
-
|
94 |
-
#: WPML_OptionsManager.php:433
|
95 |
-
msgid "Plugin author's blog"
|
96 |
-
msgstr ""
|
97 |
-
|
98 |
-
#: WPML_OptionsManager.php:440
|
99 |
-
msgid "Entries per page"
|
100 |
-
msgstr ""
|
101 |
-
|
102 |
-
#: WPML_OptionsManager.php:462
|
103 |
-
msgid "You do not have sufficient permissions to access this page."
|
104 |
-
msgstr ""
|
105 |
-
|
106 |
-
#: WPML_OptionsManager.php:471
|
107 |
-
msgid "Log"
|
108 |
-
msgstr ""
|
109 |
-
|
110 |
-
#: WPML_OptionsManager.php:515
|
111 |
-
msgid "Close"
|
112 |
-
msgstr ""
|
113 |
-
|
114 |
-
#: WPML_OptionsManager.php:529
|
115 |
-
msgid "Search"
|
116 |
-
msgstr ""
|
117 |
-
|
118 |
-
#: WPML_OptionsManager.php:554
|
119 |
-
msgid "true"
|
120 |
-
msgstr ""
|
121 |
-
|
122 |
-
#: WPML_OptionsManager.php:556
|
123 |
-
msgid "false"
|
124 |
-
msgstr ""
|
125 |
-
|
126 |
-
#: WPML_OptionsManager.php:559
|
127 |
-
msgid "Administrator"
|
128 |
-
msgstr ""
|
129 |
-
|
130 |
-
#: WPML_OptionsManager.php:561
|
131 |
-
msgid "Editor"
|
132 |
-
msgstr ""
|
133 |
-
|
134 |
-
#: WPML_OptionsManager.php:563
|
135 |
-
msgid "Author"
|
136 |
-
msgstr ""
|
137 |
-
|
138 |
-
#: WPML_OptionsManager.php:565
|
139 |
-
msgid "Contributor"
|
140 |
-
msgstr ""
|
141 |
-
|
142 |
-
#: WPML_OptionsManager.php:567
|
143 |
-
msgid "Subscriber"
|
144 |
-
msgstr ""
|
145 |
-
|
146 |
-
#: WPML_OptionsManager.php:569
|
147 |
-
msgid "Anyone"
|
148 |
-
msgstr ""
|
149 |
-
|
150 |
-
#: inc/class-wp-list-table.php:191
|
151 |
-
msgid "No items found."
|
152 |
-
msgstr ""
|
153 |
-
|
154 |
-
#: inc/class-wp-list-table.php:315
|
155 |
-
msgid "Bulk Actions"
|
156 |
-
msgstr ""
|
157 |
-
|
158 |
-
#: inc/class-wp-list-table.php:325
|
159 |
-
msgid "Apply"
|
160 |
-
msgstr ""
|
161 |
-
|
162 |
-
#: inc/class-wp-list-table.php:409
|
163 |
-
msgid "Show all dates"
|
164 |
-
msgstr ""
|
165 |
-
|
166 |
-
#: inc/class-wp-list-table.php:422
|
167 |
-
#. translators: 1: month name, 2: 4-digit year
|
168 |
-
msgid "%1$s %2$d"
|
169 |
-
msgstr ""
|
170 |
-
|
171 |
-
#: inc/class-wp-list-table.php:438
|
172 |
-
msgid "List View"
|
173 |
-
msgstr ""
|
174 |
-
|
175 |
-
#: inc/class-wp-list-table.php:439
|
176 |
-
msgid "Excerpt View"
|
177 |
-
msgstr ""
|
178 |
-
|
179 |
-
#: inc/class-wp-list-table.php:465
|
180 |
-
msgid "%s pending"
|
181 |
-
msgstr ""
|
182 |
-
|
183 |
-
#: inc/class-wp-list-table.php:533 inc/class-wp-list-table.php:948
|
184 |
-
msgid "1 item"
|
185 |
-
msgid_plural "%s items"
|
186 |
-
msgstr[0] ""
|
187 |
-
msgstr[1] ""
|
188 |
-
|
189 |
-
#: inc/class-wp-list-table.php:551
|
190 |
-
msgid "Go to the first page"
|
191 |
-
msgstr ""
|
192 |
-
|
193 |
-
#: inc/class-wp-list-table.php:558
|
194 |
-
msgid "Go to the previous page"
|
195 |
-
msgstr ""
|
196 |
-
|
197 |
-
#: inc/class-wp-list-table.php:567
|
198 |
-
msgid "Current page"
|
199 |
-
msgstr ""
|
200 |
-
|
201 |
-
#: inc/class-wp-list-table.php:577
|
202 |
-
msgid "Go to the next page"
|
203 |
-
msgstr ""
|
204 |
-
|
205 |
-
#: inc/class-wp-list-table.php:584
|
206 |
-
msgid "Go to the last page"
|
207 |
-
msgstr ""
|
208 |
-
|
209 |
-
#: inc/class-wp-list-table.php:720
|
210 |
-
msgid "Select All"
|
211 |
-
msgstr ""
|
212 |
-
|
213 |
-
#: inc/redux/WPML_Redux_Framework_config.php:
|
214 |
-
msgid "
|
215 |
-
msgstr ""
|
216 |
-
|
217 |
-
#: inc/redux/WPML_Redux_Framework_config.php:
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
#: inc/redux/WPML_Redux_Framework_config.php:
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
#: inc/redux/WPML_Redux_Framework_config.php:
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
#: inc/redux/WPML_Redux_Framework_config.php:
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
#: inc/redux/WPML_Redux_Framework_config.php:
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
#: inc/redux/WPML_Redux_Framework_config.php:
|
285 |
-
msgid "
|
286 |
-
msgstr ""
|
287 |
-
|
288 |
-
#: inc/redux/WPML_Redux_Framework_config.php:
|
289 |
-
msgid "
|
290 |
-
msgstr ""
|
291 |
-
|
292 |
-
#: inc/redux/WPML_Redux_Framework_config.php:
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
#: inc/redux/WPML_Redux_Framework_config.php:333
|
331 |
-
msgid "Cleanup by Time"
|
332 |
-
msgstr ""
|
333 |
-
|
334 |
-
#: inc/redux/WPML_Redux_Framework_config.php:345
|
335 |
-
msgid "Delete mails older than days..."
|
336 |
-
msgstr ""
|
337 |
-
|
338 |
-
#: inc/redux/WPML_Redux_Framework_config.php:510
|
339 |
-
msgid "Documentation"
|
340 |
-
msgstr ""
|
341 |
-
|
342 |
-
#: inc/redux/WPML_Redux_Framework_config.php:516
|
343 |
-
msgid "Support"
|
344 |
-
msgstr ""
|
345 |
-
|
346 |
-
#: inc/redux/WPML_Redux_Framework_config.php:522
|
347 |
-
msgid "Extensions"
|
348 |
-
msgstr ""
|
349 |
-
|
350 |
-
#: wp-mail-logging.php:48
|
351 |
-
msgid ""
|
352 |
-
"Error: plugin \"WP Mail Logging\" requires a newer version of PHP to be "
|
353 |
-
"running."
|
354 |
-
msgstr ""
|
355 |
-
|
356 |
-
#: wp-mail-logging.php:49
|
357 |
-
msgid "Minimal version of PHP required: "
|
358 |
-
msgstr ""
|
359 |
-
|
360 |
-
#: wp-mail-logging.php:50
|
361 |
-
msgid "Your server's PHP version: "
|
362 |
-
msgstr ""
|
363 |
-
|
364 |
-
#. Description of the plugin/theme
|
365 |
-
msgid "Logs each email sent by WordPress."
|
366 |
-
msgstr ""
|
367 |
-
|
368 |
-
#: inc/class-wp-list-table.php:573
|
369 |
-
msgctxt "paging"
|
370 |
-
msgid "%1$s of %2$s"
|
371 |
msgstr ""
|
1 |
+
# Copyright (C) 2018 Christian Zöller
|
2 |
+
# This file is distributed under the GPLv3.
|
3 |
+
msgid ""
|
4 |
+
msgstr ""
|
5 |
+
"Project-Id-Version: WP Mail Logging 1.8.4\n"
|
6 |
+
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-mail-logging\n"
|
7 |
+
"POT-Creation-Date: 2018-06-22 15:35:01+00:00\n"
|
8 |
+
"MIME-Version: 1.0\n"
|
9 |
+
"Content-Type: text/plain; charset=utf-8\n"
|
10 |
+
"Content-Transfer-Encoding: 8bit\n"
|
11 |
+
"PO-Revision-Date: 2018-MO-DA HO:MI+ZONE\n"
|
12 |
+
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
13 |
+
"Language-Team: LANGUAGE <LL@li.org>\n"
|
14 |
+
"X-Generator: grunt-wp-i18n 0.5.4\n"
|
15 |
+
"Language: en_GB\n"
|
16 |
+
|
17 |
+
#: WPML_Email_Log_List.php:65
|
18 |
+
msgid "No email found."
|
19 |
+
msgstr ""
|
20 |
+
|
21 |
+
#: WPML_Email_Log_List.php:77
|
22 |
+
msgid "ID"
|
23 |
+
msgstr ""
|
24 |
+
|
25 |
+
#: WPML_Email_Log_List.php:78 inc/redux/WPML_Redux_Framework_config.php:191
|
26 |
+
msgid "Time"
|
27 |
+
msgstr ""
|
28 |
+
|
29 |
+
#: WPML_Email_Log_List.php:79
|
30 |
+
msgid "Receiver"
|
31 |
+
msgstr ""
|
32 |
+
|
33 |
+
#: WPML_Email_Log_List.php:80
|
34 |
+
msgid "Subject"
|
35 |
+
msgstr ""
|
36 |
+
|
37 |
+
#: WPML_Email_Log_List.php:81 WPML_OptionsManager.php:497
|
38 |
+
msgid "Message"
|
39 |
+
msgstr ""
|
40 |
+
|
41 |
+
#: WPML_Email_Log_List.php:82
|
42 |
+
msgid "Headers"
|
43 |
+
msgstr ""
|
44 |
+
|
45 |
+
#: WPML_Email_Log_List.php:83
|
46 |
+
msgid "Attachments"
|
47 |
+
msgstr ""
|
48 |
+
|
49 |
+
#: WPML_Email_Log_List.php:84
|
50 |
+
msgid "Error"
|
51 |
+
msgstr ""
|
52 |
+
|
53 |
+
#: WPML_Email_Log_List.php:85
|
54 |
+
msgid "Plugin Version"
|
55 |
+
msgstr ""
|
56 |
+
|
57 |
+
#: WPML_Email_Log_List.php:96
|
58 |
+
msgid "Host"
|
59 |
+
msgstr ""
|
60 |
+
|
61 |
+
#: WPML_Email_Log_List.php:267 WPML_Email_Log_List.php:301
|
62 |
+
msgid "Attachment %s is not present"
|
63 |
+
msgstr ""
|
64 |
+
|
65 |
+
#: WPML_Email_Log_List.php:495
|
66 |
+
msgid "Fallback to raw format because html is not convertible to json."
|
67 |
+
msgstr ""
|
68 |
+
|
69 |
+
#: WPML_LifeCycle.php:205
|
70 |
+
msgid "Settings"
|
71 |
+
msgstr ""
|
72 |
+
|
73 |
+
#: WPML_OptionsManager.php:321 WPML_OptionsManager.php:322
|
74 |
+
msgid "WP Mail Log"
|
75 |
+
msgstr ""
|
76 |
+
|
77 |
+
#: WPML_OptionsManager.php:333 WPML_OptionsManager.php:334
|
78 |
+
#: WPML_OptionsManager.php:345
|
79 |
+
msgid "About"
|
80 |
+
msgstr ""
|
81 |
+
|
82 |
+
#: WPML_OptionsManager.php:422
|
83 |
+
msgid "About Plugin"
|
84 |
+
msgstr ""
|
85 |
+
|
86 |
+
#: WPML_OptionsManager.php:431
|
87 |
+
msgid "More information"
|
88 |
+
msgstr ""
|
89 |
+
|
90 |
+
#: WPML_OptionsManager.php:432
|
91 |
+
msgid "Plugin Homepage/support"
|
92 |
+
msgstr ""
|
93 |
+
|
94 |
+
#: WPML_OptionsManager.php:433
|
95 |
+
msgid "Plugin author's blog"
|
96 |
+
msgstr ""
|
97 |
+
|
98 |
+
#: WPML_OptionsManager.php:440
|
99 |
+
msgid "Entries per page"
|
100 |
+
msgstr ""
|
101 |
+
|
102 |
+
#: WPML_OptionsManager.php:462
|
103 |
+
msgid "You do not have sufficient permissions to access this page."
|
104 |
+
msgstr ""
|
105 |
+
|
106 |
+
#: WPML_OptionsManager.php:471
|
107 |
+
msgid "Log"
|
108 |
+
msgstr ""
|
109 |
+
|
110 |
+
#: WPML_OptionsManager.php:515
|
111 |
+
msgid "Close"
|
112 |
+
msgstr ""
|
113 |
+
|
114 |
+
#: WPML_OptionsManager.php:529
|
115 |
+
msgid "Search"
|
116 |
+
msgstr ""
|
117 |
+
|
118 |
+
#: WPML_OptionsManager.php:554
|
119 |
+
msgid "true"
|
120 |
+
msgstr ""
|
121 |
+
|
122 |
+
#: WPML_OptionsManager.php:556
|
123 |
+
msgid "false"
|
124 |
+
msgstr ""
|
125 |
+
|
126 |
+
#: WPML_OptionsManager.php:559
|
127 |
+
msgid "Administrator"
|
128 |
+
msgstr ""
|
129 |
+
|
130 |
+
#: WPML_OptionsManager.php:561
|
131 |
+
msgid "Editor"
|
132 |
+
msgstr ""
|
133 |
+
|
134 |
+
#: WPML_OptionsManager.php:563
|
135 |
+
msgid "Author"
|
136 |
+
msgstr ""
|
137 |
+
|
138 |
+
#: WPML_OptionsManager.php:565
|
139 |
+
msgid "Contributor"
|
140 |
+
msgstr ""
|
141 |
+
|
142 |
+
#: WPML_OptionsManager.php:567
|
143 |
+
msgid "Subscriber"
|
144 |
+
msgstr ""
|
145 |
+
|
146 |
+
#: WPML_OptionsManager.php:569
|
147 |
+
msgid "Anyone"
|
148 |
+
msgstr ""
|
149 |
+
|
150 |
+
#: inc/class-wp-list-table.php:191
|
151 |
+
msgid "No items found."
|
152 |
+
msgstr ""
|
153 |
+
|
154 |
+
#: inc/class-wp-list-table.php:315
|
155 |
+
msgid "Bulk Actions"
|
156 |
+
msgstr ""
|
157 |
+
|
158 |
+
#: inc/class-wp-list-table.php:325
|
159 |
+
msgid "Apply"
|
160 |
+
msgstr ""
|
161 |
+
|
162 |
+
#: inc/class-wp-list-table.php:409
|
163 |
+
msgid "Show all dates"
|
164 |
+
msgstr ""
|
165 |
+
|
166 |
+
#: inc/class-wp-list-table.php:422
|
167 |
+
#. translators: 1: month name, 2: 4-digit year
|
168 |
+
msgid "%1$s %2$d"
|
169 |
+
msgstr ""
|
170 |
+
|
171 |
+
#: inc/class-wp-list-table.php:438
|
172 |
+
msgid "List View"
|
173 |
+
msgstr ""
|
174 |
+
|
175 |
+
#: inc/class-wp-list-table.php:439
|
176 |
+
msgid "Excerpt View"
|
177 |
+
msgstr ""
|
178 |
+
|
179 |
+
#: inc/class-wp-list-table.php:465
|
180 |
+
msgid "%s pending"
|
181 |
+
msgstr ""
|
182 |
+
|
183 |
+
#: inc/class-wp-list-table.php:533 inc/class-wp-list-table.php:948
|
184 |
+
msgid "1 item"
|
185 |
+
msgid_plural "%s items"
|
186 |
+
msgstr[0] ""
|
187 |
+
msgstr[1] ""
|
188 |
+
|
189 |
+
#: inc/class-wp-list-table.php:551
|
190 |
+
msgid "Go to the first page"
|
191 |
+
msgstr ""
|
192 |
+
|
193 |
+
#: inc/class-wp-list-table.php:558
|
194 |
+
msgid "Go to the previous page"
|
195 |
+
msgstr ""
|
196 |
+
|
197 |
+
#: inc/class-wp-list-table.php:567
|
198 |
+
msgid "Current page"
|
199 |
+
msgstr ""
|
200 |
+
|
201 |
+
#: inc/class-wp-list-table.php:577
|
202 |
+
msgid "Go to the next page"
|
203 |
+
msgstr ""
|
204 |
+
|
205 |
+
#: inc/class-wp-list-table.php:584
|
206 |
+
msgid "Go to the last page"
|
207 |
+
msgstr ""
|
208 |
+
|
209 |
+
#: inc/class-wp-list-table.php:720
|
210 |
+
msgid "Select All"
|
211 |
+
msgstr ""
|
212 |
+
|
213 |
+
#: inc/redux/WPML_Redux_Framework_config.php:92
|
214 |
+
msgid "General Settings"
|
215 |
+
msgstr ""
|
216 |
+
|
217 |
+
#: inc/redux/WPML_Redux_Framework_config.php:101
|
218 |
+
msgid "Cleanup"
|
219 |
+
msgstr ""
|
220 |
+
|
221 |
+
#: inc/redux/WPML_Redux_Framework_config.php:102
|
222 |
+
msgid "Delete all data on deactivation? (emails and settings)?"
|
223 |
+
msgstr ""
|
224 |
+
|
225 |
+
#: inc/redux/WPML_Redux_Framework_config.php:112
|
226 |
+
msgid "Can See Submission data"
|
227 |
+
msgstr ""
|
228 |
+
|
229 |
+
#: inc/redux/WPML_Redux_Framework_config.php:113
|
230 |
+
msgid "Select the minimum role."
|
231 |
+
msgstr ""
|
232 |
+
|
233 |
+
#: inc/redux/WPML_Redux_Framework_config.php:118
|
234 |
+
msgid "WordPress Date Time Format"
|
235 |
+
msgstr ""
|
236 |
+
|
237 |
+
#: inc/redux/WPML_Redux_Framework_config.php:119
|
238 |
+
msgid "Use format from WordPress settings (%s)"
|
239 |
+
msgstr ""
|
240 |
+
|
241 |
+
#: inc/redux/WPML_Redux_Framework_config.php:121
|
242 |
+
#: inc/redux/WPML_Redux_Framework_config.php:146
|
243 |
+
#: inc/redux/WPML_Redux_Framework_config.php:162
|
244 |
+
#: inc/redux/WPML_Redux_Framework_config.php:184
|
245 |
+
msgid "Enabled"
|
246 |
+
msgstr ""
|
247 |
+
|
248 |
+
#: inc/redux/WPML_Redux_Framework_config.php:122
|
249 |
+
#: inc/redux/WPML_Redux_Framework_config.php:147
|
250 |
+
#: inc/redux/WPML_Redux_Framework_config.php:163
|
251 |
+
#: inc/redux/WPML_Redux_Framework_config.php:185
|
252 |
+
msgid "Disabled"
|
253 |
+
msgstr ""
|
254 |
+
|
255 |
+
#: inc/redux/WPML_Redux_Framework_config.php:133
|
256 |
+
msgid "Default Format for Message"
|
257 |
+
msgstr ""
|
258 |
+
|
259 |
+
#: inc/redux/WPML_Redux_Framework_config.php:134
|
260 |
+
msgid "Select your preferred display format."
|
261 |
+
msgstr ""
|
262 |
+
|
263 |
+
#: inc/redux/WPML_Redux_Framework_config.php:139
|
264 |
+
msgid "Display Host"
|
265 |
+
msgstr ""
|
266 |
+
|
267 |
+
#: inc/redux/WPML_Redux_Framework_config.php:140
|
268 |
+
msgid "Display host column in list."
|
269 |
+
msgstr ""
|
270 |
+
|
271 |
+
#: inc/redux/WPML_Redux_Framework_config.php:152
|
272 |
+
msgid "Log Rotation"
|
273 |
+
msgstr ""
|
274 |
+
|
275 |
+
#: inc/redux/WPML_Redux_Framework_config.php:153
|
276 |
+
msgid "Save space by deleting logs regularly."
|
277 |
+
msgstr ""
|
278 |
+
|
279 |
+
#: inc/redux/WPML_Redux_Framework_config.php:159
|
280 |
+
msgid "Cleanup by Amount"
|
281 |
+
msgstr ""
|
282 |
+
|
283 |
+
#: inc/redux/WPML_Redux_Framework_config.php:160
|
284 |
+
#: inc/redux/WPML_Redux_Framework_config.php:182
|
285 |
+
msgid "Setup a automated cleanup routine!"
|
286 |
+
msgstr ""
|
287 |
+
|
288 |
+
#: inc/redux/WPML_Redux_Framework_config.php:169
|
289 |
+
msgid "Amount"
|
290 |
+
msgstr ""
|
291 |
+
|
292 |
+
#: inc/redux/WPML_Redux_Framework_config.php:170
|
293 |
+
#: inc/redux/WPML_Redux_Framework_config.php:192
|
294 |
+
msgid "When should mails are deleted?"
|
295 |
+
msgstr ""
|
296 |
+
|
297 |
+
#: inc/redux/WPML_Redux_Framework_config.php:171
|
298 |
+
msgid "Cleanup when the stored mails exceed..."
|
299 |
+
msgstr ""
|
300 |
+
|
301 |
+
#: inc/redux/WPML_Redux_Framework_config.php:181
|
302 |
+
msgid "Cleanup by Time"
|
303 |
+
msgstr ""
|
304 |
+
|
305 |
+
#: inc/redux/WPML_Redux_Framework_config.php:193
|
306 |
+
msgid "Delete mails older than days..."
|
307 |
+
msgstr ""
|
308 |
+
|
309 |
+
#: wp-mail-logging.php:48
|
310 |
+
msgid ""
|
311 |
+
"Error: plugin \"WP Mail Logging\" requires a newer version of PHP to be "
|
312 |
+
"running."
|
313 |
+
msgstr ""
|
314 |
+
|
315 |
+
#: wp-mail-logging.php:49
|
316 |
+
msgid "Minimal version of PHP required: "
|
317 |
+
msgstr ""
|
318 |
+
|
319 |
+
#: wp-mail-logging.php:50
|
320 |
+
msgid "Your server's PHP version: "
|
321 |
+
msgstr ""
|
322 |
+
|
323 |
+
#. Description of the plugin/theme
|
324 |
+
msgid "Logs each email sent by WordPress."
|
325 |
+
msgstr ""
|
326 |
+
|
327 |
+
#: inc/class-wp-list-table.php:573
|
328 |
+
msgctxt "paging"
|
329 |
+
msgid "%1$s of %2$s"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
330 |
msgstr ""
|
lib/vendor/redux-framework/inc/welcome/welcome.php
CHANGED
@@ -1,568 +1,570 @@
|
|
1 |
-
<?php
|
2 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
3 |
-
exit;
|
4 |
-
}
|
5 |
-
|
6 |
-
|
7 |
-
class Redux_Welcome {
|
8 |
-
|
9 |
-
/**
|
10 |
-
* @var string The capability users should have to view the page
|
11 |
-
*/
|
12 |
-
public $minimum_capability = 'manage_options';
|
13 |
-
public $display_version = "";
|
14 |
-
public $redux_loaded = false;
|
15 |
-
|
16 |
-
/**
|
17 |
-
* Get things started
|
18 |
-
*
|
19 |
-
* @since 1.4
|
20 |
-
*/
|
21 |
-
public function __construct() {
|
22 |
-
|
23 |
-
add_action( 'redux/loaded', array( $this, 'init' ) );
|
24 |
-
|
25 |
-
add_action( 'wp_ajax_redux_support_hash', array( $this, 'support_hash' ) );
|
26 |
-
|
27 |
-
}
|
28 |
-
|
29 |
-
public function init() {
|
30 |
-
|
31 |
-
if ( $this->redux_loaded ) {
|
32 |
-
return;
|
33 |
-
}
|
34 |
-
$this->redux_loaded = true;
|
35 |
-
add_action( 'admin_menu', array( $this, 'admin_menus' ) );
|
36 |
-
|
37 |
-
if ( isset( $_GET['page'] ) ) {
|
38 |
-
if ( substr( $_GET['page'], 0, 6 ) == "redux-" ) {
|
39 |
-
$version = explode( '.', ReduxFramework::$_version );
|
40 |
-
$this->display_version = $version[0] . '.' . $version[1];
|
41 |
-
add_filter( 'admin_footer_text', array( $this, 'change_wp_footer' ) );
|
42 |
-
add_action( 'admin_head', array( $this, 'admin_head' ) );
|
43 |
-
} else {
|
44 |
-
$this->check_version();
|
45 |
-
}
|
46 |
-
} else {
|
47 |
-
$this->check_version();
|
48 |
-
}
|
49 |
-
update_option( 'redux_version_upgraded_from', ReduxFramework::$_version );
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
$
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
$compare = true;
|
70 |
-
} else {
|
71 |
-
$
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
//
|
91 |
-
//
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
$
|
118 |
-
$
|
119 |
-
$
|
120 |
-
$
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
'
|
129 |
-
'
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
$
|
139 |
-
|
140 |
-
|
141 |
-
'
|
142 |
-
'
|
143 |
-
'
|
144 |
-
'
|
145 |
-
'
|
146 |
-
'
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
$return['
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
*
|
195 |
-
*
|
196 |
-
*
|
197 |
-
* @
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
remove_submenu_page( 'tools.php', 'redux-
|
255 |
-
remove_submenu_page( 'tools.php', 'redux-
|
256 |
-
remove_submenu_page( 'tools.php', 'redux-
|
257 |
-
remove_submenu_page( 'tools.php', 'redux-
|
258 |
-
remove_submenu_page( 'tools.php', 'redux-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
*
|
267 |
-
*
|
268 |
-
* @
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
*
|
335 |
-
*
|
336 |
-
* @
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
*
|
371 |
-
*
|
372 |
-
* @
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
*
|
386 |
-
*
|
387 |
-
* @
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
*
|
401 |
-
*
|
402 |
-
* @
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
*
|
417 |
-
*
|
418 |
-
* @
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
|
431 |
-
*
|
432 |
-
*
|
433 |
-
* @
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
*
|
447 |
-
*
|
448 |
-
* @
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
*
|
462 |
-
*
|
463 |
-
|
464 |
-
|
465 |
-
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
|
471 |
-
|
472 |
-
|
473 |
-
|
474 |
-
|
475 |
-
|
476 |
-
|
477 |
-
|
478 |
-
|
479 |
-
|
480 |
-
|
481 |
-
|
482 |
-
|
483 |
-
|
484 |
-
|
485 |
-
<a href="
|
486 |
-
|
487 |
-
<a href="https://
|
488 |
-
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
-
|
494 |
-
|
495 |
-
js
|
496 |
-
|
497 |
-
|
498 |
-
|
499 |
-
|
500 |
-
|
501 |
-
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
*
|
507 |
-
*
|
508 |
-
* @
|
509 |
-
|
510 |
-
|
511 |
-
|
512 |
-
|
513 |
-
|
514 |
-
|
515 |
-
|
516 |
-
|
517 |
-
|
518 |
-
|
519 |
-
|
520 |
-
|
521 |
-
|
522 |
-
|
523 |
-
$contributor_list .= sprintf( '<
|
524 |
-
|
525 |
-
$contributor_list .= sprintf( '<
|
526 |
-
$contributor_list .= '</a>';
|
527 |
-
$contributor_list .= '</
|
528 |
-
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
|
534 |
-
|
535 |
-
|
536 |
-
|
537 |
-
|
538 |
-
*
|
539 |
-
*
|
540 |
-
* @
|
541 |
-
|
542 |
-
|
543 |
-
|
544 |
-
|
545 |
-
|
546 |
-
|
547 |
-
|
548 |
-
|
549 |
-
|
550 |
-
|
551 |
-
|
552 |
-
|
553 |
-
|
554 |
-
|
555 |
-
|
556 |
-
|
557 |
-
|
558 |
-
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
-
|
563 |
-
|
564 |
-
|
565 |
-
|
566 |
-
|
567 |
-
|
568 |
-
|
|
|
|
1 |
+
<?php
|
2 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
3 |
+
exit;
|
4 |
+
}
|
5 |
+
|
6 |
+
|
7 |
+
class Redux_Welcome {
|
8 |
+
|
9 |
+
/**
|
10 |
+
* @var string The capability users should have to view the page
|
11 |
+
*/
|
12 |
+
public $minimum_capability = 'manage_options';
|
13 |
+
public $display_version = "";
|
14 |
+
public $redux_loaded = false;
|
15 |
+
|
16 |
+
/**
|
17 |
+
* Get things started
|
18 |
+
*
|
19 |
+
* @since 1.4
|
20 |
+
*/
|
21 |
+
public function __construct() {
|
22 |
+
|
23 |
+
add_action( 'redux/loaded', array( $this, 'init' ) );
|
24 |
+
|
25 |
+
add_action( 'wp_ajax_redux_support_hash', array( $this, 'support_hash' ) );
|
26 |
+
|
27 |
+
}
|
28 |
+
|
29 |
+
public function init() {
|
30 |
+
|
31 |
+
if ( $this->redux_loaded ) {
|
32 |
+
return;
|
33 |
+
}
|
34 |
+
$this->redux_loaded = true;
|
35 |
+
add_action( 'admin_menu', array( $this, 'admin_menus' ) );
|
36 |
+
|
37 |
+
if ( isset( $_GET['page'] ) ) {
|
38 |
+
if ( substr( $_GET['page'], 0, 6 ) == "redux-" ) {
|
39 |
+
$version = explode( '.', ReduxFramework::$_version );
|
40 |
+
$this->display_version = $version[0] . '.' . $version[1];
|
41 |
+
add_filter( 'admin_footer_text', array( $this, 'change_wp_footer' ) );
|
42 |
+
add_action( 'admin_head', array( $this, 'admin_head' ) );
|
43 |
+
} else {
|
44 |
+
$this->check_version();
|
45 |
+
}
|
46 |
+
} else {
|
47 |
+
$this->check_version();
|
48 |
+
}
|
49 |
+
update_option( 'redux_version_upgraded_from', ReduxFramework::$_version );
|
50 |
+
/* WPML Patch: gh-73. This line is removed in the master and I assume it will
|
51 |
+
* also be in the next release when I do an update of this redux files:
|
52 |
+
* set_transient( '_redux_activation_redirect', true, 30 );
|
53 |
+
*/
|
54 |
+
}
|
55 |
+
|
56 |
+
|
57 |
+
public function check_version() {
|
58 |
+
global $pagenow;
|
59 |
+
|
60 |
+
if ( $pagenow == "admin-ajax.php" || ( $GLOBALS['pagenow'] == "customize" && isset( $_GET['theme'] ) && ! empty( $_GET['theme'] ) ) ) {
|
61 |
+
return;
|
62 |
+
}
|
63 |
+
|
64 |
+
$saveVer = Redux_Helpers::major_version( get_option( 'redux_version_upgraded_from' ) );
|
65 |
+
$curVer = Redux_Helpers::major_version( ReduxFramework::$_version );
|
66 |
+
$compare = false;
|
67 |
+
|
68 |
+
if ( Redux_Helpers::isLocalHost() ) {
|
69 |
+
$compare = true;
|
70 |
+
} else if ( class_exists( 'ReduxFrameworkPlugin' ) ) {
|
71 |
+
$compare = true;
|
72 |
+
} else {
|
73 |
+
$redux = ReduxFrameworkInstances::get_all_instances();
|
74 |
+
|
75 |
+
if ( is_array( $redux ) ) {
|
76 |
+
foreach ( $redux as $panel ) {
|
77 |
+
if ( $panel->args['dev_mode'] == 1 ) {
|
78 |
+
$compare = true;
|
79 |
+
break;
|
80 |
+
}
|
81 |
+
}
|
82 |
+
}
|
83 |
+
}
|
84 |
+
|
85 |
+
if ( $compare ) {
|
86 |
+
$redirect = false;
|
87 |
+
if ( empty( $saveVer ) ) {
|
88 |
+
$redirect = true; // First time
|
89 |
+
}
|
90 |
+
// Removing redirect except for the first time with the plugin installed. :) Less annoying until we actually use this page.
|
91 |
+
//else if ( version_compare( $curVer, $saveVer, '>' ) ) {
|
92 |
+
// $redirect = true; // Previous version
|
93 |
+
//}
|
94 |
+
if ( $redirect && ! defined( 'WP_TESTS_DOMAIN' ) && ReduxFramework::$_as_plugin ) {
|
95 |
+
add_action( 'init', array( $this, 'do_redirect' ) );
|
96 |
+
}
|
97 |
+
}
|
98 |
+
}
|
99 |
+
|
100 |
+
public function do_redirect() {
|
101 |
+
if ( ! defined( 'WP_CLI' ) ) {
|
102 |
+
wp_redirect( admin_url( 'tools.php?page=redux-about' ) );
|
103 |
+
exit();
|
104 |
+
}
|
105 |
+
}
|
106 |
+
|
107 |
+
public function change_wp_footer() {
|
108 |
+
echo __( 'If you like <strong>Redux</strong> please leave us a <a href="https://wordpress.org/support/view/plugin-reviews/redux-framework?filter=5#postform" target="_blank" class="redux-rating-link" data-rated="Thanks :)">★★★★★</a> rating. A huge thank you from Redux in advance!', 'redux-framework' );
|
109 |
+
}
|
110 |
+
|
111 |
+
public function support_hash() {
|
112 |
+
|
113 |
+
if ( ! wp_verify_nonce( $_POST['nonce'], 'redux-support-hash' ) ) {
|
114 |
+
die();
|
115 |
+
}
|
116 |
+
|
117 |
+
$data = get_option( 'redux_support_hash' );
|
118 |
+
$data = wp_parse_args( $data, array( 'check' => '', 'identifier' => '' ) );
|
119 |
+
$generate_hash = true;
|
120 |
+
$system_info = Redux_Helpers::compileSystemStatus();
|
121 |
+
$newHash = md5( json_encode( $system_info ) );
|
122 |
+
$return = array();
|
123 |
+
if ( $newHash == $data['check'] ) {
|
124 |
+
unset( $generate_hash );
|
125 |
+
}
|
126 |
+
|
127 |
+
$post_data = array(
|
128 |
+
'hash' => md5( network_site_url() . '-' . $_SERVER['REMOTE_ADDR'] ),
|
129 |
+
'site' => esc_url( home_url( '/' ) ),
|
130 |
+
'tracking' => Redux_Helpers::getTrackingObject(),
|
131 |
+
'system_status' => $system_info,
|
132 |
+
);
|
133 |
+
//$post_data = json_encode( $post_data );
|
134 |
+
$post_data = serialize( $post_data );
|
135 |
+
|
136 |
+
if ( isset( $generate_hash ) && $generate_hash ) {
|
137 |
+
|
138 |
+
$data['check'] = $newHash;
|
139 |
+
$data['identifier'] = "";
|
140 |
+
$response = wp_remote_post( 'http://support.redux.io/v1/', array(
|
141 |
+
'method' => 'POST',
|
142 |
+
'timeout' => 65,
|
143 |
+
'redirection' => 5,
|
144 |
+
'httpversion' => '1.0',
|
145 |
+
'blocking' => true,
|
146 |
+
'compress' => true,
|
147 |
+
'headers' => array(),
|
148 |
+
'body' => array(
|
149 |
+
'data' => $post_data,
|
150 |
+
'serialize' => 1
|
151 |
+
)
|
152 |
+
)
|
153 |
+
);
|
154 |
+
|
155 |
+
if ( is_wp_error( $response ) ) {
|
156 |
+
echo json_encode( array(
|
157 |
+
'status' => 'error',
|
158 |
+
'message' => $response->get_error_message()
|
159 |
+
) );
|
160 |
+
die( 1 );
|
161 |
+
} else {
|
162 |
+
$response_code = wp_remote_retrieve_response_code( $response );
|
163 |
+
if ( $response_code == 200 ) {
|
164 |
+
$response = wp_remote_retrieve_body( $response );
|
165 |
+
$return = json_decode( $response, true );
|
166 |
+
if ( isset( $return['identifier'] ) ) {
|
167 |
+
$data['identifier'] = $return['identifier'];
|
168 |
+
update_option( 'redux_support_hash', $data );
|
169 |
+
}
|
170 |
+
} else {
|
171 |
+
$response = wp_remote_retrieve_body( $response );
|
172 |
+
echo json_encode( array(
|
173 |
+
'status' => 'error',
|
174 |
+
'message' => $response
|
175 |
+
) );
|
176 |
+
}
|
177 |
+
}
|
178 |
+
}
|
179 |
+
|
180 |
+
if ( ! empty( $data['identifier'] ) ) {
|
181 |
+
$return['status'] = "success";
|
182 |
+
$return['identifier'] = $data['identifier'];
|
183 |
+
} else {
|
184 |
+
$return['status'] = "error";
|
185 |
+
$return['message'] = esc_html__( "Support hash could not be generated. Please try again later.", 'redux-framework' );
|
186 |
+
}
|
187 |
+
|
188 |
+
echo json_encode( $return );
|
189 |
+
|
190 |
+
die( 1 );
|
191 |
+
}
|
192 |
+
|
193 |
+
/**
|
194 |
+
* Register the Dashboard Pages which are later hidden but these pages
|
195 |
+
* are used to render the Welcome and Credits pages.
|
196 |
+
*
|
197 |
+
* @access public
|
198 |
+
* @since 1.4
|
199 |
+
* @return void
|
200 |
+
*/
|
201 |
+
public function admin_menus() {
|
202 |
+
|
203 |
+
$page = 'add_management_page';
|
204 |
+
|
205 |
+
// About Page
|
206 |
+
$page(
|
207 |
+
esc_html__( 'Welcome to Redux Framework', 'redux-framework' ), esc_html__( 'Redux Framework', 'redux-framework' ), $this->minimum_capability, 'redux-about', array(
|
208 |
+
$this,
|
209 |
+
'about_screen'
|
210 |
+
)
|
211 |
+
);
|
212 |
+
|
213 |
+
// Changelog Page
|
214 |
+
$page(
|
215 |
+
esc_html__( 'Redux Framework Changelog', 'redux-framework' ), esc_html__( 'Redux Framework Changelog', 'redux-framework' ), $this->minimum_capability, 'redux-changelog', array(
|
216 |
+
$this,
|
217 |
+
'changelog_screen'
|
218 |
+
)
|
219 |
+
);
|
220 |
+
|
221 |
+
// Support Page
|
222 |
+
$page(
|
223 |
+
esc_html__( 'Get Support', 'redux-framework' ), esc_html__( 'Get Support', 'redux-framework' ), $this->minimum_capability, 'redux-support', array(
|
224 |
+
$this,
|
225 |
+
'get_support'
|
226 |
+
)
|
227 |
+
);
|
228 |
+
|
229 |
+
// Support Page
|
230 |
+
$page(
|
231 |
+
esc_html__( 'Redux Extensions', 'redux-framework' ), esc_html__( 'Redux Extensions', 'redux-framework' ), $this->minimum_capability, 'redux-extensions', array(
|
232 |
+
$this,
|
233 |
+
'redux_extensions'
|
234 |
+
)
|
235 |
+
);
|
236 |
+
|
237 |
+
|
238 |
+
// Credits Page
|
239 |
+
$page(
|
240 |
+
esc_html__( 'The people that develop Redux Framework', 'redux-framework' ), esc_html__( 'The people that develop Redux Framework', 'redux-framework' ), $this->minimum_capability, 'redux-credits', array(
|
241 |
+
$this,
|
242 |
+
'credits_screen'
|
243 |
+
)
|
244 |
+
);
|
245 |
+
|
246 |
+
// Status Page
|
247 |
+
$page(
|
248 |
+
esc_html__( 'Redux Framework Status', 'redux-framework' ), esc_html__( 'Redux Framework Status', 'redux-framework' ), $this->minimum_capability, 'redux-status', array(
|
249 |
+
$this,
|
250 |
+
'status_screen'
|
251 |
+
)
|
252 |
+
);
|
253 |
+
|
254 |
+
//remove_submenu_page( 'tools.php', 'redux-about' );
|
255 |
+
remove_submenu_page( 'tools.php', 'redux-status' );
|
256 |
+
remove_submenu_page( 'tools.php', 'redux-changelog' );
|
257 |
+
remove_submenu_page( 'tools.php', 'redux-getting-started' );
|
258 |
+
remove_submenu_page( 'tools.php', 'redux-credits' );
|
259 |
+
remove_submenu_page( 'tools.php', 'redux-support' );
|
260 |
+
remove_submenu_page( 'tools.php', 'redux-extensions' );
|
261 |
+
|
262 |
+
|
263 |
+
}
|
264 |
+
|
265 |
+
/**
|
266 |
+
* Hide Individual Dashboard Pages
|
267 |
+
*
|
268 |
+
* @access public
|
269 |
+
* @since 1.4
|
270 |
+
* @return void
|
271 |
+
*/
|
272 |
+
public function admin_head() {
|
273 |
+
|
274 |
+
// Badge for welcome page
|
275 |
+
//$badge_url = ReduxFramework::$_url . 'assets/images/redux-badge.png';
|
276 |
+
?>
|
277 |
+
|
278 |
+
<script
|
279 |
+
id="redux-qtip-js"
|
280 |
+
src='<?php echo esc_url( ReduxFramework::$_url ); ?>assets/js/vendor/qtip/jquery.qtip.js'>
|
281 |
+
</script>
|
282 |
+
|
283 |
+
<script
|
284 |
+
id="redux-welcome-admin-js"
|
285 |
+
src='<?php echo esc_url( ReduxFramework::$_url ) ?>inc/welcome/js/redux-welcome-admin.js'>
|
286 |
+
</script>
|
287 |
+
|
288 |
+
<?php
|
289 |
+
if ( isset ( $_GET['page'] ) && $_GET['page'] == "redux-support" ) :
|
290 |
+
?>
|
291 |
+
<script
|
292 |
+
id="jquery-easing"
|
293 |
+
src='<?php echo esc_url( ReduxFramework::$_url ); ?>inc/welcome/js/jquery.easing.min.js'>
|
294 |
+
</script>
|
295 |
+
<?php endif; ?>
|
296 |
+
|
297 |
+
<link rel='stylesheet' id='redux-qtip-css'
|
298 |
+
href='<?php echo esc_url( ReduxFramework::$_url ); ?>assets/css/vendor/qtip/jquery.qtip.css'
|
299 |
+
type='text/css' media='all'/>
|
300 |
+
|
301 |
+
<link rel='stylesheet' id='elusive-icons'
|
302 |
+
href='<?php echo esc_url( ReduxFramework::$_url ); ?>assets/css/vendor/elusive-icons/elusive-icons.css'
|
303 |
+
type='text/css' media='all'/>
|
304 |
+
|
305 |
+
<link rel='stylesheet' id='redux-welcome-css'
|
306 |
+
href='<?php echo esc_url( ReduxFramework::$_url ); ?>inc/welcome/css/redux-welcome.css'
|
307 |
+
type='text/css' media='all'/>
|
308 |
+
<style type="text/css">
|
309 |
+
.redux-badge:before {
|
310 |
+
<?php echo is_rtl() ? 'right' : 'left'; ?> : 0;
|
311 |
+
}
|
312 |
+
|
313 |
+
.about-wrap .redux-badge {
|
314 |
+
<?php echo is_rtl() ? 'left' : 'right'; ?> : 0;
|
315 |
+
}
|
316 |
+
|
317 |
+
.about-wrap .feature-rest div {
|
318 |
+
padding- <?php echo is_rtl() ? 'left' : 'right'; ?>: 100px;
|
319 |
+
}
|
320 |
+
|
321 |
+
.about-wrap .feature-rest div.last-feature {
|
322 |
+
padding- <?php echo is_rtl() ? 'right' : 'left'; ?>: 100px;
|
323 |
+
padding- <?php echo is_rtl() ? 'left' : 'right'; ?>: 0;
|
324 |
+
}
|
325 |
+
|
326 |
+
.about-wrap .feature-rest div.icon:before {
|
327 |
+
margin: <?php echo is_rtl() ? '0 -100px 0 0' : '0 0 0 -100px'; ?>;
|
328 |
+
}
|
329 |
+
</style>
|
330 |
+
<?php
|
331 |
+
}
|
332 |
+
|
333 |
+
/**
|
334 |
+
* Navigation tabs
|
335 |
+
*
|
336 |
+
* @access public
|
337 |
+
* @since 1.9
|
338 |
+
* @return void
|
339 |
+
*/
|
340 |
+
public function tabs() {
|
341 |
+
$selected = isset ( $_GET['page'] ) ? esc_attr( $_GET['page'] ) : 'redux-about';
|
342 |
+
$nonce = wp_create_nonce( 'redux-support-hash' );
|
343 |
+
?>
|
344 |
+
<input type="hidden" id="redux_support_nonce" value="<?php echo esc_attr( $nonce ); ?>"/>
|
345 |
+
<h2 class="nav-tab-wrapper">
|
346 |
+
<a class="nav-tab <?php echo $selected == 'redux-about' ? 'nav-tab-active' : ''; ?>"
|
347 |
+
href="<?php echo esc_url( admin_url( add_query_arg( array( 'page' => 'redux-about' ), 'tools.php' ) ) ); ?>">
|
348 |
+
<?php esc_attr_e( "What's New", 'redux-framework' ); ?>
|
349 |
+
</a> <a class="nav-tab <?php echo $selected == 'redux-extensions' ? 'nav-tab-active' : ''; ?>"
|
350 |
+
href="<?php echo esc_url( admin_url( add_query_arg( array( 'page' => 'redux-extensions' ), 'tools.php' ) ) ); ?>">
|
351 |
+
<?php esc_attr_e( 'Extensions', 'redux-framework' ); ?>
|
352 |
+
</a> <a class="nav-tab <?php echo $selected == 'redux-changelog' ? 'nav-tab-active' : ''; ?>"
|
353 |
+
href="<?php echo esc_url( admin_url( add_query_arg( array( 'page' => 'redux-changelog' ), 'tools.php' ) ) ); ?>">
|
354 |
+
<?php esc_attr_e( 'Changelog', 'redux-framework' ); ?>
|
355 |
+
</a> <a class="nav-tab <?php echo $selected == 'redux-credits' ? 'nav-tab-active' : ''; ?>"
|
356 |
+
href="<?php echo esc_url( admin_url( add_query_arg( array( 'page' => 'redux-credits' ), 'tools.php' ) ) ); ?>">
|
357 |
+
<?php _e( 'Credits', 'redux-framework' ); ?>
|
358 |
+
</a> <a class="nav-tab <?php echo $selected == 'redux-support' ? 'nav-tab-active' : ''; ?>"
|
359 |
+
href="<?php echo esc_url( admin_url( add_query_arg( array( 'page' => 'redux-support' ), 'tools.php' ) ) ); ?>">
|
360 |
+
<?php esc_attr_e( 'Support', 'redux-framework' ); ?>
|
361 |
+
</a> <a class="nav-tab <?php echo $selected == 'redux-status' ? 'nav-tab-active' : ''; ?>"
|
362 |
+
href="<?php echo esc_url( admin_url( add_query_arg( array( 'page' => 'redux-status' ), 'tools.php' ) ) ); ?>">
|
363 |
+
<?php esc_attr_e( 'Status', 'redux-framework' ); ?>
|
364 |
+
</a>
|
365 |
+
</h2>
|
366 |
+
<?php
|
367 |
+
}
|
368 |
+
|
369 |
+
/**
|
370 |
+
* Render About Screen
|
371 |
+
*
|
372 |
+
* @access public
|
373 |
+
* @since 1.4
|
374 |
+
* @return void
|
375 |
+
*/
|
376 |
+
public function about_screen() {
|
377 |
+
// Stupid hack for Wordpress alerts and warnings
|
378 |
+
echo '<div class="wrap" style="height:0;overflow:hidden;"><h2></h2></div>';
|
379 |
+
|
380 |
+
require_once 'views/about.php';
|
381 |
+
|
382 |
+
}
|
383 |
+
|
384 |
+
/**
|
385 |
+
* Render Changelog Screen
|
386 |
+
*
|
387 |
+
* @access public
|
388 |
+
* @since 2.0.3
|
389 |
+
* @return void
|
390 |
+
*/
|
391 |
+
public function changelog_screen() {
|
392 |
+
// Stupid hack for Wordpress alerts and warnings
|
393 |
+
echo '<div class="wrap" style="height:0;overflow:hidden;"><h2></h2></div>';
|
394 |
+
|
395 |
+
require_once 'views/changelog.php';
|
396 |
+
|
397 |
+
}
|
398 |
+
|
399 |
+
/**
|
400 |
+
* Render Changelog Screen
|
401 |
+
*
|
402 |
+
* @access public
|
403 |
+
* @since 2.0.3
|
404 |
+
* @return void
|
405 |
+
*/
|
406 |
+
public function redux_extensions() {
|
407 |
+
// Stupid hack for Wordpress alerts and warnings
|
408 |
+
echo '<div class="wrap" style="height:0;overflow:hidden;"><h2></h2></div>';
|
409 |
+
|
410 |
+
require_once 'views/extensions.php';
|
411 |
+
|
412 |
+
}
|
413 |
+
|
414 |
+
|
415 |
+
/**
|
416 |
+
* Render Get Support Screen
|
417 |
+
*
|
418 |
+
* @access public
|
419 |
+
* @since 1.9
|
420 |
+
* @return void
|
421 |
+
*/
|
422 |
+
public function get_support() {
|
423 |
+
// Stupid hack for Wordpress alerts and warnings
|
424 |
+
echo '<div class="wrap" style="height:0;overflow:hidden;"><h2></h2></div>';
|
425 |
+
|
426 |
+
require_once 'views/support.php';
|
427 |
+
|
428 |
+
}
|
429 |
+
|
430 |
+
/**
|
431 |
+
* Render Credits Screen
|
432 |
+
*
|
433 |
+
* @access public
|
434 |
+
* @since 1.4
|
435 |
+
* @return void
|
436 |
+
*/
|
437 |
+
public function credits_screen() {
|
438 |
+
// Stupid hack for Wordpress alerts and warnings
|
439 |
+
echo '<div class="wrap" style="height:0;overflow:hidden;"><h2></h2></div>';
|
440 |
+
|
441 |
+
require_once 'views/credits.php';
|
442 |
+
|
443 |
+
}
|
444 |
+
|
445 |
+
/**
|
446 |
+
* Render Status Report Screen
|
447 |
+
*
|
448 |
+
* @access public
|
449 |
+
* @since 1.4
|
450 |
+
* @return void
|
451 |
+
*/
|
452 |
+
public function status_screen() {
|
453 |
+
// Stupid hack for Wordpress alerts and warnings
|
454 |
+
echo '<div class="wrap" style="height:0;overflow:hidden;"><h2></h2></div>';
|
455 |
+
|
456 |
+
require_once 'views/status_report.php';
|
457 |
+
|
458 |
+
}
|
459 |
+
|
460 |
+
/**
|
461 |
+
* Parse the Redux readme.txt file
|
462 |
+
*
|
463 |
+
* @since 2.0.3
|
464 |
+
* @return string $readme HTML formatted readme file
|
465 |
+
*/
|
466 |
+
public function parse_readme() {
|
467 |
+
if ( file_exists( ReduxFramework::$_dir . 'inc/fields/raw/parsedown.php' ) ) {
|
468 |
+
require_once ReduxFramework::$_dir . 'inc/fields/raw/parsedown.php';
|
469 |
+
$Parsedown = new Parsedown();
|
470 |
+
$data = @wp_remote_get( ReduxFramework::$_url . '../CHANGELOG.md' );
|
471 |
+
if ( isset( $data ) && ! empty( $data ) ) {
|
472 |
+
$data = @wp_remote_retrieve_body( $data );
|
473 |
+
return $Parsedown->text( trim( str_replace( '# Redux Framework Changelog', '', $data ) ) );
|
474 |
+
}
|
475 |
+
}
|
476 |
+
|
477 |
+
return '<script src="' . 'http://gist-it.appspot.com/https://github.com/reduxframework/redux-framework/blob/master/CHANGELOG.md?slice=2:0&footer=0">// <![CDATA[// ]]></script>';
|
478 |
+
|
479 |
+
}
|
480 |
+
|
481 |
+
public function actions() {
|
482 |
+
?>
|
483 |
+
<p class="redux-actions">
|
484 |
+
<a href="http://docs.reduxframework.com/" class="docs button button-primary">Docs</a>
|
485 |
+
<a href="http://wordpress.org/plugins/redux-framework/" class="review-us button button-primary"
|
486 |
+
target="_blank">Review Us</a>
|
487 |
+
<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=MMFMHWUPKHKPW"
|
488 |
+
class="review-us button button-primary" target="_blank">Donate</a>
|
489 |
+
<a href="https://twitter.com/share" class="twitter-share-button" data-url="http://reduxframework.com"
|
490 |
+
data-text="Reduce your dev time! Redux is the most powerful option framework for WordPress on the web"
|
491 |
+
data-via="ReduxFramework" data-size="large" data-hashtags="Redux">Tweet</a>
|
492 |
+
<script>!function( d, s, id ) {
|
493 |
+
var js, fjs = d.getElementsByTagName( s )[0], p = /^http:/.test( d.location ) ? 'http' : 'https';
|
494 |
+
if ( !d.getElementById( id ) ) {
|
495 |
+
js = d.createElement( s );
|
496 |
+
js.id = id;
|
497 |
+
js.src = p + '://platform.twitter.com/widgets.js';
|
498 |
+
fjs.parentNode.insertBefore( js, fjs );
|
499 |
+
}
|
500 |
+
}( document, 'script', 'twitter-wjs' );</script>
|
501 |
+
</p>
|
502 |
+
<?php
|
503 |
+
}
|
504 |
+
|
505 |
+
/**
|
506 |
+
* Render Contributors List
|
507 |
+
*
|
508 |
+
* @since 1.4
|
509 |
+
* @uses Redux_Welcome::get_contributors()
|
510 |
+
* @return string $contributor_list HTML formatted list of all the contributors for Redux
|
511 |
+
*/
|
512 |
+
public function contributors() {
|
513 |
+
$contributors = $this->get_contributors();
|
514 |
+
|
515 |
+
if ( empty ( $contributors ) ) {
|
516 |
+
return '';
|
517 |
+
}
|
518 |
+
|
519 |
+
$contributor_list = '<ul class="wp-people-group">';
|
520 |
+
|
521 |
+
foreach ( $contributors as $contributor ) {
|
522 |
+
$contributor_list .= '<li class="wp-person">';
|
523 |
+
$contributor_list .= sprintf( '<a href="%s" title="%s" target="_blank">', esc_url( 'https://github.com/' . $contributor->login ), esc_html( sprintf( __( 'View %s', 'redux-framework' ), esc_html( $contributor->login ) ) )
|
524 |
+
);
|
525 |
+
$contributor_list .= sprintf( '<img src="%s" width="64" height="64" class="gravatar" alt="%s" />', esc_url( $contributor->avatar_url ), esc_html( $contributor->login ) );
|
526 |
+
$contributor_list .= '</a>';
|
527 |
+
$contributor_list .= sprintf( '<a class="web" href="%s" target="_blank">%s</a>', esc_url( 'https://github.com/' . $contributor->login ), esc_html( $contributor->login ) );
|
528 |
+
$contributor_list .= '</a>';
|
529 |
+
$contributor_list .= '</li>';
|
530 |
+
}
|
531 |
+
|
532 |
+
$contributor_list .= '</ul>';
|
533 |
+
|
534 |
+
return $contributor_list;
|
535 |
+
}
|
536 |
+
|
537 |
+
/**
|
538 |
+
* Retreive list of contributors from GitHub.
|
539 |
+
*
|
540 |
+
* @access public
|
541 |
+
* @since 1.4
|
542 |
+
* @return array $contributors List of contributors
|
543 |
+
*/
|
544 |
+
public function get_contributors() {
|
545 |
+
$contributors = get_transient( 'redux_contributors' );
|
546 |
+
|
547 |
+
if ( false !== $contributors ) {
|
548 |
+
return $contributors;
|
549 |
+
}
|
550 |
+
|
551 |
+
$response = wp_remote_get( 'https://api.github.com/repos/ReduxFramework/redux-framework/contributors', array( 'sslverify' => false ) );
|
552 |
+
|
553 |
+
if ( is_wp_error( $response ) || 200 != wp_remote_retrieve_response_code( $response ) ) {
|
554 |
+
return array();
|
555 |
+
}
|
556 |
+
|
557 |
+
$contributors = json_decode( wp_remote_retrieve_body( $response ) );
|
558 |
+
|
559 |
+
if ( ! is_array( $contributors ) ) {
|
560 |
+
return array();
|
561 |
+
}
|
562 |
+
|
563 |
+
set_transient( 'redux_contributors', $contributors, 3600 );
|
564 |
+
|
565 |
+
return $contributors;
|
566 |
+
}
|
567 |
+
}
|
568 |
+
|
569 |
+
new Redux_Welcome();
|
570 |
+
|
readme.txt
CHANGED
@@ -1,139 +1,144 @@
|
|
1 |
-
=== WP Mail Logging ===
|
2 |
-
Contributors: No3x, tripflex
|
3 |
-
Donate link: http://no3x.de/web/donate
|
4 |
-
Tags: mail, email, log, logging, debug, list, store, collect, view
|
5 |
-
License: GPLv3
|
6 |
-
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
7 |
-
Requires at least: 3.0
|
8 |
-
Tested up to: 4.
|
9 |
-
Stable tag: 1.8.
|
10 |
-
|
11 |
-
Logs each email sent by WordPress.
|
12 |
-
|
13 |
-
== Description ==
|
14 |
-
|
15 |
-
Logs each email sent by WordPress. This can be useful if you don't want to lose such mail contents. It can also be useful for debugging purposes while development.
|
16 |
-
|
17 |
-
Features of the plugin include:
|
18 |
-
|
19 |
-
* Complete list of sent mails - view and search through the mails.
|
20 |
-
* Error status from mail implementation is logged
|
21 |
-
* Zero-configuration - just install and enjoy.
|
22 |
-
* Log rotation - decide which emails you want to keep.
|
23 |
-
* DevOP: IP of server sent the mail
|
24 |
-
* Developer: Boost your development performance by keeping track of sent mails.
|
25 |
-
* Developer: Filters are provided to extend the columns.
|
26 |
-
|
27 |
-
[youtube https://www.youtube.com/watch?v=mQK6VPSV2-E]
|
28 |
-
|
29 |
-
**Follow this plugin on [GitHub](https://github.com/No3x/wp-mail-logging)**
|
30 |
-
|
31 |
-
**If you find an issue, let us know in the [Tracker](https://github.com/No3x/wp-mail-logging/issues?state=open)**
|
32 |
-
|
33 |
-
**Provide feedback and suggestions on [enhancements](https://github.com/No3x/wp-mail-logging/issues?direction=desc&labels=Enhancement%2Cenhancement&page=1&sort=created&state=open)**
|
34 |
-
|
35 |
-
== Installation ==
|
36 |
-
Just install and activate wp-mail-logging. The plugin will do the work for you! You can list all logged mails on the plugin site.
|
37 |
-
I recommend the following plugins if you want to send mails via SMTP because they are technically well integrated into WordPress and provide error messages on failure.:
|
38 |
-
- [WP Mail SMTP](https://de.wordpress.org/plugins/wp-mail-smtp/)
|
39 |
-
- [SMTP Mailer](https://de.wordpress.org/plugins/smtp-mailer/)
|
40 |
-
|
41 |
-
== Frequently Asked Questions ==
|
42 |
-
= How do I know the mail was sent? =
|
43 |
-
If there is no error logged chances are high the mail was sent. There are plugins that overwrite (do not customize) the default mailing mechanism of WordPress - they maybe do not inform about failure so it can't be logged by WP Mail Logging.
|
44 |
-
= How do I know the wail was delivered? =
|
45 |
-
The logged email has been sent by WordPress but please note this does NOT mean it has been delivered. With the given functionality of WordPress you can't determine if a mail was delivered successfully.
|
46 |
-
|
47 |
-
== Screenshots ==
|
48 |
-
1. The List
|
49 |
-
2. The Detail View
|
50 |
-
3. The Settings
|
51 |
-
|
52 |
-
== Upgrade Notice ==
|
53 |
-
= 1.8.
|
54 |
-
- Fix:
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
- Fix:
|
68 |
-
|
69 |
-
= 1.8.
|
70 |
-
-
|
71 |
-
-
|
72 |
-
-
|
73 |
-
|
74 |
-
|
75 |
-
-
|
76 |
-
-
|
77 |
-
|
78 |
-
|
79 |
-
-
|
80 |
-
- Fix:
|
81 |
-
- Tweak:
|
82 |
-
|
83 |
-
= 1.
|
84 |
-
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
- Tweak:
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
-
|
102 |
-
|
103 |
-
= 1.
|
104 |
-
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
-
|
113 |
-
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
- Tweak:
|
133 |
-
- Fix:
|
134 |
-
|
135 |
-
= 1.
|
136 |
-
-
|
137 |
-
|
138 |
-
|
139 |
-
|
|
|
|
|
|
|
|
|
|
1 |
+
=== WP Mail Logging ===
|
2 |
+
Contributors: No3x, tripflex
|
3 |
+
Donate link: http://no3x.de/web/donate
|
4 |
+
Tags: mail, email, log, logging, debug, list, store, collect, view
|
5 |
+
License: GPLv3
|
6 |
+
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
7 |
+
Requires at least: 3.0
|
8 |
+
Tested up to: 4.9.6
|
9 |
+
Stable tag: 1.8.4
|
10 |
+
|
11 |
+
Logs each email sent by WordPress.
|
12 |
+
|
13 |
+
== Description ==
|
14 |
+
|
15 |
+
Logs each email sent by WordPress. This can be useful if you don't want to lose such mail contents. It can also be useful for debugging purposes while development.
|
16 |
+
|
17 |
+
Features of the plugin include:
|
18 |
+
|
19 |
+
* Complete list of sent mails - view and search through the mails.
|
20 |
+
* Error status from mail implementation is logged
|
21 |
+
* Zero-configuration - just install and enjoy.
|
22 |
+
* Log rotation - decide which emails you want to keep.
|
23 |
+
* DevOP: IP of server sent the mail
|
24 |
+
* Developer: Boost your development performance by keeping track of sent mails.
|
25 |
+
* Developer: Filters are provided to extend the columns.
|
26 |
+
|
27 |
+
[youtube https://www.youtube.com/watch?v=mQK6VPSV2-E]
|
28 |
+
|
29 |
+
**Follow this plugin on [GitHub](https://github.com/No3x/wp-mail-logging)**
|
30 |
+
|
31 |
+
**If you find an issue, let us know in the [Tracker](https://github.com/No3x/wp-mail-logging/issues?state=open)**
|
32 |
+
|
33 |
+
**Provide feedback and suggestions on [enhancements](https://github.com/No3x/wp-mail-logging/issues?direction=desc&labels=Enhancement%2Cenhancement&page=1&sort=created&state=open)**
|
34 |
+
|
35 |
+
== Installation ==
|
36 |
+
Just install and activate wp-mail-logging. The plugin will do the work for you! You can list all logged mails on the plugin site.
|
37 |
+
I recommend the following plugins if you want to send mails via SMTP because they are technically well integrated into WordPress and provide error messages on failure.:
|
38 |
+
- [WP Mail SMTP](https://de.wordpress.org/plugins/wp-mail-smtp/)
|
39 |
+
- [SMTP Mailer](https://de.wordpress.org/plugins/smtp-mailer/)
|
40 |
+
|
41 |
+
== Frequently Asked Questions ==
|
42 |
+
= How do I know the mail was sent? =
|
43 |
+
If there is no error logged chances are high the mail was sent. There are plugins that overwrite (do not customize) the default mailing mechanism of WordPress - they maybe do not inform about failure so it can't be logged by WP Mail Logging.
|
44 |
+
= How do I know the wail was delivered? =
|
45 |
+
The logged email has been sent by WordPress but please note this does NOT mean it has been delivered. With the given functionality of WordPress you can't determine if a mail was delivered successfully.
|
46 |
+
|
47 |
+
== Screenshots ==
|
48 |
+
1. The List
|
49 |
+
2. The Detail View
|
50 |
+
3. The Settings
|
51 |
+
|
52 |
+
== Upgrade Notice ==
|
53 |
+
= 1.8.4 =
|
54 |
+
- Fix: transient bug
|
55 |
+
- Fix: notice when attachments not set
|
56 |
+
|
57 |
+
== Changelog ==
|
58 |
+
|
59 |
+
= 1.8.4, June 22, 2018 =
|
60 |
+
- Fix: transient bug
|
61 |
+
- Fix: notice when attachments not set
|
62 |
+
|
63 |
+
= 1.8.3, November 10, 2017 =
|
64 |
+
- Fix: another security bug
|
65 |
+
|
66 |
+
= 1.8.2, November 7, 2017 =
|
67 |
+
- Fix: security bug
|
68 |
+
|
69 |
+
= 1.8.1, June 8, 2017 =
|
70 |
+
- Fix: Resending mails uses proper headers now
|
71 |
+
- Fix: Translation: Text domain
|
72 |
+
- Fix: Prevent error if mail to set error on was not found
|
73 |
+
|
74 |
+
= 1.8.0, February 15, 2017 =
|
75 |
+
- New: Error status from mail implementation is logged
|
76 |
+
- New: Resend mail
|
77 |
+
- New: Added translation files
|
78 |
+
- New: Added translation for de_DE and zh_CN
|
79 |
+
- Fix: raw mode of message renders attachments as text
|
80 |
+
- Fix: fallback to raw mode for json mode if mail is containing html
|
81 |
+
- Tweak: Pretty print json
|
82 |
+
|
83 |
+
= 1.7.0, November 6, 2016 =
|
84 |
+
- New: logging host IP
|
85 |
+
- Fix: passing search term for pagination
|
86 |
+
- Tweak: close modal with ESC
|
87 |
+
|
88 |
+
= 1.6.2, August 7, 2016 =
|
89 |
+
- Fix: search mails
|
90 |
+
|
91 |
+
= 1.6.1, August 1, 2016 =
|
92 |
+
- Fix: delete mails
|
93 |
+
|
94 |
+
= 1.6.0, July 31, 2016 =
|
95 |
+
- New: Improved modal, added view types
|
96 |
+
- Tweak: Proper date if none set in WordPress settings
|
97 |
+
- Tweak: Updated libraries
|
98 |
+
- Tweak: Added wp_mail hook to very last priority
|
99 |
+
|
100 |
+
= 1.5.1, October 11, 2015 =
|
101 |
+
- Tweak: Fixed security issues
|
102 |
+
|
103 |
+
= 1.5.0, June 4, 2015 =
|
104 |
+
- New: Setting for date time format
|
105 |
+
- Tweak: Removed admin bar menu
|
106 |
+
- Fix: repetitive cron schedule
|
107 |
+
|
108 |
+
= 1.4.2, April 4, 2015 =
|
109 |
+
- Tweak: Library updated - settings load speed improved.
|
110 |
+
|
111 |
+
= 1.4.1, March 28, 2015 =
|
112 |
+
- Fix: Restrict submission data works now.
|
113 |
+
- Fix: Granularity of cleanup by time slider changed to 7.
|
114 |
+
|
115 |
+
= 1.4.0, December 22, 2014 =
|
116 |
+
- New: Log Rotation
|
117 |
+
- New: Search
|
118 |
+
- Tweak: Settings
|
119 |
+
- Fix: international characters are supported now
|
120 |
+
- Fix: Mandrill support
|
121 |
+
|
122 |
+
= 1.3.2, September 21, 2014 =
|
123 |
+
- Fix: HTML mails broken in previous version.
|
124 |
+
|
125 |
+
= 1.3.1, September 12, 2014 =
|
126 |
+
- Fix: angle brackets notation support (e.g. John Doe <john.doe@example.org>).
|
127 |
+
|
128 |
+
= 1.3, August 24, 2014 =
|
129 |
+
- New: clean mail listing including:
|
130 |
+
Modal window for mail details.
|
131 |
+
Attachment support with appropriate icon for mime type.
|
132 |
+
- Tweak: Performance improvement
|
133 |
+
- Fix: screen option for mails per page
|
134 |
+
|
135 |
+
= 1.2, August 12, 2014 =
|
136 |
+
- New: video
|
137 |
+
- Tweak: Improved help & stability
|
138 |
+
- Fix: deletion of mails regardless of options (on update to 1.2 your mails will be deleted hopefully this happens for the last time)
|
139 |
+
|
140 |
+
= 1.1 =
|
141 |
+
- Tweak: Modified readme.
|
142 |
+
|
143 |
+
= 1.0 =
|
144 |
+
- Initial Revision
|
wp-mail-logging.php
CHANGED
@@ -1,108 +1,108 @@
|
|
1 |
-
<?php
|
2 |
-
/*
|
3 |
-
Plugin Name: WP Mail Logging
|
4 |
-
Plugin URI: http://wordpress.org/extend/plugins/wp-mail-logging/
|
5 |
-
Support URI: https://github.com/No3x/wp-mail-logging/issues
|
6 |
-
Version: 1.8.
|
7 |
-
Author: Christian Zöller
|
8 |
-
Author URI: http://no3x.de/
|
9 |
-
Description: Logs each email sent by WordPress.
|
10 |
-
Text Domain: wp-mail-logging
|
11 |
-
License: GPLv3
|
12 |
-
*/
|
13 |
-
|
14 |
-
/*
|
15 |
-
"WordPress Plugin Template" Copyright (C) 2013 Michael Simpson (email : michael.d.simpson@gmail.com)
|
16 |
-
|
17 |
-
This following part of this file is part of WordPress Plugin Template for WordPress.
|
18 |
-
|
19 |
-
WordPress Plugin Template is free software: you can redistribute it and/or modify
|
20 |
-
it under the terms of the GNU General Public License as published by
|
21 |
-
the Free Software Foundation, either version 3 of the License, or
|
22 |
-
(at your option) any later version.
|
23 |
-
|
24 |
-
WordPress Plugin Template is distributed in the hope that it will be useful,
|
25 |
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
26 |
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
27 |
-
GNU General Public License for more details.
|
28 |
-
|
29 |
-
You should have received a copy of the GNU General Public License
|
30 |
-
along with Contact Form to Database Extension.
|
31 |
-
If not, see http://www.gnu.org/licenses/gpl-3.0.html
|
32 |
-
*/
|
33 |
-
|
34 |
-
namespace No3x\WPML;
|
35 |
-
|
36 |
-
// Exit if accessed directly.
|
37 |
-
if ( ! defined( 'ABSPATH' ) ) exit;
|
38 |
-
|
39 |
-
define('WPML_PHP_MIN_VERSION', '5.4');
|
40 |
-
|
41 |
-
/**
|
42 |
-
* Check the PHP version and give a useful error message if the user's version is less than the required version
|
43 |
-
* @return boolean true if version check passed. If false, triggers an error which WP will handle, by displaying
|
44 |
-
* an error message on the Admin page
|
45 |
-
*/
|
46 |
-
function WPML_noticePhpVersionWrong() {
|
47 |
-
echo '<div class="error">' .
|
48 |
-
__( 'Error: plugin "WP Mail Logging" requires a newer version of PHP to be running.', 'wp-mail-logging' ).
|
49 |
-
'<br/>' . __( 'Minimal version of PHP required: ', 'wp-mail-logging' ) . '<strong>' . WPML_PHP_MIN_VERSION . '</strong>' .
|
50 |
-
'<br/>' . __( 'Your server\'s PHP version: ', 'wp-mail-logging' ) . '<strong>' . phpversion() . '</strong>' .
|
51 |
-
'</div>';
|
52 |
-
}
|
53 |
-
|
54 |
-
|
55 |
-
function WPML_PhpVersionCheck() {
|
56 |
-
if ( version_compare( phpversion(), WPML_PHP_MIN_VERSION ) < 0 ) {
|
57 |
-
add_action( 'admin_notices', __NAMESPACE__ . '\WPML_noticePhpVersionWrong' );
|
58 |
-
return false;
|
59 |
-
}
|
60 |
-
return true;
|
61 |
-
}
|
62 |
-
|
63 |
-
|
64 |
-
/**
|
65 |
-
* Initialize internationalization (i18n) for this plugin.
|
66 |
-
* References:
|
67 |
-
* http://codex.wordpress.org/I18n_for_WordPress_Developers
|
68 |
-
* http://www.wdmac.com/how-to-create-a-po-language-translation#more-631
|
69 |
-
* @return void
|
70 |
-
*/
|
71 |
-
function WPML_i18n_init() {
|
72 |
-
$pluginDir = dirname(plugin_basename(__FILE__));
|
73 |
-
load_plugin_textdomain('wp-mail-logging', false, $pluginDir . '/languages/');
|
74 |
-
}
|
75 |
-
|
76 |
-
|
77 |
-
//////////////////////////////////
|
78 |
-
// Run initialization
|
79 |
-
/////////////////////////////////
|
80 |
-
|
81 |
-
// First initialize i18n
|
82 |
-
WPML_i18n_init();
|
83 |
-
|
84 |
-
|
85 |
-
// Next, run the version check.
|
86 |
-
// If it is successful, continue with initialization for this plugin
|
87 |
-
if (WPML_PhpVersionCheck()) {
|
88 |
-
// Only init and run the init function if we know PHP version can parse it
|
89 |
-
require __DIR__ . '/autoload.php';
|
90 |
-
|
91 |
-
// Create a new instance of the autoloader
|
92 |
-
$loader = new \WPML_Psr4AutoloaderClass();
|
93 |
-
|
94 |
-
// Register this instance
|
95 |
-
$loader->register();
|
96 |
-
|
97 |
-
// Add our namespace and the folder it maps to
|
98 |
-
require_once __DIR__ . '/inc/redux/admin-init.php';
|
99 |
-
$loader->addNamespace('No3x\\WPML\\', __DIR__ );
|
100 |
-
$loader->addNamespace('No3x\\WPML\\Model\\', __DIR__ . '/model' );
|
101 |
-
$loader->addNamespace('No3x\\WPML\\Settings\\', __DIR__ . '/inc/redux');
|
102 |
-
$loader->addNamespace('No3x\\WPML\\ORM\\', __DIR__ . '/lib/vendor/brandonwamboldt/wp-orm/src');
|
103 |
-
$loader->addNamespace('No3x\\WPML\\Pimple\\', __DIR__ . '/lib/vendor/pimple/pimple/src');
|
104 |
-
if( file_exists( __DIR__ . '/vendor/autoload.php' ) ) {
|
105 |
-
require_once __DIR__ . '/vendor/autoload.php';
|
106 |
-
}
|
107 |
-
WPML_Init::getInstance()->init( __FILE__ );
|
108 |
-
}
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
Plugin Name: WP Mail Logging
|
4 |
+
Plugin URI: http://wordpress.org/extend/plugins/wp-mail-logging/
|
5 |
+
Support URI: https://github.com/No3x/wp-mail-logging/issues
|
6 |
+
Version: 1.8.4
|
7 |
+
Author: Christian Zöller
|
8 |
+
Author URI: http://no3x.de/
|
9 |
+
Description: Logs each email sent by WordPress.
|
10 |
+
Text Domain: wp-mail-logging
|
11 |
+
License: GPLv3
|
12 |
+
*/
|
13 |
+
|
14 |
+
/*
|
15 |
+
"WordPress Plugin Template" Copyright (C) 2013 Michael Simpson (email : michael.d.simpson@gmail.com)
|
16 |
+
|
17 |
+
This following part of this file is part of WordPress Plugin Template for WordPress.
|
18 |
+
|
19 |
+
WordPress Plugin Template is free software: you can redistribute it and/or modify
|
20 |
+
it under the terms of the GNU General Public License as published by
|
21 |
+
the Free Software Foundation, either version 3 of the License, or
|
22 |
+
(at your option) any later version.
|
23 |
+
|
24 |
+
WordPress Plugin Template is distributed in the hope that it will be useful,
|
25 |
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
26 |
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
27 |
+
GNU General Public License for more details.
|
28 |
+
|
29 |
+
You should have received a copy of the GNU General Public License
|
30 |
+
along with Contact Form to Database Extension.
|
31 |
+
If not, see http://www.gnu.org/licenses/gpl-3.0.html
|
32 |
+
*/
|
33 |
+
|
34 |
+
namespace No3x\WPML;
|
35 |
+
|
36 |
+
// Exit if accessed directly.
|
37 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
38 |
+
|
39 |
+
define('WPML_PHP_MIN_VERSION', '5.4');
|
40 |
+
|
41 |
+
/**
|
42 |
+
* Check the PHP version and give a useful error message if the user's version is less than the required version
|
43 |
+
* @return boolean true if version check passed. If false, triggers an error which WP will handle, by displaying
|
44 |
+
* an error message on the Admin page
|
45 |
+
*/
|
46 |
+
function WPML_noticePhpVersionWrong() {
|
47 |
+
echo '<div class="error">' .
|
48 |
+
__( 'Error: plugin "WP Mail Logging" requires a newer version of PHP to be running.', 'wp-mail-logging' ).
|
49 |
+
'<br/>' . __( 'Minimal version of PHP required: ', 'wp-mail-logging' ) . '<strong>' . WPML_PHP_MIN_VERSION . '</strong>' .
|
50 |
+
'<br/>' . __( 'Your server\'s PHP version: ', 'wp-mail-logging' ) . '<strong>' . phpversion() . '</strong>' .
|
51 |
+
'</div>';
|
52 |
+
}
|
53 |
+
|
54 |
+
|
55 |
+
function WPML_PhpVersionCheck() {
|
56 |
+
if ( version_compare( phpversion(), WPML_PHP_MIN_VERSION ) < 0 ) {
|
57 |
+
add_action( 'admin_notices', __NAMESPACE__ . '\WPML_noticePhpVersionWrong' );
|
58 |
+
return false;
|
59 |
+
}
|
60 |
+
return true;
|
61 |
+
}
|
62 |
+
|
63 |
+
|
64 |
+
/**
|
65 |
+
* Initialize internationalization (i18n) for this plugin.
|
66 |
+
* References:
|
67 |
+
* http://codex.wordpress.org/I18n_for_WordPress_Developers
|
68 |
+
* http://www.wdmac.com/how-to-create-a-po-language-translation#more-631
|
69 |
+
* @return void
|
70 |
+
*/
|
71 |
+
function WPML_i18n_init() {
|
72 |
+
$pluginDir = dirname(plugin_basename(__FILE__));
|
73 |
+
load_plugin_textdomain('wp-mail-logging', false, $pluginDir . '/languages/');
|
74 |
+
}
|
75 |
+
|
76 |
+
|
77 |
+
//////////////////////////////////
|
78 |
+
// Run initialization
|
79 |
+
/////////////////////////////////
|
80 |
+
|
81 |
+
// First initialize i18n
|
82 |
+
WPML_i18n_init();
|
83 |
+
|
84 |
+
|
85 |
+
// Next, run the version check.
|
86 |
+
// If it is successful, continue with initialization for this plugin
|
87 |
+
if (WPML_PhpVersionCheck()) {
|
88 |
+
// Only init and run the init function if we know PHP version can parse it
|
89 |
+
require __DIR__ . '/autoload.php';
|
90 |
+
|
91 |
+
// Create a new instance of the autoloader
|
92 |
+
$loader = new \WPML_Psr4AutoloaderClass();
|
93 |
+
|
94 |
+
// Register this instance
|
95 |
+
$loader->register();
|
96 |
+
|
97 |
+
// Add our namespace and the folder it maps to
|
98 |
+
require_once __DIR__ . '/inc/redux/admin-init.php';
|
99 |
+
$loader->addNamespace('No3x\\WPML\\', __DIR__ );
|
100 |
+
$loader->addNamespace('No3x\\WPML\\Model\\', __DIR__ . '/model' );
|
101 |
+
$loader->addNamespace('No3x\\WPML\\Settings\\', __DIR__ . '/inc/redux');
|
102 |
+
$loader->addNamespace('No3x\\WPML\\ORM\\', __DIR__ . '/lib/vendor/brandonwamboldt/wp-orm/src');
|
103 |
+
$loader->addNamespace('No3x\\WPML\\Pimple\\', __DIR__ . '/lib/vendor/pimple/pimple/src');
|
104 |
+
if( file_exists( __DIR__ . '/vendor/autoload.php' ) ) {
|
105 |
+
require_once __DIR__ . '/vendor/autoload.php';
|
106 |
+
}
|
107 |
+
WPML_Init::getInstance()->init( __FILE__ );
|
108 |
+
}
|