Version Description
(2012-10-08) =
- Add Bulgarian translation contributed by pavelsof
- Add compatibility with WPML API for strings translations
- Bug correction: dates are not translated (introduced in 0.9.2)
- Bug correction: the language is lost when keeping - No change - for language in bulk edit
- Bug correction: categories and tags are duplicate (when default language is set automatically to existing content and categories and tags share the same name)
Download this release
Release Info
Developer | Chouby |
Plugin | Polylang |
Version | 0.9.3 |
Comparing to | |
See all releases |
Code changes from version 0.9.2 to 0.9.3
- doc/documentation-en.odt +0 -0
- doc/documentation-en.pdf +0 -0
- include/admin-filters.php +9 -3
- include/admin.php +3 -4
- include/api.php +11 -0
- include/base.php +6 -2
- include/core.php +12 -25
- languages/polylang-bg_BG.mo +0 -0
- languages/polylang-bg_BG.po +493 -0
- polylang.php +2 -2
- readme.txt +12 -4
doc/documentation-en.odt
CHANGED
Binary file
|
doc/documentation-en.pdf
CHANGED
Binary file
|
include/admin-filters.php
CHANGED
@@ -188,7 +188,7 @@ class Polylang_Admin_Filters extends Polylang_Admin_Base {
|
|
188 |
$name = $type == 'edit-tags' ? 'inline_lang_choice' : 'post_lang_choice';
|
189 |
|
190 |
$args = current_filter() == 'bulk_edit_custom_box' ?
|
191 |
-
array('name' => $name, '
|
192 |
array('name' => $name);
|
193 |
|
194 |
echo '<fieldset class="inline-edit-col-left"><div class="inline-edit-col">';
|
@@ -444,6 +444,10 @@ class Polylang_Admin_Filters extends Polylang_Admin_Base {
|
|
444 |
if (!in_array($post->post_type, $this->post_types))
|
445 |
return;
|
446 |
|
|
|
|
|
|
|
|
|
447 |
if ($id = wp_is_post_revision($post_id))
|
448 |
$post_id = $id;
|
449 |
|
@@ -455,6 +459,8 @@ class Polylang_Admin_Filters extends Polylang_Admin_Base {
|
|
455 |
}
|
456 |
elseif (isset($_GET['new_lang']))
|
457 |
$this->set_post_language($post_id, $_GET['new_lang']);
|
|
|
|
|
458 |
elseif ($this->get_post_language($post_id))
|
459 |
{} // avoids breaking the language if post is updated outside the edit post page (thanks to Gonçalo Peres)
|
460 |
else
|
@@ -949,7 +955,7 @@ class Polylang_Admin_Filters extends Polylang_Admin_Base {
|
|
949 |
$this->dropdown_languages(array(
|
950 |
'name' => $widget->id.'_lang_choice',
|
951 |
'class' => 'tags-input',
|
952 |
-
'
|
953 |
'selected' => isset($widget_lang[$widget->id]) ? $widget_lang[$widget->id] : ''
|
954 |
))
|
955 |
);
|
@@ -978,7 +984,7 @@ class Polylang_Admin_Filters extends Polylang_Admin_Base {
|
|
978 |
'name' => 'user_lang',
|
979 |
'value' => 'description',
|
980 |
'selected' => get_user_meta($profileuser->ID, 'user_lang', true),
|
981 |
-
'
|
982 |
))
|
983 |
);
|
984 |
|
188 |
$name = $type == 'edit-tags' ? 'inline_lang_choice' : 'post_lang_choice';
|
189 |
|
190 |
$args = current_filter() == 'bulk_edit_custom_box' ?
|
191 |
+
array('name' => $name, 'add_options' => array(array('value' => -1, 'text' => __('— No Change —')))) :
|
192 |
array('name' => $name);
|
193 |
|
194 |
echo '<fieldset class="inline-edit-col-left"><div class="inline-edit-col">';
|
444 |
if (!in_array($post->post_type, $this->post_types))
|
445 |
return;
|
446 |
|
447 |
+
// bulk edit does not modify the language
|
448 |
+
if (isset($_GET['bulk_edit']) && $_REQUEST['post_lang_choice'] == -1)
|
449 |
+
return;
|
450 |
+
|
451 |
if ($id = wp_is_post_revision($post_id))
|
452 |
$post_id = $id;
|
453 |
|
459 |
}
|
460 |
elseif (isset($_GET['new_lang']))
|
461 |
$this->set_post_language($post_id, $_GET['new_lang']);
|
462 |
+
elseif (isset($_REQUEST['action']) && in_array($_REQUEST['action'], array('post-quickpress-save', 'post-quickpress-publish')))
|
463 |
+
$this->set_post_language($post_id, $this->get_default_language()); // default language for QuickPress
|
464 |
elseif ($this->get_post_language($post_id))
|
465 |
{} // avoids breaking the language if post is updated outside the edit post page (thanks to Gonçalo Peres)
|
466 |
else
|
955 |
$this->dropdown_languages(array(
|
956 |
'name' => $widget->id.'_lang_choice',
|
957 |
'class' => 'tags-input',
|
958 |
+
'add_options' => array(array('value' => 0, 'text' => __('All languages', 'polylang'))),
|
959 |
'selected' => isset($widget_lang[$widget->id]) ? $widget_lang[$widget->id] : ''
|
960 |
))
|
961 |
);
|
984 |
'name' => 'user_lang',
|
985 |
'value' => 'description',
|
986 |
'selected' => get_user_meta($profileuser->ID, 'user_lang', true),
|
987 |
+
'add_options' => array(array('value' => 0, 'text' => __('Wordpress default', 'polylang')))
|
988 |
))
|
989 |
);
|
990 |
|
include/admin.php
CHANGED
@@ -287,6 +287,7 @@ class Polylang_Admin extends Polylang_Admin_Base {
|
|
287 |
|
288 |
if ($values)
|
289 |
$wpdb->query("INSERT INTO $wpdb->termmeta (term_id, meta_key, meta_value) VALUES " . implode(',', $values));
|
|
|
290 |
}
|
291 |
break;
|
292 |
|
@@ -402,10 +403,8 @@ class Polylang_Admin extends Polylang_Admin_Base {
|
|
402 |
|
403 |
global $wpdb;
|
404 |
$terms = get_terms($this->taxonomies, array('get'=>'all', 'fields'=>'ids'));
|
405 |
-
$tr_terms = $wpdb->get_col("SELECT
|
406 |
-
|
407 |
-
WHERE tm.meta_key = '_language'");
|
408 |
-
$terms = array_diff($terms, $tr_terms);
|
409 |
|
410 |
return apply_filters('pll_get_objects_with_no_lang', empty($posts) && empty($terms) ? false : array('posts' => $posts, 'terms' => $terms));
|
411 |
}
|
287 |
|
288 |
if ($values)
|
289 |
$wpdb->query("INSERT INTO $wpdb->termmeta (term_id, meta_key, meta_value) VALUES " . implode(',', $values));
|
290 |
+
|
291 |
}
|
292 |
break;
|
293 |
|
403 |
|
404 |
global $wpdb;
|
405 |
$terms = get_terms($this->taxonomies, array('get'=>'all', 'fields'=>'ids'));
|
406 |
+
$tr_terms = $wpdb->get_col("SELECT term_id FROM $wpdb->termmeta WHERE meta_key = '_language'");
|
407 |
+
$terms = array_unique(array_diff($terms, $tr_terms), SORT_NUMERIC); // array_unique to avoid duplicates if a term is in more than one taxonomy
|
|
|
|
|
408 |
|
409 |
return apply_filters('pll_get_objects_with_no_lang', empty($posts) && empty($terms) ? false : array('posts' => $posts, 'terms' => $terms));
|
410 |
}
|
include/api.php
CHANGED
@@ -48,4 +48,15 @@ function pll__($string) {
|
|
48 |
function pll_e($string) {
|
49 |
_e($string, 'pll_string');
|
50 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
51 |
?>
|
48 |
function pll_e($string) {
|
49 |
_e($string, 'pll_string');
|
50 |
}
|
51 |
+
|
52 |
+
// compatibility with WPML string translation API
|
53 |
+
if (!function_exists('icl_register_string') && !function_exists('icl_t')) {
|
54 |
+
function icl_register_string($context, $name, $string) {
|
55 |
+
pll_register_string($name, $string);
|
56 |
+
}
|
57 |
+
|
58 |
+
function icl_t($context, $name, $string) {
|
59 |
+
return pll__($string);
|
60 |
+
}
|
61 |
+
}
|
62 |
?>
|
include/base.php
CHANGED
@@ -41,11 +41,15 @@ abstract class Polylang_Base {
|
|
41 |
// retrieves the dropdown list of the languages
|
42 |
function dropdown_languages($args = array()) {
|
43 |
$args = apply_filters('pll_dropdown_language_args', $args);
|
44 |
-
$defaults = array('name' => 'lang_choice', 'class' => '', '
|
45 |
extract(wp_parse_args($args, $defaults));
|
46 |
|
|
|
|
|
|
|
47 |
$out = sprintf('<select name="%1$s" id="%1$s"%2$s>'."\n", esc_attr($name), $class ? ' class="'.esc_attr($class).'"' : '');
|
48 |
-
$
|
|
|
49 |
foreach ($this->get_languages_list($args) as $language) {
|
50 |
$out .= sprintf("<option value='%s'%s>%s</option>\n",
|
51 |
esc_attr($language->$value),
|
41 |
// retrieves the dropdown list of the languages
|
42 |
function dropdown_languages($args = array()) {
|
43 |
$args = apply_filters('pll_dropdown_language_args', $args);
|
44 |
+
$defaults = array('name' => 'lang_choice', 'class' => '', 'add_options' => array(), 'hide_empty' => false, 'value' => 'slug', 'selected' => '');
|
45 |
extract(wp_parse_args($args, $defaults));
|
46 |
|
47 |
+
// sort $add_options by value
|
48 |
+
uasort($add_options, create_function('$a, $b', "return \$a['value'] > \$b['value'];" ));
|
49 |
+
|
50 |
$out = sprintf('<select name="%1$s" id="%1$s"%2$s>'."\n", esc_attr($name), $class ? ' class="'.esc_attr($class).'"' : '');
|
51 |
+
foreach ($add_options as $option)
|
52 |
+
$out .= "<option value='" . $option['value'] . "'>" . $option['text'] . "</option>\n";
|
53 |
foreach ($this->get_languages_list($args) as $language) {
|
54 |
$out .= sprintf("<option value='%s'%s>%s</option>\n",
|
55 |
esc_attr($language->$value),
|
include/core.php
CHANGED
@@ -113,9 +113,9 @@ class Polylang_Core extends Polylang_base {
|
|
113 |
add_filter('widget_display_callback', array(&$this, 'widget_display_callback'), 10, 3);
|
114 |
|
115 |
// strings translation (must be applied before WordPress applies its default formatting filters)
|
116 |
-
add_filter('widget_title',
|
117 |
-
add_filter('
|
118 |
-
add_filter('
|
119 |
|
120 |
// translates biography
|
121 |
add_filter('get_user_metadata', array(&$this,'get_user_metadata'), 10, 4);
|
@@ -251,6 +251,8 @@ class Polylang_Core extends Polylang_base {
|
|
251 |
$this->curlang = $this->get_preferred_language();
|
252 |
else
|
253 |
$this->curlang = $this->get_language($this->options['default_lang']);
|
|
|
|
|
254 |
}
|
255 |
|
256 |
// save the default locale before we start any language manipulation
|
@@ -299,7 +301,7 @@ class Polylang_Core extends Polylang_base {
|
|
299 |
// as done by xili_language: load text domains and reinitialize wp_locale with the action 'wp'
|
300 |
// as done by qtranslate: define the locale with the action 'plugins_loaded', but in this case, the language must be specified in the url.
|
301 |
function load_textdomains() {
|
302 |
-
global $wp_rewrite, $
|
303 |
|
304 |
// our override_load_textdomain filter has done its job. let's remove it before calling load_textdomain
|
305 |
remove_filter('override_load_textdomain', array(&$this, 'mofile'));
|
@@ -323,19 +325,20 @@ class Polylang_Core extends Polylang_base {
|
|
323 |
load_textdomain( $textdomain['domain'], str_replace($this->default_locale, $new_locale, $textdomain['mo']));
|
324 |
|
325 |
// reinitializes wp_locale for weekdays and months, as well as for text direction
|
326 |
-
unset($wp_locale);
|
327 |
-
$wp_locale = new WP_Locale();
|
328 |
-
$wp_locale->text_direction = get_metadata('term', $this->curlang->term_id, '_rtl', true) ? 'rtl' : 'ltr';
|
329 |
|
330 |
// translate labels of post types and taxonomies
|
331 |
foreach ($GLOBALS['wp_taxonomies'] as $tax)
|
332 |
$this->translate_labels($tax);
|
333 |
foreach ($GLOBALS['wp_post_types'] as $pt)
|
334 |
$this->translate_labels($pt);
|
|
|
|
|
|
|
335 |
}
|
336 |
|
337 |
-
// and finally load user defined strings
|
338 |
-
$l10n['pll_string'] = $this->mo_import($this->curlang);
|
339 |
}
|
340 |
|
341 |
else {
|
@@ -766,22 +769,6 @@ class Polylang_Core extends Polylang_base {
|
|
766 |
return isset($widget_lang[$widget->id]) && $widget_lang[$widget->id] && $widget_lang[$widget->id] != $this->curlang->slug ? false : $instance;
|
767 |
}
|
768 |
|
769 |
-
// translates widget titles
|
770 |
-
function widget_title($title) {
|
771 |
-
return __($title, 'pll_string');
|
772 |
-
}
|
773 |
-
|
774 |
-
// translates site title and tagline
|
775 |
-
function bloginfo($output, $show) {
|
776 |
-
if (in_array($show, array('', 'name', 'description'))) {
|
777 |
-
$output = __($output, 'pll_string');
|
778 |
-
if (current_filter() == 'get_bloginfo_rss')
|
779 |
-
$output = convert_chars($output);
|
780 |
-
}
|
781 |
-
|
782 |
-
return $output;
|
783 |
-
}
|
784 |
-
|
785 |
// translates biography
|
786 |
function get_user_metadata($null, $id, $meta_key, $single) {
|
787 |
return $meta_key == 'description' ? get_user_meta($id, 'description_'.$this->curlang->slug, true) : $null;
|
113 |
add_filter('widget_display_callback', array(&$this, 'widget_display_callback'), 10, 3);
|
114 |
|
115 |
// strings translation (must be applied before WordPress applies its default formatting filters)
|
116 |
+
add_filter('widget_title', 'pll__', 1);
|
117 |
+
add_filter('option_blogname', 'pll__', 1);
|
118 |
+
add_filter('option_blogdescription', 'pll__', 1);
|
119 |
|
120 |
// translates biography
|
121 |
add_filter('get_user_metadata', array(&$this,'get_user_metadata'), 10, 4);
|
251 |
$this->curlang = $this->get_preferred_language();
|
252 |
else
|
253 |
$this->curlang = $this->get_language($this->options['default_lang']);
|
254 |
+
|
255 |
+
$GLOBALS['l10n']['pll_string'] = $this->mo_import($this->curlang);
|
256 |
}
|
257 |
|
258 |
// save the default locale before we start any language manipulation
|
301 |
// as done by xili_language: load text domains and reinitialize wp_locale with the action 'wp'
|
302 |
// as done by qtranslate: define the locale with the action 'plugins_loaded', but in this case, the language must be specified in the url.
|
303 |
function load_textdomains() {
|
304 |
+
global $wp_rewrite, $l10n;
|
305 |
|
306 |
// our override_load_textdomain filter has done its job. let's remove it before calling load_textdomain
|
307 |
remove_filter('override_load_textdomain', array(&$this, 'mofile'));
|
325 |
load_textdomain( $textdomain['domain'], str_replace($this->default_locale, $new_locale, $textdomain['mo']));
|
326 |
|
327 |
// reinitializes wp_locale for weekdays and months, as well as for text direction
|
328 |
+
unset($GLOBALS['wp_locale']);
|
329 |
+
$GLOBALS['wp_locale'] = new WP_Locale();
|
330 |
+
$GLOBALS['wp_locale']->text_direction = get_metadata('term', $this->curlang->term_id, '_rtl', true) ? 'rtl' : 'ltr';
|
331 |
|
332 |
// translate labels of post types and taxonomies
|
333 |
foreach ($GLOBALS['wp_taxonomies'] as $tax)
|
334 |
$this->translate_labels($tax);
|
335 |
foreach ($GLOBALS['wp_post_types'] as $pt)
|
336 |
$this->translate_labels($pt);
|
337 |
+
|
338 |
+
// and finally load user defined strings
|
339 |
+
$l10n['pll_string'] = $this->mo_import($this->curlang);
|
340 |
}
|
341 |
|
|
|
|
|
342 |
}
|
343 |
|
344 |
else {
|
769 |
return isset($widget_lang[$widget->id]) && $widget_lang[$widget->id] && $widget_lang[$widget->id] != $this->curlang->slug ? false : $instance;
|
770 |
}
|
771 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
772 |
// translates biography
|
773 |
function get_user_metadata($null, $id, $meta_key, $single) {
|
774 |
return $meta_key == 'description' ? get_user_meta($id, 'description_'.$this->curlang->slug, true) : $null;
|
languages/polylang-bg_BG.mo
ADDED
Binary file
|
languages/polylang-bg_BG.po
ADDED
@@ -0,0 +1,493 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: polylang\n"
|
4 |
+
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2012-08-19 20:12+0100\n"
|
6 |
+
"PO-Revision-Date: \n"
|
7 |
+
"Last-Translator: Павел <pavelsof@gmail.com>\n"
|
8 |
+
"Language-Team: Павел <pavelsof@gmail.com>\n"
|
9 |
+
"Language: Bulgarian\n"
|
10 |
+
"MIME-Version: 1.0\n"
|
11 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
12 |
+
"Content-Transfer-Encoding: 8bit\n"
|
13 |
+
"Plural-Forms: nplurals=2: nplural=n>1;\n"
|
14 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
15 |
+
"X-Poedit-KeywordsList: _e;__;_x\n"
|
16 |
+
"X-Poedit-Basepath: .\n"
|
17 |
+
"X-Generator: Poedit 1.5.3\n"
|
18 |
+
"X-Poedit-SearchPath-0: ..\n"
|
19 |
+
"X-Poedit-SearchPath-1: ../include\n"
|
20 |
+
|
21 |
+
#: ../polylang.php:111
|
22 |
+
#, php-format
|
23 |
+
msgid "You are using WordPress %s. Polylang requires at least WordPress %s."
|
24 |
+
msgstr ""
|
25 |
+
"Вие използвате WordPress %s. Минималните изисквания за Polylang включват "
|
26 |
+
"WordPress %s."
|
27 |
+
|
28 |
+
#: ../polylang.php:125
|
29 |
+
msgid "For some reasons, Polylang could not create a table in your database."
|
30 |
+
msgstr ""
|
31 |
+
"По една или друга причина Polylang не успя да си създаде необходимата "
|
32 |
+
"таблица в базата данни. "
|
33 |
+
|
34 |
+
#: ../polylang.php:208
|
35 |
+
msgid "Error: Restore of local flags failed!"
|
36 |
+
msgstr "Грешка: възстановяването на знаменцата бе неуспешно!"
|
37 |
+
|
38 |
+
#: ../polylang.php:209
|
39 |
+
#, php-format
|
40 |
+
msgid "Please move your local flags from %s to %s"
|
41 |
+
msgstr "Моля преместете знаменцата от %s в %s"
|
42 |
+
|
43 |
+
#: ../include/calendar.php:106
|
44 |
+
#, php-format
|
45 |
+
msgid "%1$s %2$s"
|
46 |
+
msgstr "%1$s %2$s"
|
47 |
+
|
48 |
+
#: ../include/calendar.php:132 ../include/calendar.php:140
|
49 |
+
#, php-format
|
50 |
+
msgid "View posts for %1$s %2$s"
|
51 |
+
msgstr "Преглед на публикациите за %1$s %2$s"
|
52 |
+
|
53 |
+
#: ../include/media-translations.php:3 ../include/admin-filters.php:194
|
54 |
+
#: ../include/admin-filters.php:525 ../include/admin-filters.php:696
|
55 |
+
#: ../include/admin-filters.php:714 ../include/post-translations.php:8
|
56 |
+
#: ../include/term-translations.php:15
|
57 |
+
msgid "Language"
|
58 |
+
msgstr "Език"
|
59 |
+
|
60 |
+
#: ../include/media-translations.php:4 ../include/term-translations.php:16
|
61 |
+
msgid "Translation"
|
62 |
+
msgstr "Превод"
|
63 |
+
|
64 |
+
#: ../include/media-translations.php:18 ../include/post-translations.php:10
|
65 |
+
#: ../include/post-translations.php:33 ../include/term-translations.php:18
|
66 |
+
#: ../include/term-translations.php:65
|
67 |
+
msgid "Edit"
|
68 |
+
msgstr "Редактиране"
|
69 |
+
|
70 |
+
#: ../include/media-translations.php:26 ../include/post-translations.php:38
|
71 |
+
#: ../include/term-translations.php:54
|
72 |
+
msgid "Add new"
|
73 |
+
msgstr "Добави нов"
|
74 |
+
|
75 |
+
#: ../include/widget.php:6
|
76 |
+
msgid "Language Switcher"
|
77 |
+
msgstr "Джаджа за смяна на езика"
|
78 |
+
|
79 |
+
#: ../include/widget.php:6
|
80 |
+
msgid "Displays a language switcher"
|
81 |
+
msgstr "Показване на джаджа за смяна на езика"
|
82 |
+
|
83 |
+
#: ../include/widget.php:73
|
84 |
+
msgid "Title:"
|
85 |
+
msgstr "Заглавие:"
|
86 |
+
|
87 |
+
#: ../include/admin-base.php:50 ../include/admin-base.php:176
|
88 |
+
#: ../include/admin.php:290 ../include/admin-filters.php:221
|
89 |
+
msgid "Languages"
|
90 |
+
msgstr "Езици"
|
91 |
+
|
92 |
+
#: ../include/admin-base.php:55
|
93 |
+
msgid "About Polylang"
|
94 |
+
msgstr "Относно Polylang"
|
95 |
+
|
96 |
+
#: ../include/admin-base.php:149
|
97 |
+
msgid "Displays language names"
|
98 |
+
msgstr "Показване на имената на езиците"
|
99 |
+
|
100 |
+
#: ../include/admin-base.php:150
|
101 |
+
msgid "Displays flags"
|
102 |
+
msgstr "Показване на знаменца"
|
103 |
+
|
104 |
+
#: ../include/admin-base.php:151
|
105 |
+
msgid "Forces link to front page"
|
106 |
+
msgstr "Всички връзки сочат към началната страница"
|
107 |
+
|
108 |
+
#: ../include/admin-base.php:152
|
109 |
+
msgid "Hides the current language"
|
110 |
+
msgstr "Скриване на текущия език"
|
111 |
+
|
112 |
+
#: ../include/admin-base.php:154
|
113 |
+
msgid "Displays a language switcher at the end of the menu"
|
114 |
+
msgstr "Показване на джаджата за смяна на езици след менюто"
|
115 |
+
|
116 |
+
#: ../include/admin-base.php:155
|
117 |
+
msgid "Displays as dropdown"
|
118 |
+
msgstr "Показване като падащо меню"
|
119 |
+
|
120 |
+
#: ../include/admin-base.php:177
|
121 |
+
msgid "Filters content by language"
|
122 |
+
msgstr "Филтриране на съдържанието по език"
|
123 |
+
|
124 |
+
#: ../include/admin-base.php:184
|
125 |
+
msgid "Show all languages"
|
126 |
+
msgstr "Показване на всички езици"
|
127 |
+
|
128 |
+
#: ../include/admin.php:295
|
129 |
+
msgid "Menus"
|
130 |
+
msgstr "Менюта"
|
131 |
+
|
132 |
+
#: ../include/admin.php:297
|
133 |
+
msgid "Strings translation"
|
134 |
+
msgstr "Превод на низове"
|
135 |
+
|
136 |
+
#: ../include/admin.php:298 ../include/admin-filters.php:988
|
137 |
+
msgid "Settings"
|
138 |
+
msgstr "Настройки"
|
139 |
+
|
140 |
+
#: ../include/admin.php:317
|
141 |
+
msgid "Enter a valid WorPress locale"
|
142 |
+
msgstr "Въведете валидно (WordPress) местоположение"
|
143 |
+
|
144 |
+
#: ../include/admin.php:318
|
145 |
+
msgid "The language code must be 2 characters long"
|
146 |
+
msgstr "Кодът на езика трябва да бъде двубуквен"
|
147 |
+
|
148 |
+
#: ../include/admin.php:319
|
149 |
+
msgid "The language code must be unique"
|
150 |
+
msgstr "Кодът на езика трябва да бъде уникален"
|
151 |
+
|
152 |
+
#: ../include/admin.php:320
|
153 |
+
msgid "The language must have a name"
|
154 |
+
msgstr "Кодът на езика трябва да има наименование"
|
155 |
+
|
156 |
+
#: ../include/admin.php:321
|
157 |
+
msgid ""
|
158 |
+
"The language was created, but the WordPress language file was not "
|
159 |
+
"downloaded. Please install it manually."
|
160 |
+
msgstr ""
|
161 |
+
"Езикът беше добавен, но езиковият файл не може да бъде зареден. Моля "
|
162 |
+
"инсталирайте го ръчно. "
|
163 |
+
|
164 |
+
#: ../include/admin.php:409
|
165 |
+
msgid "Site Title"
|
166 |
+
msgstr "Заглавие на уебсайта"
|
167 |
+
|
168 |
+
#: ../include/admin.php:410
|
169 |
+
msgid "Tagline"
|
170 |
+
msgstr "Кратко описание"
|
171 |
+
|
172 |
+
#: ../include/admin.php:428
|
173 |
+
msgid "Widget title"
|
174 |
+
msgstr "Заглавие на джаджата"
|
175 |
+
|
176 |
+
#: ../include/admin-filters.php:176 ../include/admin-filters.php:753
|
177 |
+
msgid "Add new translation"
|
178 |
+
msgstr "Добавяне на нов превод"
|
179 |
+
|
180 |
+
#: ../include/admin-filters.php:190
|
181 |
+
msgid "— No Change —"
|
182 |
+
msgstr "— Без промяна —"
|
183 |
+
|
184 |
+
#: ../include/admin-filters.php:244
|
185 |
+
msgid "Page's language:"
|
186 |
+
msgstr "Език на страницата"
|
187 |
+
|
188 |
+
#: ../include/admin-filters.php:244
|
189 |
+
msgid "Post's language:"
|
190 |
+
msgstr "Език на публикацията"
|
191 |
+
|
192 |
+
#: ../include/admin-filters.php:305
|
193 |
+
msgid "(no parent)"
|
194 |
+
msgstr "(без родител)"
|
195 |
+
|
196 |
+
#: ../include/admin-filters.php:536 ../include/admin-filters.php:561
|
197 |
+
#: ../include/term-translations.php:6 ../include/term-translations.php:11
|
198 |
+
msgid "Translations"
|
199 |
+
msgstr "Преводи"
|
200 |
+
|
201 |
+
#: ../include/admin-filters.php:698 ../include/admin-filters.php:717
|
202 |
+
msgid "Sets the language"
|
203 |
+
msgstr "Избор на език"
|
204 |
+
|
205 |
+
#: ../include/admin-filters.php:879
|
206 |
+
msgid "None"
|
207 |
+
msgstr "Празно"
|
208 |
+
|
209 |
+
#: ../include/admin-filters.php:910
|
210 |
+
msgid "Theme locations and languages"
|
211 |
+
msgstr "Език и местоположение"
|
212 |
+
|
213 |
+
#: ../include/admin-filters.php:916
|
214 |
+
#, php-format
|
215 |
+
msgid ""
|
216 |
+
"Please go to the %slanguages page%s to set theme locations and languages"
|
217 |
+
msgstr "Моля посетете %sстраницата за настройка на езиците%s."
|
218 |
+
|
219 |
+
#: ../include/admin-filters.php:931
|
220 |
+
msgid "The widget is displayed for:"
|
221 |
+
msgstr "Джаджата се показва за:"
|
222 |
+
|
223 |
+
#: ../include/admin-filters.php:935
|
224 |
+
msgid "All languages"
|
225 |
+
msgstr "Всички езици"
|
226 |
+
|
227 |
+
#: ../include/admin-filters.php:959
|
228 |
+
msgid "Admin language"
|
229 |
+
msgstr "Езика на администраторския панел"
|
230 |
+
|
231 |
+
#: ../include/admin-filters.php:964
|
232 |
+
msgid "Wordpress default"
|
233 |
+
msgstr "Езика по подразбиране"
|
234 |
+
|
235 |
+
#: ../include/admin-filters.php:994
|
236 |
+
msgid "Upgrading language files…"
|
237 |
+
msgstr "Обновяване на езиковите файлове…"
|
238 |
+
|
239 |
+
#: ../include/languages-form.php:38
|
240 |
+
msgid "Edit language"
|
241 |
+
msgstr "Редактиране на езика"
|
242 |
+
|
243 |
+
#: ../include/languages-form.php:38 ../include/languages-form.php:105
|
244 |
+
msgid "Add new language"
|
245 |
+
msgstr "Добавяне на нов език"
|
246 |
+
|
247 |
+
#: ../include/languages-form.php:60
|
248 |
+
msgid "Choose a language"
|
249 |
+
msgstr "Изберете език"
|
250 |
+
|
251 |
+
#: ../include/languages-form.php:68
|
252 |
+
msgid "You can choose a language in the list or directly edit it below."
|
253 |
+
msgstr ""
|
254 |
+
"Можете да изберете език от падащото меню или да създадете нов използвайки "
|
255 |
+
"полетата по-долу. "
|
256 |
+
|
257 |
+
#: ../include/languages-form.php:72
|
258 |
+
msgid "Full name"
|
259 |
+
msgstr "Наименование"
|
260 |
+
|
261 |
+
#: ../include/languages-form.php:74
|
262 |
+
msgid "The name is how it is displayed on your site (for example: English)."
|
263 |
+
msgstr ""
|
264 |
+
"Наименованието както ще се показва в уебсайта (например: български, English)"
|
265 |
+
|
266 |
+
#: ../include/languages-form.php:78
|
267 |
+
msgid "Locale"
|
268 |
+
msgstr "Местоположение"
|
269 |
+
|
270 |
+
#: ../include/languages-form.php:81
|
271 |
+
msgid ""
|
272 |
+
"Wordpress Locale for the language (for example: en_US). You will need to "
|
273 |
+
"install the .mo file for this language."
|
274 |
+
msgstr ""
|
275 |
+
"Местоположение според WordPress (например: bg_BG, en_GB). Ще трябва да "
|
276 |
+
"инсталирате съответния езиков файл (.mo). "
|
277 |
+
|
278 |
+
#: ../include/languages-form.php:85
|
279 |
+
msgid "Language code"
|
280 |
+
msgstr "Код на езика"
|
281 |
+
|
282 |
+
#: ../include/languages-form.php:87
|
283 |
+
msgid "2-letters ISO 639-1 language code (for example: en)"
|
284 |
+
msgstr "Двубуквеният код на езика според ISO 639-1 (например: bg, en)"
|
285 |
+
|
286 |
+
#: ../include/languages-form.php:91
|
287 |
+
msgid "Text direction"
|
288 |
+
msgstr "Посока на писане"
|
289 |
+
|
290 |
+
#: ../include/languages-form.php:93
|
291 |
+
msgid "left to right"
|
292 |
+
msgstr "отляво надясно"
|
293 |
+
|
294 |
+
#: ../include/languages-form.php:95
|
295 |
+
msgid "right to left"
|
296 |
+
msgstr "отдясно наляво"
|
297 |
+
|
298 |
+
#: ../include/languages-form.php:96
|
299 |
+
msgid "Choose the text direction for the language"
|
300 |
+
msgstr "Изберете посоката на писане"
|
301 |
+
|
302 |
+
#: ../include/languages-form.php:100
|
303 |
+
msgid "Order"
|
304 |
+
msgstr "Подредба"
|
305 |
+
|
306 |
+
#: ../include/languages-form.php:102
|
307 |
+
msgid "Position of the language in the language switcher"
|
308 |
+
msgstr "Кой подред ще се показва езикът в джаджата за смяна на езици"
|
309 |
+
|
310 |
+
#: ../include/languages-form.php:105
|
311 |
+
msgid "Update"
|
312 |
+
msgstr "Обновяване"
|
313 |
+
|
314 |
+
#: ../include/languages-form.php:151
|
315 |
+
msgid "Language switcher"
|
316 |
+
msgstr "Джаджа за смяна на езика"
|
317 |
+
|
318 |
+
#: ../include/languages-form.php:175
|
319 |
+
msgid "Clean strings translation database"
|
320 |
+
msgstr "Изтриване на запазените преводи "
|
321 |
+
|
322 |
+
#: ../include/languages-form.php:191
|
323 |
+
msgid "Default language"
|
324 |
+
msgstr "Език по подразбиране"
|
325 |
+
|
326 |
+
#: ../include/languages-form.php:203
|
327 |
+
msgid ""
|
328 |
+
"There are posts, pages, categories or tags without language set. Do you want "
|
329 |
+
"to set them all to default language ?"
|
330 |
+
msgstr ""
|
331 |
+
"Намерени са публикации, страници, категории и етикети, за които не е посочен "
|
332 |
+
"език. Искате ли да бъдат прехвърлени към езика по подразбиране?"
|
333 |
+
|
334 |
+
#: ../include/languages-form.php:211
|
335 |
+
msgid "Detect browser language"
|
336 |
+
msgstr "Засичане на езика на браузъра"
|
337 |
+
|
338 |
+
#: ../include/languages-form.php:217
|
339 |
+
msgid ""
|
340 |
+
"When the front page is visited, set the language according to the browser "
|
341 |
+
"preference"
|
342 |
+
msgstr ""
|
343 |
+
"Когато потребителят посети началната страница, езикът му да се настройва "
|
344 |
+
"според предпочитанията на браузъра. "
|
345 |
+
|
346 |
+
#: ../include/languages-form.php:224
|
347 |
+
msgid "URL modifications"
|
348 |
+
msgstr "Промени в адреса (URL)"
|
349 |
+
|
350 |
+
#: ../include/languages-form.php:230
|
351 |
+
msgid ""
|
352 |
+
"The language is set from content. Posts, pages, categories and tags urls are "
|
353 |
+
"not modified."
|
354 |
+
msgstr ""
|
355 |
+
"Езикът зависи от съдържанието. Адресите (URLs) на публикациите, страниците, "
|
356 |
+
"категориите и етикетите не се променят. "
|
357 |
+
|
358 |
+
#: ../include/languages-form.php:238
|
359 |
+
msgid ""
|
360 |
+
"The language code, for example /en/, is added to all urls when using pretty "
|
361 |
+
"permalinks."
|
362 |
+
msgstr ""
|
363 |
+
"Кодът на езика (например /bg/, /en/) се добавя към всички адреси (URLs)."
|
364 |
+
|
365 |
+
#: ../include/languages-form.php:247
|
366 |
+
msgid "Remove /language/ in pretty permalinks. Example:"
|
367 |
+
msgstr "Премахване на /language/ от адресите (URLs). Например:"
|
368 |
+
|
369 |
+
#: ../include/languages-form.php:256
|
370 |
+
msgid "Keep /language/ in pretty permalinks. Example:"
|
371 |
+
msgstr "Запазване на /language/ в адресите (URLs). Например:"
|
372 |
+
|
373 |
+
#: ../include/languages-form.php:265
|
374 |
+
msgid "Hide URL language information for default language"
|
375 |
+
msgstr "Скриване на информацията за езика от адресите за езика по подразбиране"
|
376 |
+
|
377 |
+
#: ../include/languages-form.php:274
|
378 |
+
#, php-format
|
379 |
+
msgid ""
|
380 |
+
"When using static front page, redirect the language page (example: %s) to "
|
381 |
+
"the front page in the right language"
|
382 |
+
msgstr ""
|
383 |
+
"При използване на статична начална страница адресите от типа %s да сочат към "
|
384 |
+
"началната страница на съответния език"
|
385 |
+
|
386 |
+
#: ../include/languages-form.php:281
|
387 |
+
msgid "Synchronization"
|
388 |
+
msgstr "Синхронизация"
|
389 |
+
|
390 |
+
#: ../include/languages-form.php:287
|
391 |
+
msgid ""
|
392 |
+
"Allow to synchronize categories, tags, featured image and other metas "
|
393 |
+
"between translations of a post or page"
|
394 |
+
msgstr ""
|
395 |
+
"Позволяване синхронизацията на категории, етикети, картинки и други meta "
|
396 |
+
"неща между различните преводи на публикациите и страниците"
|
397 |
+
|
398 |
+
#: ../include/post-translations.php:5
|
399 |
+
msgid "ID of pages in other languages:"
|
400 |
+
msgstr "Ключове на преводите на тази страница"
|
401 |
+
|
402 |
+
#: ../include/post-translations.php:5
|
403 |
+
msgid "ID of posts in other languages:"
|
404 |
+
msgstr "Ключове на преводите на тази публикация"
|
405 |
+
|
406 |
+
#: ../include/post-translations.php:9
|
407 |
+
msgid "Page ID"
|
408 |
+
msgstr "Ключ"
|
409 |
+
|
410 |
+
#: ../include/post-translations.php:9
|
411 |
+
msgid "Post ID"
|
412 |
+
msgstr "Ключ"
|
413 |
+
|
414 |
+
#: ../include/about.php:3
|
415 |
+
#, php-format
|
416 |
+
msgid ""
|
417 |
+
"Polylang is provided with an extensive %sdocumentation%s (in English only). "
|
418 |
+
"It includes information on how to set up your multilingual site and use it "
|
419 |
+
"on a daily basis, a FAQ, as well as a documentation for programmers to adapt "
|
420 |
+
"their plugins and themes."
|
421 |
+
msgstr ""
|
422 |
+
"Polylang има подробна %sдокументация на английски%s, съдържаща информация за "
|
423 |
+
"първоначалното настройване и поддръжка на многоезични уебсайтове, отговори "
|
424 |
+
"на често задавани въпроси, както и документация за разработчици за "
|
425 |
+
"интегриране на Polylang с техните разширения и теми. "
|
426 |
+
|
427 |
+
#: ../include/about.php:8
|
428 |
+
#, php-format
|
429 |
+
msgid ""
|
430 |
+
"You will also find useful information in the %ssupport forum%s. However "
|
431 |
+
"don't forget to make a search before posting a new topic."
|
432 |
+
msgstr ""
|
433 |
+
"Освен това можете да намерите полезна информация във %sфорума за поддръжка"
|
434 |
+
"%s; но не забравяйте да потърсите дали някой вече не е задал Вашия въпрос "
|
435 |
+
"преди да изпратите запитване. "
|
436 |
+
|
437 |
+
#: ../include/about.php:14
|
438 |
+
#, php-format
|
439 |
+
msgid ""
|
440 |
+
"Polylang is free of charge and is released under the same license as "
|
441 |
+
"WordPress, the %sGPL%s."
|
442 |
+
msgstr ""
|
443 |
+
"Polylang е безплатно разширение, публикувано под същия лиценз като "
|
444 |
+
"WordPress, %sGPL%s."
|
445 |
+
|
446 |
+
#: ../include/about.php:18
|
447 |
+
#, php-format
|
448 |
+
msgid "If you wonder how you can help the project, just %sread this%s."
|
449 |
+
msgstr "Ако се питате как можете и Вие да помогнете, %sпрочетете това%s. "
|
450 |
+
|
451 |
+
#: ../include/about.php:22
|
452 |
+
msgid ""
|
453 |
+
"Finally if you like this plugin or if it helps your business, donations to "
|
454 |
+
"the author are greatly appreciated."
|
455 |
+
msgstr ""
|
456 |
+
"Не на последно място, ако наистина харесвате това разширение и/или то помага "
|
457 |
+
"на Вашия бизнес, авторът му високо оценява всяко едно дарение."
|
458 |
+
|
459 |
+
#: ../include/core.php:547
|
460 |
+
msgid "Search"
|
461 |
+
msgstr "Търсене"
|
462 |
+
|
463 |
+
#: ../include/term-translations.php:48
|
464 |
+
msgid "No untranslated term"
|
465 |
+
msgstr "Няма непреведени низове"
|
466 |
+
|
467 |
+
#: ../include/list-table.php:27
|
468 |
+
msgid "Delete"
|
469 |
+
msgstr "Изтриване"
|
470 |
+
|
471 |
+
#: ../include/list-table.php:47
|
472 |
+
msgid "Code"
|
473 |
+
msgstr "Код"
|
474 |
+
|
475 |
+
#: ../include/list-table.php:49
|
476 |
+
msgid "Flag"
|
477 |
+
msgstr "Знаменце"
|
478 |
+
|
479 |
+
#: ../include/list-table.php:50
|
480 |
+
msgid "Posts"
|
481 |
+
msgstr "Публикации"
|
482 |
+
|
483 |
+
#: ../include/list-table.php:105
|
484 |
+
msgid "Strings translations"
|
485 |
+
msgstr "Превод на низове"
|
486 |
+
|
487 |
+
#: ../include/list-table.php:131
|
488 |
+
msgid "Name"
|
489 |
+
msgstr "Наименование"
|
490 |
+
|
491 |
+
#: ../include/list-table.php:132
|
492 |
+
msgid "String"
|
493 |
+
msgstr "Низ"
|
polylang.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/*
|
3 |
Plugin Name: Polylang
|
4 |
Plugin URI: http://wordpress.org/extend/plugins/polylang/
|
5 |
-
Version: 0.9.
|
6 |
Author: F. Demarle
|
7 |
Description: Adds multilingual capability to Wordpress
|
8 |
*/
|
@@ -24,7 +24,7 @@ Description: Adds multilingual capability to Wordpress
|
|
24 |
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
25 |
*/
|
26 |
|
27 |
-
define('POLYLANG_VERSION', '0.9.
|
28 |
define('PLL_MIN_WP_VERSION', '3.1');
|
29 |
|
30 |
define('POLYLANG_DIR', dirname(__FILE__)); // our directory
|
2 |
/*
|
3 |
Plugin Name: Polylang
|
4 |
Plugin URI: http://wordpress.org/extend/plugins/polylang/
|
5 |
+
Version: 0.9.3
|
6 |
Author: F. Demarle
|
7 |
Description: Adds multilingual capability to Wordpress
|
8 |
*/
|
24 |
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
25 |
*/
|
26 |
|
27 |
+
define('POLYLANG_VERSION', '0.9.3');
|
28 |
define('PLL_MIN_WP_VERSION', '3.1');
|
29 |
|
30 |
define('POLYLANG_DIR', dirname(__FILE__)); // our directory
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_i
|
|
4 |
Tags: multilingual, bilingual, translate, translation, language, multilanguage, i18n, international, l10n, localization
|
5 |
Requires at least: 3.1
|
6 |
Tested up to: 3.4.2
|
7 |
-
Stable tag: 0.9.
|
8 |
|
9 |
Polylang adds multilingual content management support to WordPress.
|
10 |
|
@@ -21,7 +21,7 @@ You write posts, pages and create categories and post tags as usual, and then de
|
|
21 |
* A language switcher is provided as a widget or in the nav menu
|
22 |
* As a bonus, each user can set the WordPress admin language in its profile
|
23 |
|
24 |
-
The plugin admin interface is currently available in
|
25 |
|
26 |
|
27 |
Other [contributions](http://wordpress.org/extend/plugins/polylang/other_notes/) are welcome !
|
@@ -80,7 +80,7 @@ You can subscribe to the tag ['polylang-dev'](http://wordpress.org/tags/polylang
|
|
80 |
|
81 |
= Translate the admin interface =
|
82 |
|
83 |
-
Polylang is already available in
|
84 |
|
85 |
= Communicate =
|
86 |
|
@@ -92,7 +92,15 @@ Every suggestions are welcome.
|
|
92 |
|
93 |
== Changelog ==
|
94 |
|
95 |
-
= 0.9.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
96 |
|
97 |
* Support new WordPress (WP 3.5+) convention for js and css files naming
|
98 |
* Improve performance, mainly on frontend
|
4 |
Tags: multilingual, bilingual, translate, translation, language, multilanguage, i18n, international, l10n, localization
|
5 |
Requires at least: 3.1
|
6 |
Tested up to: 3.4.2
|
7 |
+
Stable tag: 0.9.3
|
8 |
|
9 |
Polylang adds multilingual content management support to WordPress.
|
10 |
|
21 |
* A language switcher is provided as a widget or in the nav menu
|
22 |
* As a bonus, each user can set the WordPress admin language in its profile
|
23 |
|
24 |
+
The plugin admin interface is currently available in 17 languages: English, French, German contributed by [Christian Ries](http://www.singbyfoot.lu), Russian contributed by [yoyurec](http://yoyurec.in.ua), Greek contributed by [theodotos](http://www.ubuntucy.org), Dutch contributed by [AlbertGn](http://wordpress.org/support/profile/albertgn), Hebrew contributed by [ArielK](http://www.arielk.net), Polish contributed by [Peter Paciorkiewicz](http://www.paciorkiewicz.pl), Latvian contributed by [@AndyDeGroo](http://twitter.com/AndyDeGroo), Italian contributed by [Luca Barbetti](http://wordpress.org/support/profile/lucabarbetti), Danish contributed by [Compute](http://wordpress.org/support/profile/compute), Spanish contributed by Curro, Portuguese contributed by [Vitor Carvalho](http://vcarvalho.com/), Lithuanian contributed by [Naglis Jonaitis](http://najo.lt/), Turkish contributed by [darchws](http://darch.ws/), Finnish contributed by [Jani Alha](http://www.wysiwyg.fi), Bulgarian contributed by [pavelsof](http://wordpress.org/support/profile/pavelsof)
|
25 |
|
26 |
|
27 |
Other [contributions](http://wordpress.org/extend/plugins/polylang/other_notes/) are welcome !
|
80 |
|
81 |
= Translate the admin interface =
|
82 |
|
83 |
+
Polylang is already available in 17 languages. It's very easy to add a new one ! Download [poedit](http://www.poedit.net/download.php) (available for Windows, Mac OS X and Linux). Rename the file polylang.pot found in the polylang/languages directory into something like polylang-your_locale.po. Open the file with poedit and start translating (keeping strange codes such as %s, %1$s as is). Once done, just save and you will get two files polylang-your_locale.po and polylang-your_locale.mo that you can send to the author. The translation will be included with the next release.
|
84 |
|
85 |
= Communicate =
|
86 |
|
92 |
|
93 |
== Changelog ==
|
94 |
|
95 |
+
= 0.9.3 (2012-10-08) =
|
96 |
+
|
97 |
+
* Add Bulgarian translation contributed by [pavelsof](http://wordpress.org/support/profile/pavelsof)
|
98 |
+
* Add compatibility with WPML API for strings translations
|
99 |
+
* Bug correction: dates are not translated (introduced in 0.9.2)
|
100 |
+
* Bug correction: the language is lost when keeping - No change - for language in bulk edit
|
101 |
+
* Bug correction: categories and tags are duplicate (when default language is set automatically to existing content and categories and tags share the same name)
|
102 |
+
|
103 |
+
= 0.9.2 (2012-09-30) =
|
104 |
|
105 |
* Support new WordPress (WP 3.5+) convention for js and css files naming
|
106 |
* Improve performance, mainly on frontend
|