Polylang - Version 1.5.1

Version Description

Polylang 1.2 introduced major internal changes. More than ever, make a database backup before upgrading from 1.1.6 or older! If you are using a version older than 0.8, please ugrade to 0.9.8 before ugrading to 1.5.1

=

Download this release

Release Info

Developer Chouby
Plugin Icon 128x128 Polylang
Version 1.5.1
Comparing to
See all releases

Code changes from version 1.5 to 1.5.1

admin/admin-filters-columns.php CHANGED
@@ -78,7 +78,7 @@ class PLL_Admin_Filters_Columns {
78
  $columns[] = 'language_'.$language->slug;
79
  }
80
 
81
- return reset($columns);
82
  }
83
 
84
  /*
78
  $columns[] = 'language_'.$language->slug;
79
  }
80
 
81
+ return empty($columns) ? '' : reset($columns);
82
  }
83
 
84
  /*
admin/admin-filters-post.php CHANGED
@@ -251,12 +251,13 @@ class PLL_Admin_Filters_Post extends PLL_Admin_Filters_Post_Base {
251
  elseif (isset($_REQUEST['inline_lang_choice'])) {
252
  // bulk edit does not modify the language
253
  if (isset($_REQUEST['bulk_edit']) && $_REQUEST['inline_lang_choice'] == -1)
254
- continue;
255
 
256
  isset($_REQUEST['bulk_edit']) ? check_admin_referer('bulk-posts') : check_admin_referer('inlineeditnonce', '_inline_edit');
257
 
258
  if (($old_lang = $this->model->get_post_language($post_id)) && $old_lang->slug != $_REQUEST['inline_lang_choice'])
259
  $this->model->delete_translation('post', $post_id);
 
260
  $this->model->set_post_language($post_id, $lang = $_REQUEST['inline_lang_choice']);
261
  }
262
 
251
  elseif (isset($_REQUEST['inline_lang_choice'])) {
252
  // bulk edit does not modify the language
253
  if (isset($_REQUEST['bulk_edit']) && $_REQUEST['inline_lang_choice'] == -1)
254
+ return;
255
 
256
  isset($_REQUEST['bulk_edit']) ? check_admin_referer('bulk-posts') : check_admin_referer('inlineeditnonce', '_inline_edit');
257
 
258
  if (($old_lang = $this->model->get_post_language($post_id)) && $old_lang->slug != $_REQUEST['inline_lang_choice'])
259
  $this->model->delete_translation('post', $post_id);
260
+
261
  $this->model->set_post_language($post_id, $lang = $_REQUEST['inline_lang_choice']);
262
  }
263
 
admin/admin-filters-term.php CHANGED
@@ -190,6 +190,7 @@ class PLL_Admin_Filters_Term {
190
 
191
  if (isset($_POST['inline-save-tax']) && $this->model->get_term_language($term_id)->slug != $_POST['inline_lang_choice'])
192
  $this->model->delete_translation('term', $term_id);
 
193
  $this->model->set_term_language($term_id, $_POST['inline_lang_choice']);
194
  }
195
 
190
 
191
  if (isset($_POST['inline-save-tax']) && $this->model->get_term_language($term_id)->slug != $_POST['inline_lang_choice'])
192
  $this->model->delete_translation('term', $term_id);
193
+
194
  $this->model->set_term_language($term_id, $_POST['inline_lang_choice']);
195
  }
196
 
admin/admin-nav-menu.php CHANGED
@@ -204,17 +204,27 @@ class PLL_Admin_Nav_Menu {
204
  if ( ! current_user_can('edit_theme_options') )
205
  wp_die( __( 'Cheatin’ uh?' ) );
206
 
207
- if (isset($_REQUEST['action']) && 'locations' == $_REQUEST['action'])
208
  check_admin_referer( 'save-menu-locations' );
 
 
209
 
210
- elseif (isset($_REQUEST['action']) && 'update' == $_REQUEST['action'])
211
  check_admin_referer( 'update-nav_menu', 'update-nav-menu-nonce' );
 
 
 
 
 
 
 
 
 
212
 
213
  else
214
- return; // not called from WP Admin
215
 
216
  $default = pll_default_language();
217
- $arr = array();
218
 
219
  // extract language and menu from locations
220
  foreach ($mods['nav_menu_locations'] as $loc => $menu) {
204
  if ( ! current_user_can('edit_theme_options') )
205
  wp_die( __( 'Cheatin’ uh?' ) );
206
 
207
+ if (isset($_REQUEST['action']) && 'locations' == $_REQUEST['action']) {
208
  check_admin_referer( 'save-menu-locations' );
209
+ $this->options['nav_menus'][$this->theme] = array();
210
+ }
211
 
212
+ elseif (isset($_REQUEST['action']) && 'update' == $_REQUEST['action']) {
213
  check_admin_referer( 'update-nav_menu', 'update-nav-menu-nonce' );
214
+ $this->options['nav_menus'][$this->theme] = array();
215
+ }
216
+
217
+ // customizer
218
+ // don't reset locations in this case.
219
+ // see http://wordpress.org/support/topic/menus-doesnt-show-and-not-saved-in-theme-settings-multilingual-site
220
+ elseif (isset($_REQUEST['action']) && 'customize_save' == $_REQUEST['action']) {
221
+ check_ajax_referer( 'save-customize_' . $GLOBALS['wp_customize']->get_stylesheet(), 'nonce' );
222
+ }
223
 
224
  else
225
+ return; // not called from WP
226
 
227
  $default = pll_default_language();
 
228
 
229
  // extract language and menu from locations
230
  foreach ($mods['nav_menu_locations'] as $loc => $menu) {
admin/settings.php CHANGED
@@ -85,6 +85,8 @@ class PLL_Settings {
85
  $tabs['settings'] = __('Settings', 'polylang');
86
  }
87
 
 
 
88
  switch($this->active_tab) {
89
  case 'lang':
90
  // prepare the list table of languages
85
  $tabs['settings'] = __('Settings', 'polylang');
86
  }
87
 
88
+ $tabs = apply_filters('pll_settings_tabs', $tabs);
89
+
90
  switch($this->active_tab) {
91
  case 'lang':
92
  // prepare the list table of languages
admin/table-string.php CHANGED
@@ -85,7 +85,7 @@ class PLL_Table_String extends WP_List_Table {
85
  foreach($item['translations'] as $key => $translation) {
86
  $input_type = $item['multiline'] ?
87
  '<textarea name="translation[%1$s][%2$s]" id="%1$s-%2$s">%4$s</textarea>' :
88
- '<input name="translation[%1$s][%2$s]" id="%1$s-%2$s" value="%4$s" />';
89
  $out .= sprintf('<div class="translation"><label for="%1$s-%2$s">%3$s</label>'.$input_type.'</div>'."\n",
90
  esc_attr($key),
91
  esc_attr($item['row']),
85
  foreach($item['translations'] as $key => $translation) {
86
  $input_type = $item['multiline'] ?
87
  '<textarea name="translation[%1$s][%2$s]" id="%1$s-%2$s">%4$s</textarea>' :
88
+ '<input type="text" name="translation[%1$s][%2$s]" id="%1$s-%2$s" value="%4$s" />';
89
  $out .= sprintf('<div class="translation"><label for="%1$s-%2$s">%3$s</label>'.$input_type.'</div>'."\n",
90
  esc_attr($key),
91
  esc_attr($item['row']),
admin/view-languages.php CHANGED
@@ -383,6 +383,7 @@ case 'settings': ?><?php
383
  break;
384
 
385
  default:
 
386
  break;
387
  }?>
388
 
383
  break;
384
 
385
  default:
386
+ do_action('pll_settings_active_tab_' . $this->active_tab);
387
  break;
388
  }?>
389
 
frontend/frontend-filters.php CHANGED
@@ -84,7 +84,7 @@ class PLL_Frontend_Filters extends PLL_Filters{
84
  static $posts = array(); // the fonction may be often called so let's store the result
85
 
86
  // returns the current page if there is no translation to avoid ugly notices
87
- return isset($this->curlang) && $v && (isset($posts[$v]) || $posts[$v] = $this->model->get_post($v, $this->curlang)) ? $posts[$v] : $v;
88
  }
89
 
90
  /*
84
  static $posts = array(); // the fonction may be often called so let's store the result
85
 
86
  // returns the current page if there is no translation to avoid ugly notices
87
+ return isset($this->curlang) && $v && (isset($posts[$this->model->blog_id][$v]) || $posts[$this->model->blog_id][$v] = $this->model->get_post($v, $this->curlang)) ? $posts[$this->model->blog_id][$v] : $v;
88
  }
89
 
90
  /*
frontend/frontend-links.php CHANGED
@@ -233,8 +233,8 @@ class PLL_Frontend_Links extends PLL_Links {
233
  public function get_translation_url($language) {
234
  static $translation_url = array(); // used to cache results
235
 
236
- if (isset($translation_url[$language->slug]))
237
- return $translation_url[$language->slug];
238
 
239
  global $wp_query;
240
  $qv = $wp_query->query_vars;
@@ -279,7 +279,7 @@ class PLL_Frontend_Links extends PLL_Links {
279
  elseif (is_home() || is_tax('language') )
280
  $url = $this->get_home_url($language);
281
 
282
- return $translation_url[$language->slug] = apply_filters('pll_translation_url', (isset($url) && !is_wp_error($url) ? $url : null), $language->slug);
283
  }
284
 
285
  /*
233
  public function get_translation_url($language) {
234
  static $translation_url = array(); // used to cache results
235
 
236
+ if (isset($translation_url[$this->model->blog_id][$language->slug]))
237
+ return $translation_url[$this->model->blog_id][$language->slug];
238
 
239
  global $wp_query;
240
  $qv = $wp_query->query_vars;
279
  elseif (is_home() || is_tax('language') )
280
  $url = $this->get_home_url($language);
281
 
282
+ return $translation_url[$this->model->blog_id][$language->slug] = apply_filters('pll_translation_url', (isset($url) && !is_wp_error($url) ? $url : null), $language->slug);
283
  }
284
 
285
  /*
frontend/frontend-nav-menu.php CHANGED
@@ -140,7 +140,7 @@ class PLL_Frontend_Nav_Menu {
140
  public function nav_menu_locations($menus) {
141
  if (is_array($menus)) {
142
  // support for theme customizer
143
- // let's look for multilingual menu locations directly in $_POST as tehre are not in customizer object
144
  if (isset($_POST['wp_customize'], $_POST['customized'])) {
145
  $customized = json_decode(wp_unslash($_POST['customized']));
146
 
@@ -161,10 +161,8 @@ class PLL_Frontend_Nav_Menu {
161
  else {
162
  $theme = get_option('stylesheet');
163
 
164
- foreach ($menus as $loc => $menu) {
165
- if (!empty($this->options['nav_menus'][$theme][$loc][$this->curlang->slug]))
166
- $menus[$loc] = $this->options['nav_menus'][$theme][$loc][$this->curlang->slug];
167
- }
168
  }
169
  }
170
  return $menus;
140
  public function nav_menu_locations($menus) {
141
  if (is_array($menus)) {
142
  // support for theme customizer
143
+ // let's look for multilingual menu locations directly in $_POST as there are not in customizer object
144
  if (isset($_POST['wp_customize'], $_POST['customized'])) {
145
  $customized = json_decode(wp_unslash($_POST['customized']));
146
 
161
  else {
162
  $theme = get_option('stylesheet');
163
 
164
+ foreach ($menus as $loc => $menu)
165
+ $menus[$loc] = empty($this->options['nav_menus'][$theme][$loc][$this->curlang->slug]) ? 0 : $this->options['nav_menus'][$theme][$loc][$this->curlang->slug];
 
 
166
  }
167
  }
168
  return $menus;
frontend/frontend.php CHANGED
@@ -18,7 +18,7 @@
18
  *
19
  * @since 1.2
20
  */
21
- class PLL_Frontend extends PLL_Base{
22
  public $curlang;
23
  public $links, $choose_lang, $filters, $filters_search, $auto_translate;
24
 
@@ -131,5 +131,38 @@ class PLL_Frontend extends PLL_Base{
131
  public function auto_translate() {
132
  $this->auto_translate = new PLL_Frontend_Auto_Translate($this);
133
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
134
  }
135
 
18
  *
19
  * @since 1.2
20
  */
21
+ class PLL_Frontend extends PLL_Base {
22
  public $curlang;
23
  public $links, $choose_lang, $filters, $filters_search, $auto_translate;
24
 
131
  public function auto_translate() {
132
  $this->auto_translate = new PLL_Frontend_Auto_Translate($this);
133
  }
134
+
135
+ /*
136
+ * resets some variables when switching blog
137
+ * overrides parent method
138
+ *
139
+ * @since 1.5.1
140
+ */
141
+ public function switch_blog($new_blog, $old_blog) {
142
+ // need to check that some languages are defined when user is logged in, has several blogs, some without any languages
143
+ if (parent::switch_blog($new_blog, $old_blog) && did_action('pll_language_defined') && $this->model->get_languages_list()) {
144
+ static $restore_curlang;
145
+ if (empty($restore_curlang))
146
+ $restore_curlang = $this->curlang->slug; // to always remember the current language through blogs
147
+
148
+ // FIXME need some simplification as there are too many variables storing the same value
149
+ $lang = $this->model->get_language($restore_curlang);
150
+ $this->curlang = $lang ? $lang : $this->model->get_language($this->options['default_lang']);
151
+ $this->choose_lang->curlang = $this->links->curlang = $this->curlang;
152
+
153
+ $this->links->home = $this->links_model->home; // set in parent class
154
+
155
+ if ('page' == get_option('show_on_front')) {
156
+ $this->choose_lang->page_on_front = $this->links->page_on_front = get_option('page_on_front');
157
+ $this->choose_lang->page_for_posts = $this->links->page_for_posts = get_option('page_for_posts');
158
+ }
159
+ else {
160
+ $this->choose_lang->page_on_front = $this->links->page_on_front = 0;
161
+ $this->choose_lang->page_for_posts = $this->links->page_for_posts = 0;
162
+ }
163
+
164
+ $this->filters_search->using_permalinks = $this->links->using_permalinks = (bool) get_option('permalink_structure');
165
+ }
166
+ }
167
  }
168
 
include/base.php CHANGED
@@ -24,6 +24,9 @@ abstract class PLL_Base {
24
 
25
  // user defined strings translations
26
  add_action('pll_language_defined', array(&$this, 'load_strings_translations'), 5);
 
 
 
27
  }
28
 
29
  /*
@@ -66,6 +69,27 @@ abstract class PLL_Base {
66
  $GLOBALS['l10n']['pll_string'] = &$mo;
67
  }
68
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
69
  /*
70
  * some backward compatibility with Polylang < 1.2
71
  * allows for example to call $polylang->get_languages_list() instead of $polylang->model->get_languages_list()
24
 
25
  // user defined strings translations
26
  add_action('pll_language_defined', array(&$this, 'load_strings_translations'), 5);
27
+
28
+ // switch_to_blog
29
+ add_action('switch_blog', array(&$this, 'switch_blog'), 10, 2);
30
  }
31
 
32
  /*
69
  $GLOBALS['l10n']['pll_string'] = &$mo;
70
  }
71
 
72
+ /*
73
+ * resets some variables when switching blog
74
+ * applies only if Polylang is active on the new blog
75
+ *
76
+ * @since 1.5.1
77
+ *
78
+ * @return bool not used by WP but by child class
79
+ */
80
+ public function switch_blog($new_blog, $old_blog) {
81
+ $plugins = ($sitewide_plugins = get_site_option('active_sitewide_plugins')) && is_array($sitewide_plugins) ? array_keys($sitewide_plugins) : array();
82
+ $plugins = array_merge($plugins, get_option('active_plugins'));
83
+
84
+ if ($new_blog != $old_blog && in_array(POLYLANG_BASENAME, $plugins)) {
85
+ $this->model->blog_id = $new_blog;
86
+ $this->options = get_option('polylang'); // needed for menus
87
+ $this->links_model = $this->model->get_links_model();
88
+ return true;
89
+ }
90
+ return false;
91
+ }
92
+
93
  /*
94
  * some backward compatibility with Polylang < 1.2
95
  * allows for example to call $polylang->get_languages_list() instead of $polylang->model->get_languages_list()
include/links-directory.php CHANGED
@@ -23,16 +23,22 @@ class PLL_Links_Directory extends PLL_Links_Model {
23
  public function __construct(&$model) {
24
  parent::__construct($model);
25
 
 
 
 
 
 
 
26
  // inspired by wp-includes/rewrite.php
27
  $this->root = preg_match('#^/*' . $this->index . '#', get_option('permalink_structure')) ? $this->index . '/' : '';
28
 
29
- add_action ('setup_theme', array(&$this, 'add_permastruct'));
30
 
31
  // refresh rewrite rules if the 'page_on_front' option is modified
32
  add_action('update_option_page_on_front', 'flush_rewrite_rules');
33
 
34
  // make sure to prepare rewrite rules when flushing
35
- add_action ('pre_option_rewrite_rules', array(&$this, 'prepare_rewrite_rules'));
36
  }
37
 
38
  /*
@@ -70,7 +76,7 @@ class PLL_Links_Directory extends PLL_Links_Model {
70
 
71
  if (!empty($languages)) {
72
  $pattern = str_replace('/', '\/', $this->home . '/' . $this->root);
73
- $pattern = '#' . $pattern . ($this->options['rewrite'] ? '' : 'language') . '('.implode('|', $languages).')(\/|$)#';
74
  $url = preg_replace($pattern, $this->home . '/' . $this->root, $url);
75
  }
76
  return $url;
23
  public function __construct(&$model) {
24
  parent::__construct($model);
25
 
26
+ static $done = false;
27
+ if ($done)
28
+ return;
29
+
30
+ $done = true; // avoid duplicating rewrite rules when switching blog thanks to @ScreenFeedFr
31
+
32
  // inspired by wp-includes/rewrite.php
33
  $this->root = preg_match('#^/*' . $this->index . '#', get_option('permalink_structure')) ? $this->index . '/' : '';
34
 
35
+ add_action('setup_theme', array(&$this, 'add_permastruct'));
36
 
37
  // refresh rewrite rules if the 'page_on_front' option is modified
38
  add_action('update_option_page_on_front', 'flush_rewrite_rules');
39
 
40
  // make sure to prepare rewrite rules when flushing
41
+ add_action('pre_option_rewrite_rules', array(&$this, 'prepare_rewrite_rules'));
42
  }
43
 
44
  /*
76
 
77
  if (!empty($languages)) {
78
  $pattern = str_replace('/', '\/', $this->home . '/' . $this->root);
79
+ $pattern = '#' . $pattern . ($this->options['rewrite'] ? '' : 'language\/') . '('.implode('|', $languages).')(\/|$)#';
80
  $url = preg_replace($pattern, $this->home . '/' . $this->root, $url);
81
  }
82
  return $url;
include/links-domain.php CHANGED
@@ -49,7 +49,7 @@ class PLL_Links_Domain extends PLL_Links_Model {
49
  * @return string language slug
50
  */
51
  public function get_language_from_url() {
52
- return ($lang = array_search( (is_ssl() ? 'https://' : 'http://') . $_SERVER['HTTP_HOST'], $this->options['domains'] ) ) ? $lang : $this->options['default_lang'];
53
  }
54
 
55
  /*
49
  * @return string language slug
50
  */
51
  public function get_language_from_url() {
52
+ return ($lang = array_search( (is_ssl() ? 'https://' : 'http://') . $_SERVER['HTTP_HOST'] . parse_url($this->home, PHP_URL_PATH), $this->options['domains'] ) ) ? $lang : $this->options['default_lang'];
53
  }
54
 
55
  /*
include/links-model.php CHANGED
@@ -7,7 +7,7 @@
7
  */
8
  abstract class PLL_Links_Model {
9
  public $model, $options;
10
- protected $home;
11
 
12
  /*
13
  * constructor
7
  */
8
  abstract class PLL_Links_Model {
9
  public $model, $options;
10
+ public $home; // used to avoid several calls to get_option('home')
11
 
12
  /*
13
  * constructor
include/model.php CHANGED
@@ -7,7 +7,8 @@
7
  */
8
  class PLL_Model {
9
  public $options;
10
- private $languages; // used to cache the list of languages
 
11
 
12
  /*
13
  * constructor: registers custom taxonomies and setups filters and actions
@@ -18,6 +19,7 @@ class PLL_Model {
18
  */
19
  public function __construct(&$options) {
20
  $this->options = &$options;
 
21
 
22
  // register our taxonomies as soon as possible
23
  // this is early registration, not ready for rewrite rules as wp_rewrite will be setup later
@@ -96,7 +98,7 @@ class PLL_Model {
96
  * @param string $taxonomy Polylang taxonomy depending if we are looking for a post (or term) language (or translation)
97
  * @return bool|object the term associated to the object in the requested taxonomy if exists, false otherwise
98
  */
99
- protected function get_object_term($object_id, $taxonomy) {
100
  $term = get_object_term_cache($object_id, $taxonomy);
101
 
102
  if ( false === $term ) {
@@ -134,7 +136,7 @@ class PLL_Model {
134
  * @return array|string|int list of PLL_Language objects or PLL_Language object properties
135
  */
136
  public function get_languages_list($args = array()) {
137
- if (empty($this->languages)) {
138
  if (false === ($languages = get_transient('pll_languages_list'))) {
139
  $languages = get_terms('language', array('hide_empty' => false, 'orderby'=> 'term_group'));
140
  $languages = empty($languages) || is_wp_error($languages) ? array() : $languages;
@@ -154,7 +156,7 @@ class PLL_Model {
154
  }
155
  }
156
 
157
- $this->languages = $languages;
158
 
159
  // need to wait for $wp_rewrite availibility to set homepage urls
160
  did_action('setup_theme') ? $this->_languages_list() : add_action('setup_theme', array(&$this, '_languages_list'));
@@ -163,7 +165,7 @@ class PLL_Model {
163
  $args = wp_parse_args($args, array('hide_empty' => false));
164
 
165
  // remove empty languages if requested
166
- $languages = array_filter($this->languages, create_function('$v', sprintf('return $v->count || !%d;', $args['hide_empty'])));
167
 
168
  return empty($args['fields']) ? $languages : wp_list_pluck($languages, $args['fields']);
169
  }
@@ -178,13 +180,13 @@ class PLL_Model {
178
  public function _languages_list() {
179
  if (false === get_transient('pll_languages_list')) {
180
  if (!defined('PLL_CACHE_HOME_URL') || PLL_CACHE_HOME_URL) {
181
- foreach ($this->languages as $language)
182
  $language->set_home_url();
183
  }
184
- set_transient('pll_languages_list', $this->languages);
185
  }
186
 
187
- foreach ($this->languages as $language) {
188
  if (defined('PLL_CACHE_HOME_URL') && !PLL_CACHE_HOME_URL)
189
  $language->set_home_url();
190
 
@@ -206,7 +208,7 @@ class PLL_Model {
206
  public function clean_languages_cache($term = 0, $taxonomy = null) {
207
  if (empty($taxonomy->name) || 'language' == $taxonomy->name) {
208
  delete_transient('pll_languages_list');
209
- $this->languages = array();
210
  }
211
  }
212
 
@@ -224,12 +226,15 @@ class PLL_Model {
224
  if (is_object($value))
225
  return $this->get_language($value->term_id); // will force cast to PLL_Language
226
 
227
- if (empty($language[$value])) {
228
  foreach ($this->get_languages_list() as $lang)
229
- $language[$lang->term_id] = $language[$lang->tl_term_id] = $language[$lang->slug] = $language[$lang->locale] = $lang;
 
 
 
230
  }
231
 
232
- return empty($language[$value]) ? false : $language[$value];
233
  }
234
 
235
  /*
@@ -668,13 +673,15 @@ class PLL_Model {
668
  * @since 1.2
669
  *
670
  * @param object lang
671
- * @param array $args WP_Query arguments (accepted: post_type, m, year, monthnum, day, author, author_name, post_format)
672
  * @return int
673
  */
674
- public function count_posts($lang, $args = array()) {
675
  global $wpdb;
676
 
677
- $q = wp_parse_args($args, array('post_type' => 'post'));
 
 
678
  if (!is_array($q['post_type']))
679
  $q['post_type'] = array($q['post_type']);
680
 
@@ -750,4 +757,17 @@ class PLL_Model {
750
  'term' == $type ? $lang->tl_term_taxonomy_id : $lang->term_taxonomy_id
751
  ));
752
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
753
  }
7
  */
8
  class PLL_Model {
9
  public $options;
10
+ public $languages; // used to cache the list of languages
11
+ public $blog_id; // used to get one cache array per site
12
 
13
  /*
14
  * constructor: registers custom taxonomies and setups filters and actions
19
  */
20
  public function __construct(&$options) {
21
  $this->options = &$options;
22
+ $this->blog_id = get_current_blog_id();
23
 
24
  // register our taxonomies as soon as possible
25
  // this is early registration, not ready for rewrite rules as wp_rewrite will be setup later
98
  * @param string $taxonomy Polylang taxonomy depending if we are looking for a post (or term) language (or translation)
99
  * @return bool|object the term associated to the object in the requested taxonomy if exists, false otherwise
100
  */
101
+ public function get_object_term($object_id, $taxonomy) {
102
  $term = get_object_term_cache($object_id, $taxonomy);
103
 
104
  if ( false === $term ) {
136
  * @return array|string|int list of PLL_Language objects or PLL_Language object properties
137
  */
138
  public function get_languages_list($args = array()) {
139
+ if (empty($this->languages[$this->blog_id])) {
140
  if (false === ($languages = get_transient('pll_languages_list'))) {
141
  $languages = get_terms('language', array('hide_empty' => false, 'orderby'=> 'term_group'));
142
  $languages = empty($languages) || is_wp_error($languages) ? array() : $languages;
156
  }
157
  }
158
 
159
+ $this->languages[$this->blog_id] = $languages;
160
 
161
  // need to wait for $wp_rewrite availibility to set homepage urls
162
  did_action('setup_theme') ? $this->_languages_list() : add_action('setup_theme', array(&$this, '_languages_list'));
165
  $args = wp_parse_args($args, array('hide_empty' => false));
166
 
167
  // remove empty languages if requested
168
+ $languages = array_filter($this->languages[$this->blog_id], create_function('$v', sprintf('return $v->count || !%d;', $args['hide_empty'])));
169
 
170
  return empty($args['fields']) ? $languages : wp_list_pluck($languages, $args['fields']);
171
  }
180
  public function _languages_list() {
181
  if (false === get_transient('pll_languages_list')) {
182
  if (!defined('PLL_CACHE_HOME_URL') || PLL_CACHE_HOME_URL) {
183
+ foreach ($this->languages[$this->blog_id] as $language)
184
  $language->set_home_url();
185
  }
186
+ set_transient('pll_languages_list', $this->languages[$this->blog_id]);
187
  }
188
 
189
+ foreach ($this->languages[$this->blog_id] as $language) {
190
  if (defined('PLL_CACHE_HOME_URL') && !PLL_CACHE_HOME_URL)
191
  $language->set_home_url();
192
 
208
  public function clean_languages_cache($term = 0, $taxonomy = null) {
209
  if (empty($taxonomy->name) || 'language' == $taxonomy->name) {
210
  delete_transient('pll_languages_list');
211
+ $this->languages[$this->blog_id] = array();
212
  }
213
  }
214
 
226
  if (is_object($value))
227
  return $this->get_language($value->term_id); // will force cast to PLL_Language
228
 
229
+ if (empty($language[$this->blog_id][$value])) {
230
  foreach ($this->get_languages_list() as $lang)
231
+ $language[$this->blog_id][$lang->term_id]
232
+ = $language[$this->blog_id][$lang->tl_term_id]
233
+ = $language[$this->blog_id][$lang->slug]
234
+ = $language[$this->blog_id][$lang->locale] = $lang;
235
  }
236
 
237
+ return empty($language[$this->blog_id][$value]) ? false : $language[$this->blog_id][$value];
238
  }
239
 
240
  /*
673
  * @since 1.2
674
  *
675
  * @param object lang
676
+ * @param array $q WP_Query arguments (accepted: post_type, m, year, monthnum, day, author, author_name, post_format)
677
  * @return int
678
  */
679
+ public function count_posts($lang, $q = array()) {
680
  global $wpdb;
681
 
682
+ if (empty($q['post_type']))
683
+ $q['post_type'] = array('post'); // we *need* a post type
684
+
685
  if (!is_array($q['post_type']))
686
  $q['post_type'] = array($q['post_type']);
687
 
757
  'term' == $type ? $lang->tl_term_taxonomy_id : $lang->term_taxonomy_id
758
  ));
759
  }
760
+
761
+ /*
762
+ * setup the links model based on options
763
+ *
764
+ * @since 1.2
765
+ *
766
+ * @return object implementing "links_model interface"
767
+ */
768
+ public function get_links_model() {
769
+ $c = array('Directory', 'Directory', 'Subdomain', 'Domain');
770
+ $class = get_option('permalink_structure') ? 'PLL_Links_' .$c[$this->options['force_lang']] : 'PLL_Links_Default';
771
+ return new $class($this);
772
+ }
773
  }
include/plugins-compat.php CHANGED
@@ -128,7 +128,7 @@ class PLL_Plugins_Compat {
128
  if (!$term = get_term_by( 'name', $settings['tag-name'], 'post_tag' ))
129
  return $featured_ids;
130
 
131
- // get fearured tag translations
132
  $tags = $GLOBALS['polylang']->model->get_translations('term' ,$term->term_id);
133
  $ids = array();
134
 
@@ -138,7 +138,7 @@ class PLL_Plugins_Compat {
138
  $_ids = get_posts(array(
139
  'lang' => 0, // avoid language filters
140
  'fields' => 'ids',
141
- 'numberposts' => self::$max_posts,
142
  'tax_query' => array(array(
143
  'taxonomy' => 'post_tag',
144
  'terms' => (int) $tag,
128
  if (!$term = get_term_by( 'name', $settings['tag-name'], 'post_tag' ))
129
  return $featured_ids;
130
 
131
+ // get featured tag translations
132
  $tags = $GLOBALS['polylang']->model->get_translations('term' ,$term->term_id);
133
  $ids = array();
134
 
138
  $_ids = get_posts(array(
139
  'lang' => 0, // avoid language filters
140
  'fields' => 'ids',
141
+ 'numberposts' => Featured_Content::$max_posts,
142
  'tax_query' => array(array(
143
  'taxonomy' => 'post_tag',
144
  'terms' => (int) $tag,
languages/polylang-af.mo CHANGED
Binary file
languages/polylang-af.po CHANGED
@@ -3,8 +3,8 @@ msgstr ""
3
  "Project-Id-Version: polylang\n"
4
  "Report-Msgid-Bugs-To: \n"
5
  "POT-Creation-Date: \n"
6
- "PO-Revision-Date: 2014-04-26 09:49+0100\n"
7
- "Last-Translator: Kobus Joubert <kobus@lewendewoord.co.za>\n"
8
  "Language-Team: \n"
9
  "Language: \n"
10
  "MIME-Version: 1.0\n"
@@ -443,33 +443,33 @@ msgstr "Sien alle groepe"
443
  # @ polylang
444
  #: admin/table-languages.php:59
445
  msgid "You are about to permanently delete this language. Are you sure?"
446
- msgstr ""
447
 
448
  # @ polylang
449
  #: admin/view-languages.php:143
450
  msgid "Use this to remove unused strings from database, for example after a plugin has been uninstalled."
451
- msgstr ""
452
 
453
  # @ polylang
454
  #: admin/view-languages.php:374
455
  msgid "The synchronization options allow to maintain exact same values (or translations in the case of taxonomies and page parent) of meta content between the translations of a post or page."
456
- msgstr ""
457
 
458
  #: admin/admin-model.php:289
459
  msgid "The language code contains invalid characters"
460
- msgstr ""
461
 
462
  #: admin/view-languages.php:190
463
  msgid "The language is set from content"
464
- msgstr ""
465
 
466
  #: admin/view-languages.php:193
467
  msgid "Posts, pages, categories and tags urls are not modified."
468
- msgstr ""
469
 
470
  #: admin/view-languages.php:199
471
  msgid "The language is set from the directory name in pretty permalinks"
472
- msgstr ""
473
 
474
  # @ polylang
475
  #: admin/view-languages.php:202
@@ -477,69 +477,69 @@ msgstr ""
477
  #: admin/view-languages.php:258
478
  #: admin/view-languages.php:267
479
  msgid "Example:"
480
- msgstr ""
481
 
482
  #: admin/view-languages.php:208
483
  msgid "The language is set from the subdomain name in pretty permalinks"
484
- msgstr ""
485
 
486
  # @ polylang
487
  #: admin/view-languages.php:217
488
  msgid "The language is set from different domains"
489
- msgstr ""
490
 
491
  #: admin/view-languages.php:255
492
  msgid "Remove /language/ in pretty permalinks"
493
- msgstr ""
494
 
495
  #: admin/view-languages.php:264
496
  msgid "Keep /language/ in pretty permalinks"
497
- msgstr ""
498
 
499
  # @ polylang
500
  #: admin/view-languages.php:279
501
  msgid "The front page url contains the language code instead of the page name or page id"
502
- msgstr ""
503
 
504
  # @ polylang
505
  #: admin/admin-filters-term.php:143
506
  #, php-format
507
  msgid "A translation does already exist for %s"
508
- msgstr ""
509
 
510
  # @ polylang
511
  #: admin/view-languages.php:287
512
  #, php-format
513
  msgid "Example: %s instead of %s"
514
- msgstr ""
515
 
516
  #: admin/admin-model.php:49
517
  msgid "Impossible to add the language."
518
- msgstr ""
519
 
520
  # @ polylang
521
  #: admin/admin-model.php:73
522
  msgid "Language added."
523
- msgstr ""
524
 
525
  # @ polylang
526
  #: admin/admin-model.php:187
527
  msgid "Language deleted."
528
- msgstr ""
529
 
530
  # @ polylang
531
  #: admin/admin-model.php:268
532
  msgid "Language updated."
533
- msgstr ""
534
 
535
  # @ polylang
536
  #: admin/settings.php:203
537
  msgid "Translations updated."
538
- msgstr ""
539
 
540
  #: admin/view-languages.php:89
541
  msgid "Language code - preferably 2-letters ISO 639-1 (for example: en)"
542
- msgstr ""
543
 
544
  #~ msgid "Translation"
545
  #~ msgstr "Vertaling"
3
  "Project-Id-Version: polylang\n"
4
  "Report-Msgid-Bugs-To: \n"
5
  "POT-Creation-Date: \n"
6
+ "PO-Revision-Date: 2014-06-10 19:56+0200\n"
7
+ "Last-Translator: Kobus Joubert <kobus@translate3d.com>\n"
8
  "Language-Team: \n"
9
  "Language: \n"
10
  "MIME-Version: 1.0\n"
443
  # @ polylang
444
  #: admin/table-languages.php:59
445
  msgid "You are about to permanently delete this language. Are you sure?"
446
+ msgstr "Jy is op die punt om hierdie taal permanent te verwyder. Is jy seker?"
447
 
448
  # @ polylang
449
  #: admin/view-languages.php:143
450
  msgid "Use this to remove unused strings from database, for example after a plugin has been uninstalled."
451
+ msgstr "Gebruik hierdie om ongebruikte strings te verwyder uit die databasis uit, byvoorbeeld na verwydering van 'n module."
452
 
453
  # @ polylang
454
  #: admin/view-languages.php:374
455
  msgid "The synchronization options allow to maintain exact same values (or translations in the case of taxonomies and page parent) of meta content between the translations of a post or page."
456
+ msgstr "Die sinkronisasie opsies voorsien om presies dieselfde waardes in stand te hou (of vertalings in die geval van taksonomie en bladsy ouer) van meta-inhoud tussen die vertalings van 'n post of bladsy."
457
 
458
  #: admin/admin-model.php:289
459
  msgid "The language code contains invalid characters"
460
+ msgstr "Die taal kode bevat ongeldige karakters"
461
 
462
  #: admin/view-languages.php:190
463
  msgid "The language is set from content"
464
+ msgstr "Die taal word ingestel van inhoud"
465
 
466
  #: admin/view-languages.php:193
467
  msgid "Posts, pages, categories and tags urls are not modified."
468
+ msgstr "Posts, bladsye, kategorieë en etikette urls is nie verander nie."
469
 
470
  #: admin/view-languages.php:199
471
  msgid "The language is set from the directory name in pretty permalinks"
472
+ msgstr "Die taal is ingestel van die gids se naam in pretty permalinks"
473
 
474
  # @ polylang
475
  #: admin/view-languages.php:202
477
  #: admin/view-languages.php:258
478
  #: admin/view-languages.php:267
479
  msgid "Example:"
480
+ msgstr "Voorbeeld:"
481
 
482
  #: admin/view-languages.php:208
483
  msgid "The language is set from the subdomain name in pretty permalinks"
484
+ msgstr "Die taal word gestel uit die subdomein naam in pretty permalinks"
485
 
486
  # @ polylang
487
  #: admin/view-languages.php:217
488
  msgid "The language is set from different domains"
489
+ msgstr "Die taal word gestel vanuit verskillende domians"
490
 
491
  #: admin/view-languages.php:255
492
  msgid "Remove /language/ in pretty permalinks"
493
+ msgstr "Verwyder / taal / in pretty permalinks"
494
 
495
  #: admin/view-languages.php:264
496
  msgid "Keep /language/ in pretty permalinks"
497
+ msgstr "Hou / taal / in pretty permalinks"
498
 
499
  # @ polylang
500
  #: admin/view-languages.php:279
501
  msgid "The front page url contains the language code instead of the page name or page id"
502
+ msgstr "Die voorblad url bevat die taal kode in plaas van die bladsy se naam of bladsy id"
503
 
504
  # @ polylang
505
  #: admin/admin-filters-term.php:143
506
  #, php-format
507
  msgid "A translation does already exist for %s"
508
+ msgstr "'n Vertaling bestaan nog nie vir % s ​​nie"
509
 
510
  # @ polylang
511
  #: admin/view-languages.php:287
512
  #, php-format
513
  msgid "Example: %s instead of %s"
514
+ msgstr "Voorbeeld: %s in plaas van %s"
515
 
516
  #: admin/admin-model.php:49
517
  msgid "Impossible to add the language."
518
+ msgstr "Onmoontlik om die taal by te voeg."
519
 
520
  # @ polylang
521
  #: admin/admin-model.php:73
522
  msgid "Language added."
523
+ msgstr "Taal bygevoeg."
524
 
525
  # @ polylang
526
  #: admin/admin-model.php:187
527
  msgid "Language deleted."
528
+ msgstr "Taal verwyder."
529
 
530
  # @ polylang
531
  #: admin/admin-model.php:268
532
  msgid "Language updated."
533
+ msgstr "Taal opgedateer."
534
 
535
  # @ polylang
536
  #: admin/settings.php:203
537
  msgid "Translations updated."
538
+ msgstr "Vertalings opgedateer."
539
 
540
  #: admin/view-languages.php:89
541
  msgid "Language code - preferably 2-letters ISO 639-1 (for example: en)"
542
+ msgstr "Taal-kode - verkieslik 2-letters ISO 639-1 (byvoorbeeld: af)"
543
 
544
  #~ msgid "Translation"
545
  #~ msgstr "Vertaling"
languages/polylang-pl_PL.mo CHANGED
Binary file
languages/polylang-pl_PL.po CHANGED
@@ -2,597 +2,704 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: polylang\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: \n"
6
  "PO-Revision-Date: \n"
7
- "Last-Translator: Bartosz Arendt <info@digitalfactory.pl>\n"
8
  "Language-Team: \n"
9
- "Language: \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; plural=n != 1;\n"
14
  "X-Poedit-SourceCharset: utf-8\n"
15
- "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2\n"
 
16
  "X-Poedit-Basepath: .\n"
17
  "X-Textdomain-Support: yes\n"
18
- "X-Generator: Poedit 1.5.7\n"
19
  "X-Poedit-SearchPath-0: ..\n"
20
 
21
  # @ polylang
22
- #: admin/view-about.php:3
23
- #, php-format
24
- msgid "Polylang is provided with an extensive %sdocumentation%s (in English only). It includes information on how to set up your multilingual site and use it on a daily basis, a FAQ, as well as a documentation for programmers to adapt their plugins and themes."
25
- msgstr "Polulang jest dostarczany z obszerną %sdokumentacją%s (tylko w języku angielskim), która zawiera informacje jak skonfigurować stronę wielojęzyczną i korzystać z niej w codziennej pracy, dział FAQ, oraz dokumentację dla programistów o tym jak adaptować wtyczki i motywy."
26
-
27
- # @ polylang
28
- #: admin/view-about.php:9
29
- #, php-format
30
- msgid "You will also find useful information in the %ssupport forum%s. However don't forget to make a search before posting a new topic."
31
- msgstr "Przydatne informacje znajdziesz w %sforum pomocy%s. Ale nie zapomnij go przeszukać, zanim dodasz nowy temat."
32
-
33
- # @ polylang
34
- #: admin/view-about.php:16
35
- #, php-format
36
- msgid "Polylang is free of charge and is released under the same license as WordPress, the %sGPL%s."
37
- msgstr "Polylang jest bezpłatne i opublikowane na takiej samej licencji jak WordPress, czyli %sGPL%s."
38
 
39
- # @ polylang
40
- #: admin/view-about.php:22
41
- #, php-format
42
- msgid "If you wonder how you can help the project, just %sread this%s."
43
- msgstr "Jeśli zastanawiasz się jak mógłbyś pomóc w tym projekcie, po prostu %sprzeczytaj to%s."
44
 
45
  # @ polylang
46
- #: admin/view-about.php:27
47
- msgid "Finally if you like this plugin or if it helps your business, donations to the author are greatly appreciated."
48
- msgstr "Wreszcie, jeśli lubisz tę wtyczkę i pomaga Ci ona w prowadzeniu biznesu, wsparcie dla jej autora będzie mile widziane."
 
 
49
 
50
  # @ polylang
51
- #: admin/admin-filters-post.php:83
52
- #: admin/admin.php:73
53
- #: admin/settings.php:53
54
- #: admin/settings.php:80
55
- #: include/model.php:506
56
  msgid "Languages"
57
  msgstr "Języki"
58
 
 
 
 
 
 
 
59
  # @ polylang
60
- #: include/switcher.php:22
61
- msgid "Displays language names"
62
- msgstr "Wyświetla nazwy języków"
 
63
 
64
  # @ polylang
65
- #: include/switcher.php:23
66
- msgid "Displays flags"
67
- msgstr "Wyświetla flagi"
68
 
69
  # @ polylang
70
- #: include/switcher.php:24
71
- msgid "Forces link to front page"
72
- msgstr "Wymusza link do strony głównej"
 
 
 
 
 
73
 
74
  # @ polylang
75
- #: include/switcher.php:25
76
- msgid "Hides the current language"
77
- msgstr "Ukrywa aktualny język"
78
 
79
  # @ polylang
80
- #: include/switcher.php:29
81
- msgid "Displays as dropdown"
82
- msgstr "Wyświetla się jako menu rozwijane"
83
 
84
  # @ polylang
85
- #: admin/admin.php:252
86
- msgid "Filters content by language"
87
- msgstr "Filtrowanie treści wg języka"
 
 
 
 
88
 
89
  # @ polylang
90
- #: admin/admin.php:243
91
- msgid "Show all languages"
92
- msgstr "Pokaż wszystkie języki"
93
 
94
  # @ polylang
95
- #: admin/admin-filters-columns.php:132
96
- #: admin/admin-filters-columns.php:228
97
- msgid "Add new translation"
98
- msgstr "Dodaj nowe tłumaczenie"
99
 
100
  # @ polylang
101
- #: admin/admin-filters-columns.php:169
102
- #: admin/admin-filters-media.php:58
103
- #: admin/admin-filters-post.php:107
104
- #: admin/admin-filters-term.php:75
105
- #: admin/admin-filters-term.php:112
106
- #: include/model.php:507
107
- msgid "Language"
108
- msgstr "Język"
109
 
110
  # @ polylang
111
- #: admin/table-string.php:111
112
- #: admin/view-translations-media.php:5
113
- #: admin/view-translations-post.php:5
114
- #: admin/view-translations-term.php:6
115
- #: admin/view-translations-term.php:11
116
- msgid "Translations"
117
- msgstr "Tłumaczenia"
118
 
119
  # @ polylang
120
- #: admin/admin-filters-term.php:77
121
- #: admin/admin-filters-term.php:114
122
- msgid "Sets the language"
123
- msgstr "Ustawia język"
 
 
 
124
 
125
  # @ polylang
126
- #: admin/admin-filters.php:46
127
- msgid "The widget is displayed for:"
128
- msgstr "Widget wyświetlany jest dla:"
129
 
130
  # @ polylang
131
- #: admin/admin-filters.php:49
132
- #: include/model.php:508
133
- msgid "All languages"
134
- msgstr "Wszystkie języki"
135
 
136
  # @ polylang
137
- #: admin/admin-filters.php:113
138
- msgid "Admin language"
139
- msgstr "Język administratora"
140
 
141
- #: admin/admin-filters.php:116
142
- msgid "Wordpress default"
143
- msgstr "Domyślny"
 
 
 
144
 
145
  # @ default
146
  # @ polylang
147
- #: admin/admin.php:154
148
- #: admin/settings.php:85
149
  msgid "Settings"
150
  msgstr "Ustawienia"
151
 
152
  # @ polylang
153
- #: admin/admin-filters.php:146
154
- msgid "Upgrading language files&#8230;"
155
- msgstr "Uaktualnianie pliku językowego&#8230;"
 
 
 
 
 
156
 
157
  # @ polylang
158
- #: admin/settings.php:45
 
 
 
 
 
 
 
 
 
159
  msgid "About Polylang"
160
  msgstr "O Polylang"
161
 
162
  # @ polylang
163
- #: admin/settings.php:61
164
  msgid "Strings translations"
165
  msgstr "Tłumaczenia ciągów tekstowych"
166
 
167
  # @ polylang
168
- #: admin/settings.php:84
169
  msgid "Strings translation"
170
  msgstr "Tłumaczenie fraz"
171
 
172
- #: admin/admin-model.php:285
173
- msgid "Enter a valid WordPress locale"
174
- msgstr "Proszę podać prawidłowy kod lokalizacji"
175
-
176
  # @ polylang
177
- #: admin/admin-model.php:293
178
- msgid "The language code must be unique"
179
- msgstr "Kod języka musi być unikalny"
180
 
 
181
  # @ polylang
182
- #: admin/admin-model.php:297
183
- msgid "The language must have a name"
184
- msgstr "Język musi mieć nazwę"
185
 
186
  # @ polylang
187
- #: admin/admin.php:353
188
- msgid "The language was created, but the WordPress language file was not downloaded. Please install it manually."
189
- msgstr "Język został dodany, ale plik językowy WordPress nie został załadowany. Proszę zainstalować go manualnie."
 
 
 
 
 
 
 
 
 
 
 
 
190
 
191
  # @ polylang
192
- #: admin/settings.php:328
193
  msgid "Widget title"
194
  msgstr "Nazwa widgeta"
195
 
196
- #: admin/settings.php:346
197
  msgid "Taxonomies"
198
  msgstr "Taksonomie"
199
 
200
- #: admin/settings.php:347
201
  msgid "Custom fields"
202
  msgstr "Własne pola"
203
 
204
- #: admin/settings.php:348
205
  msgid "Comment status"
206
  msgstr "Status komentarza"
207
 
208
- #: admin/settings.php:349
209
  msgid "Ping status"
210
  msgstr "Status ping"
211
 
212
- #: admin/settings.php:350
213
  msgid "Sticky posts"
214
  msgstr "Przyklejone wpisy"
215
 
216
- #: admin/settings.php:351
217
  msgid "Published date"
218
  msgstr "Data publikacji"
219
 
220
- #: admin/settings.php:352
221
  msgid "Post format"
222
  msgstr "Format wpisu"
223
 
224
  # @ default
225
- #: admin/settings.php:353
226
  msgid "Page parent"
227
  msgstr "Rodzic strony"
228
 
229
- #: admin/settings.php:354
230
  msgid "Page template"
231
  msgstr "Szablon strony"
232
 
233
  # @ polylang
234
- #: admin/settings.php:355
235
  msgid "Page order"
236
  msgstr "Kolejność stron"
237
 
238
- #: admin/settings.php:356
239
  msgid "Featured image"
240
  msgstr "Zdjęcie główne"
241
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
242
  # @ polylang
243
- #: admin/view-languages.php:38
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
244
  msgid "Edit language"
245
  msgstr "Edytuj język"
246
 
247
  # @ polylang
248
- #: admin/view-languages.php:38
249
- #: admin/view-languages.php:113
250
  msgid "Add new language"
251
  msgstr "Dodaj nowy język"
252
 
253
  # @ polylang
254
- #: admin/view-languages.php:54
255
  msgid "Choose a language"
256
  msgstr "Wybierz język"
257
 
258
  # @ polylang
259
- #: admin/view-languages.php:68
260
  msgid "You can choose a language in the list or directly edit it below."
261
  msgstr "Możesz wybrać język z listy lub edytować go bezpośrednio poniżej"
262
 
263
  # @ polylang
264
- #: admin/table-languages.php:74
265
- #: admin/view-languages.php:72
266
- msgid "Full name"
267
- msgstr "Pełna nazwa"
268
-
269
- # @ polylang
270
- #: admin/view-languages.php:74
271
  msgid "The name is how it is displayed on your site (for example: English)."
272
  msgstr "Nazwa, tak jak będzie wyświetlana na stronie (np. English)"
273
 
274
  # @ polylang
275
- #: admin/table-languages.php:75
276
- #: admin/view-languages.php:78
277
- msgid "Locale"
278
- msgstr "Lokalizacja"
279
-
280
- # @ polylang
281
- #: admin/view-languages.php:83
282
- msgid "Wordpress Locale for the language (for example: en_US). You will need to install the .mo file for this language."
283
- msgstr "Lokalizacja WordPress dla języka (np. en_US). Dla tego języka będziesz musiał zainstalować plik .mo."
284
 
285
  # @ polylang
286
- #: admin/view-languages.php:87
287
  msgid "Language code"
288
  msgstr "Kod języka"
289
 
290
  # @ polylang
291
- #: admin/view-languages.php:93
292
- msgid "2-letters ISO 639-1 language code (for example: en)"
293
- msgstr "2-literowy kod języka w ISO 639-1 (np. en)"
 
294
 
295
  # @ polylang
296
- #: admin/view-languages.php:93
297
  msgid "Text direction"
298
  msgstr "Kierunek zapisu języka"
299
 
300
  # @ polylang
301
- #: admin/view-languages.php:97
302
  msgid "left to right"
303
  msgstr "od lewej do prawej"
304
 
305
  # @ polylang
306
- #: admin/view-languages.php:102
307
  msgid "right to left"
308
  msgstr "od prawej do lewej"
309
 
310
  # @ polylang
311
- #: admin/view-languages.php:104
312
  msgid "Choose the text direction for the language"
313
  msgstr "Wybierz kierunek zapisu języka"
314
 
315
  # @ polylang
316
- #: admin/table-languages.php:77
317
- #: admin/view-languages.php:108
318
- msgid "Order"
319
- msgstr "Kolejność"
320
-
321
- # @ polylang
322
- #: admin/view-languages.php:110
323
  msgid "Position of the language in the language switcher"
324
  msgstr "Pozycja języka w przełączniku języka"
325
 
326
- # @ polylang
327
- #: admin/admin-nav-menu.php:52
328
- #: admin/admin-nav-menu.php:90
329
- #: admin/admin-nav-menu.php:93
330
- #: admin/admin-nav-menu.php:124
331
- #: admin/admin-nav-menu.php:181
332
- #: include/upgrade.php:301
333
- msgid "Language switcher"
334
- msgstr "Przełącznik języka"
335
 
336
  # @ polylang
337
- #: admin/view-languages.php:139
338
  msgid "Search translations"
339
  msgstr "Szukaj tłumaczeń"
340
 
341
  # @ polylang
342
- #: admin/view-languages.php:142
343
  msgid "Clean strings translation database"
344
  msgstr "Wyczyść tłumaczenia fraz z bazy"
345
 
 
 
 
 
 
 
 
 
346
  # @ polylang
347
- #: admin/view-languages.php:161
348
  msgid "Default language"
349
  msgstr "Domyślny język"
350
 
351
  # @ polylang
352
- #: admin/view-languages.php:176
353
- msgid "There are posts, pages, categories or tags without language set. Do you want to set them all to default language ?"
354
- msgstr "Istnieją wpisy, strony, kategorie i tagi bez określonego języka. Czy chcesz ustawić dla nich domyślny język?"
355
-
356
- # @ polylang
357
- #: admin/view-languages.php:297
358
- msgid "Detect browser language"
359
- msgstr "Wykryj język przeglądarki"
360
-
361
- # @ polylang
362
- #: admin/view-languages.php:303
363
- msgid "When the front page is visited, set the language according to the browser preference"
364
- msgstr "Przy wejściu na stronę domową, ustaw język zgodnie z ustawieniami przeglądarki"
365
 
366
  # @ polylang
367
- #: admin/view-languages.php:184
368
  msgid "URL modifications"
369
  msgstr "Modyfikacje URL"
370
 
371
- # @ polylang
372
- #: admin/view-languages.php:241
373
- msgid "Hide URL language information for default language"
374
- msgstr "Ukryj informację o języku w URL dla domyślnego języka"
375
-
376
- #: admin/view-languages.php:310
377
- msgid "Media"
378
- msgstr "Media"
379
-
380
- #: admin/view-languages.php:316
381
- msgid "Activate languages and translations for media"
382
- msgstr "Aktywuj języki i tłumaczenia dla mediów."
383
-
384
- #: admin/view-languages.php:365
385
- msgid "Synchronization"
386
- msgstr "Synchronizacja"
387
-
388
- #: admin/view-languages.php:324
389
- msgid "Custom post types"
390
- msgstr "Własne typy wpisów"
391
-
392
- #: admin/view-languages.php:337
393
- msgid "Activate languages and translations for custom post types."
394
- msgstr "Aktywuj języki i tłumaczenia dla własnych typów wpisów."
395
-
396
- #: admin/view-languages.php:344
397
- msgid "Custom taxonomies"
398
- msgstr "Własne taksonomie"
399
-
400
- #: admin/view-languages.php:357
401
- msgid "Activate languages and translations for custom taxonomies."
402
- msgstr "Aktywuj języki i tłumaczenia dla własnych taksonomii."
403
 
404
  # @ polylang
405
- #: admin/admin-filters-post.php:351
406
- #: admin/admin-filters-term.php:502
407
- #: admin/table-languages.php:54
408
- #: admin/view-translations-media.php:21
409
- msgid "Edit"
410
- msgstr "Edytuj"
411
 
412
  # @ polylang
413
- #: admin/table-languages.php:60
414
- #: admin/table-string.php:167
415
- msgid "Delete"
416
- msgstr "Usuń"
417
 
418
  # @ polylang
419
- #: admin/table-languages.php:76
420
- msgid "Code"
421
- msgstr "Kod"
 
422
 
423
  # @ polylang
424
- #: admin/table-languages.php:78
425
- msgid "Flag"
426
- msgstr "Flaga"
427
 
428
- # @ polylang
429
- #: admin/table-languages.php:79
430
- msgid "Posts"
431
- msgstr "Wpisy"
432
 
433
  # @ polylang
434
- #: admin/table-string.php:109
435
- msgid "Name"
436
- msgstr "Nazwa"
437
 
438
  # @ polylang
439
- #: admin/table-string.php:110
440
- msgid "String"
441
- msgstr "Ciąg tekstowy"
442
 
443
  # @ polylang
444
- #: admin/admin-filters-post.php:375
445
- #: admin/admin-filters-term.php:528
446
- #: admin/view-translations-media.php:30
447
- msgid "Add new"
448
- msgstr "Dodaj nowy"
449
 
450
  # @ polylang
451
- #: include/widget-languages.php:16
452
- msgid "Language Switcher"
453
- msgstr "Przełącznik języka"
 
 
454
 
455
  # @ polylang
456
- #: include/widget-languages.php:16
457
- msgid "Displays a language switcher"
458
- msgstr "Wyświetla przełącznik języka"
 
459
 
460
  # @ polylang
461
- #: include/widget-languages.php:100
462
- msgid "Title:"
463
- msgstr "Tytuł:"
464
 
465
  # @ polylang
466
- #. translators: plugin header field 'Description'
467
- #: polylang.php:0
468
- msgid "Adds multilingual capability to WordPress"
 
469
  msgstr ""
 
 
470
 
471
- # @ polylang
472
- #: polylang.php:160
473
- #, php-format
474
- msgid "You are using WordPress %s. Polylang requires at least WordPress %s."
475
- msgstr "Używasz WordPress %s. Polylang wymaga przynajmniej WordPress %s."
476
 
477
- #: include/upgrade.php:76
478
- msgid "Polylang has been deactivated because you upgraded from a too old version."
479
- msgstr "Polylang został wyłączony ponieważ aktualizowałeś go ze zbyt starej wersji."
480
 
481
- #: include/upgrade.php:78
482
- #, php-format
483
- msgid "Please upgrade first to %s before ugrading to %s."
484
- msgstr "Najpierw zaktualizuj do %s zanim wykonasz aktualizację do %s."
485
 
486
- #: admin/table-string.php:108
487
- msgid "Group"
488
- msgstr "Grupa"
489
 
490
- #: admin/table-string.php:186
491
- msgid "View all groups"
492
- msgstr "Zobacz wszystkie grupy"
493
 
494
- #: admin/table-languages.php:59
495
- msgid "You are about to permanently delete this language. Are you sure?"
496
- msgstr "Zamierzasz całkowicie usunąć ten język. Czy jesteś pewny?"
497
 
498
- #: admin/view-languages.php:143
499
- msgid "Use this to remove unused strings from database, for example after a plugin has been uninstalled."
500
- msgstr "Użyj tego aby usunąć nieużwyane frazy z bazy danych, np. po tym jak odinstalowałeś wtyczkę."
501
 
502
- #: admin/view-languages.php:374
503
- msgid "The synchronization options allow to maintain exact same values (or translations in the case of taxonomies and page parent) of meta content between the translations of a post or page."
504
- msgstr "Ustawienia synchronizacji pozwalają zachować dokładnie takie same wartości (lub tłumaczenia w przypadku taksonomii i rodziców stron) meta danych pomiędzy tłumaczeniami stron i wpisów."
 
 
 
 
 
 
505
 
506
  # @ polylang
507
- #: admin/admin-model.php:289
508
- msgid "The language code contains invalid characters"
509
- msgstr "Kod języka musi się zawiera nieprawidłowe znaki"
 
 
510
 
511
- #: admin/view-languages.php:190
512
- msgid "The language is set from content"
513
- msgstr ""
514
 
515
- # @ polylang
516
- #: admin/view-languages.php:193
517
- msgid "Posts, pages, categories and tags urls are not modified."
 
518
  msgstr ""
 
 
519
 
520
  # @ polylang
521
- #: admin/view-languages.php:199
522
- msgid "The language is set from the directory name in pretty permalinks"
523
- msgstr ""
524
 
525
  # @ polylang
526
- #: admin/view-languages.php:202
527
- #: admin/view-languages.php:211
528
- #: admin/view-languages.php:258
529
- #: admin/view-languages.php:267
530
- msgid "Example:"
531
- msgstr ""
532
 
533
  # @ polylang
534
- #: admin/view-languages.php:208
535
- msgid "The language is set from the subdomain name in pretty permalinks"
536
- msgstr ""
537
-
538
- #: admin/view-languages.php:217
539
- msgid "The language is set from different domains"
540
- msgstr "Język jest ustawiany z różnych domen"
541
 
542
  # @ polylang
543
- #: admin/view-languages.php:255
544
- msgid "Remove /language/ in pretty permalinks"
545
- msgstr ""
546
 
547
  # @ polylang
548
- #: admin/view-languages.php:264
549
- msgid "Keep /language/ in pretty permalinks"
550
- msgstr ""
551
 
552
- # @ polylang
553
- #: admin/view-languages.php:279
554
- msgid "The front page url contains the language code instead of the page name or page id"
555
  msgstr ""
 
556
 
557
- # @ polylang
558
- #: admin/admin-filters-term.php:143
559
  #, php-format
560
- msgid "A translation does already exist for %s"
561
- msgstr ""
562
 
563
- # @ polylang
564
- #: admin/view-languages.php:287
565
  #, php-format
566
- msgid "Example: %s instead of %s"
567
- msgstr ""
 
568
 
569
- # @ polylang
570
- #: admin/admin-model.php:49
571
- msgid "Impossible to add the language."
572
- msgstr ""
573
 
574
  # @ polylang
575
- #: admin/admin-model.php:73
576
- msgid "Language added."
577
- msgstr ""
578
 
579
  # @ polylang
580
- #: admin/admin-model.php:187
581
- msgid "Language deleted."
582
- msgstr ""
583
 
584
  # @ polylang
585
- #: admin/admin-model.php:268
586
- msgid "Language updated."
587
- msgstr ""
588
 
589
- # @ polylang
590
- #: admin/settings.php:203
591
- msgid "Translations updated."
592
- msgstr ""
593
 
594
- # @ polylang
595
- #: admin/view-languages.php:89
596
- msgid "Language code - preferably 2-letters ISO 639-1 (for example: en)"
597
- msgstr ""
 
 
598
 
 
 
 
 
 
 
 
 
 
2
  msgstr ""
3
  "Project-Id-Version: polylang\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2014-06-11 11:17+0100\n"
6
  "PO-Revision-Date: \n"
7
+ "Last-Translator: Sebastian Janus <sebastian.janus@outlook.com>\n"
8
  "Language-Team: \n"
9
+ "Language: pl_PL\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; plural=n != 1;\n"
14
  "X-Poedit-SourceCharset: utf-8\n"
15
+ "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
16
+ "_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2\n"
17
  "X-Poedit-Basepath: .\n"
18
  "X-Textdomain-Support: yes\n"
19
+ "X-Generator: Poedit 1.6.5\n"
20
  "X-Poedit-SearchPath-0: ..\n"
21
 
22
  # @ polylang
23
+ #: ../admin/admin-filters-columns.php:132
24
+ #: ../admin/admin-filters-columns.php:219
25
+ msgid "Add new translation"
26
+ msgstr "Dodaj nowe tłumaczenie"
 
 
 
 
 
 
 
 
 
 
 
 
27
 
28
+ #: ../admin/admin-filters-columns.php:152
29
+ msgid "&mdash; No Change &mdash;"
30
+ msgstr "&mdash; Brak Zmian &mdash;"
 
 
31
 
32
  # @ polylang
33
+ #: ../admin/admin-filters-columns.php:166 ../admin/admin-filters-media.php:55
34
+ #: ../admin/admin-filters-post.php:107 ../admin/admin-filters-term.php:77
35
+ #: ../admin/admin-filters-term.php:116 ../include/model.php:539
36
+ msgid "Language"
37
+ msgstr "Język"
38
 
39
  # @ polylang
40
+ #: ../admin/admin-filters-post.php:81 ../admin/admin.php:90
41
+ #: ../admin/settings.php:53 ../admin/settings.php:80 ../include/model.php:538
 
 
 
42
  msgid "Languages"
43
  msgstr "Języki"
44
 
45
+ #: ../admin/admin-filters-post.php:313 ../admin/admin-filters-term.php:256
46
+ #: ../admin/admin-nav-menu.php:159 ../admin/admin-nav-menu.php:205
47
+ #: ../frontend/frontend-filters.php:196 ../frontend/frontend-filters.php:226
48
+ msgid "Cheatin&#8217; uh?"
49
+ msgstr "Oszukujesz&#8217;?"
50
+
51
  # @ polylang
52
+ #: ../admin/admin-filters-post.php:369 ../admin/admin-filters-term.php:578
53
+ #: ../admin/table-languages.php:54 ../admin/view-translations-media.php:21
54
+ msgid "Edit"
55
+ msgstr "Edytuj"
56
 
57
  # @ polylang
58
+ #: ../admin/admin-filters-term.php:79 ../admin/admin-filters-term.php:118
59
+ msgid "Sets the language"
60
+ msgstr "Ustawia język"
61
 
62
  # @ polylang
63
+ #: ../admin/admin-filters-term.php:157
64
+ #, php-format
65
+ msgid "A translation does already exist for %s"
66
+ msgstr "Tłumaczenie dla %s już istnieje"
67
+
68
+ #: ../admin/admin-filters-term.php:349
69
+ msgid "None"
70
+ msgstr "Brak"
71
 
72
  # @ polylang
73
+ #: ../admin/admin-filters.php:45
74
+ msgid "The widget is displayed for:"
75
+ msgstr "Widget wyświetlany jest dla:"
76
 
77
  # @ polylang
78
+ #: ../admin/admin-filters.php:48 ../include/model.php:540
79
+ msgid "All languages"
80
+ msgstr "Wszystkie języki"
81
 
82
  # @ polylang
83
+ #: ../admin/admin-filters.php:113
84
+ msgid "Admin language"
85
+ msgstr "Język administratora"
86
+
87
+ #: ../admin/admin-filters.php:116
88
+ msgid "Wordpress default"
89
+ msgstr "Domyślny"
90
 
91
  # @ polylang
92
+ #: ../admin/admin-filters.php:146
93
+ msgid "Upgrading language files&#8230;"
94
+ msgstr "Uaktualnianie pliku językowego&#8230;"
95
 
96
  # @ polylang
97
+ #: ../admin/admin-model.php:38
98
+ msgid "Impossible to add the language."
99
+ msgstr "Dodanie języka jest niemożliwe."
 
100
 
101
  # @ polylang
102
+ #: ../admin/admin-model.php:62
103
+ msgid "Language added."
104
+ msgstr "Dodano język."
105
+
106
+ #: ../admin/admin-model.php:77
107
+ msgid "Uncategorized"
108
+ msgstr "Bez kategorii"
 
109
 
110
  # @ polylang
111
+ #: ../admin/admin-model.php:176
112
+ msgid "Language deleted."
113
+ msgstr "Usunięto język."
 
 
 
 
114
 
115
  # @ polylang
116
+ #: ../admin/admin-model.php:257
117
+ msgid "Language updated."
118
+ msgstr "Język zaktualizowany."
119
+
120
+ #: ../admin/admin-model.php:274
121
+ msgid "Enter a valid WordPress locale"
122
+ msgstr "Proszę podać prawidłowy kod lokalizacji"
123
 
124
  # @ polylang
125
+ #: ../admin/admin-model.php:278
126
+ msgid "The language code contains invalid characters"
127
+ msgstr "Kod języka zawiera nieprawidłowe znaki"
128
 
129
  # @ polylang
130
+ #: ../admin/admin-model.php:282
131
+ msgid "The language code must be unique"
132
+ msgstr "Kod języka musi być unikalny"
 
133
 
134
  # @ polylang
135
+ #: ../admin/admin-model.php:286
136
+ msgid "The language must have a name"
137
+ msgstr "Język musi mieć nazwę"
138
 
139
+ # @ polylang
140
+ #: ../admin/admin-nav-menu.php:52 ../admin/admin-nav-menu.php:90
141
+ #: ../admin/admin-nav-menu.php:93 ../admin/admin-nav-menu.php:124
142
+ #: ../admin/admin-nav-menu.php:188 ../include/upgrade.php:301
143
+ msgid "Language switcher"
144
+ msgstr "Przełącznik języka"
145
 
146
  # @ default
147
  # @ polylang
148
+ #: ../admin/admin.php:171 ../admin/settings.php:85
 
149
  msgid "Settings"
150
  msgstr "Ustawienia"
151
 
152
  # @ polylang
153
+ #: ../admin/admin.php:262
154
+ msgid "Show all languages"
155
+ msgstr "Pokaż wszystkie języki"
156
+
157
+ # @ polylang
158
+ #: ../admin/admin.php:271
159
+ msgid "Filters content by language"
160
+ msgstr "Filtrowanie treści wg języka"
161
 
162
  # @ polylang
163
+ #: ../admin/admin.php:372
164
+ msgid ""
165
+ "The language was created, but the WordPress language file was not "
166
+ "downloaded. Please install it manually."
167
+ msgstr ""
168
+ "Język został dodany, ale plik językowy WordPress nie został załadowany. "
169
+ "Proszę zainstalować go ręcznie."
170
+
171
+ # @ polylang
172
+ #: ../admin/settings.php:45
173
  msgid "About Polylang"
174
  msgstr "O Polylang"
175
 
176
  # @ polylang
177
+ #: ../admin/settings.php:61
178
  msgid "Strings translations"
179
  msgstr "Tłumaczenia ciągów tekstowych"
180
 
181
  # @ polylang
182
+ #: ../admin/settings.php:84
183
  msgid "Strings translation"
184
  msgstr "Tłumaczenie fraz"
185
 
 
 
 
 
186
  # @ polylang
187
+ #: ../admin/settings.php:203
188
+ msgid "Translations updated."
189
+ msgstr "Tłumaczenia zaktualizowane."
190
 
191
+ # @ default
192
  # @ polylang
193
+ #: ../admin/settings.php:263
194
+ msgid "Settings saved."
195
+ msgstr "Ustawienia zapisane."
196
 
197
  # @ polylang
198
+ #: ../admin/settings.php:306
199
+ msgid "Site Title"
200
+ msgstr "Tytuł Strony"
201
+
202
+ #: ../admin/settings.php:307
203
+ msgid "Tagline"
204
+ msgstr "Linia tagów"
205
+
206
+ #: ../admin/settings.php:308
207
+ msgid "Date Format"
208
+ msgstr "Format daty"
209
+
210
+ #: ../admin/settings.php:309
211
+ msgid "Time Format"
212
+ msgstr "Format Czasu"
213
 
214
  # @ polylang
215
+ #: ../admin/settings.php:328
216
  msgid "Widget title"
217
  msgstr "Nazwa widgeta"
218
 
219
+ #: ../admin/settings.php:346
220
  msgid "Taxonomies"
221
  msgstr "Taksonomie"
222
 
223
+ #: ../admin/settings.php:347
224
  msgid "Custom fields"
225
  msgstr "Własne pola"
226
 
227
+ #: ../admin/settings.php:348
228
  msgid "Comment status"
229
  msgstr "Status komentarza"
230
 
231
+ #: ../admin/settings.php:349
232
  msgid "Ping status"
233
  msgstr "Status ping"
234
 
235
+ #: ../admin/settings.php:350
236
  msgid "Sticky posts"
237
  msgstr "Przyklejone wpisy"
238
 
239
+ #: ../admin/settings.php:351
240
  msgid "Published date"
241
  msgstr "Data publikacji"
242
 
243
+ #: ../admin/settings.php:352
244
  msgid "Post format"
245
  msgstr "Format wpisu"
246
 
247
  # @ default
248
+ #: ../admin/settings.php:353
249
  msgid "Page parent"
250
  msgstr "Rodzic strony"
251
 
252
+ #: ../admin/settings.php:354
253
  msgid "Page template"
254
  msgstr "Szablon strony"
255
 
256
  # @ polylang
257
+ #: ../admin/settings.php:355
258
  msgid "Page order"
259
  msgstr "Kolejność stron"
260
 
261
+ #: ../admin/settings.php:356
262
  msgid "Featured image"
263
  msgstr "Zdjęcie główne"
264
 
265
+ #: ../admin/table-languages.php:59
266
+ msgid "You are about to permanently delete this language. Are you sure?"
267
+ msgstr "Zamierzasz całkowicie usunąć ten język. Czy jesteś pewny?"
268
+
269
+ # @ polylang
270
+ #: ../admin/table-languages.php:60 ../admin/table-string.php:167
271
+ msgid "Delete"
272
+ msgstr "Usuń"
273
+
274
+ # @ polylang
275
+ #: ../admin/table-languages.php:74 ../admin/view-languages.php:72
276
+ msgid "Full name"
277
+ msgstr "Pełna nazwa"
278
+
279
+ # @ polylang
280
+ #: ../admin/table-languages.php:75 ../admin/view-languages.php:78
281
+ msgid "Locale"
282
+ msgstr "Lokalizacja"
283
+
284
+ # @ polylang
285
+ #: ../admin/table-languages.php:76
286
+ msgid "Code"
287
+ msgstr "Kod"
288
+
289
+ # @ polylang
290
+ #: ../admin/table-languages.php:77 ../admin/view-languages.php:108
291
+ msgid "Order"
292
+ msgstr "Kolejność"
293
+
294
+ # @ polylang
295
+ #: ../admin/table-languages.php:78
296
+ msgid "Flag"
297
+ msgstr "Flaga"
298
+
299
+ # @ polylang
300
+ #: ../admin/table-languages.php:79
301
+ msgid "Posts"
302
+ msgstr "Wpisy"
303
+
304
+ #: ../admin/table-string.php:108
305
+ msgid "Group"
306
+ msgstr "Grupa"
307
+
308
+ # @ polylang
309
+ #: ../admin/table-string.php:109
310
+ msgid "Name"
311
+ msgstr "Nazwa"
312
+
313
+ # @ polylang
314
+ #: ../admin/table-string.php:110
315
+ msgid "String"
316
+ msgstr "Ciąg tekstowy"
317
+
318
+ # @ polylang
319
+ #: ../admin/table-string.php:111 ../admin/view-translations-media.php:5
320
+ #: ../admin/view-translations-post.php:5 ../admin/view-translations-term.php:6
321
+ #: ../admin/view-translations-term.php:11
322
+ msgid "Translations"
323
+ msgstr "Tłumaczenia"
324
+
325
+ #: ../admin/table-string.php:186
326
+ msgid "View all groups"
327
+ msgstr "Zobacz wszystkie grupy"
328
+
329
+ #: ../admin/table-string.php:199
330
+ msgid "Filter"
331
+ msgstr "Filtr"
332
+
333
+ # @ polylang
334
+ #: ../admin/view-about.php:3
335
+ #, php-format
336
+ msgid ""
337
+ "Polylang is provided with an extensive %sdocumentation%s (in English only). "
338
+ "It includes information on how to set up your multilingual site and use it "
339
+ "on a daily basis, a FAQ, as well as a documentation for programmers to adapt "
340
+ "their plugins and themes."
341
+ msgstr ""
342
+ "Polylang jest dostarczany z obszerną %sdokumentacją%s (tylko w języku "
343
+ "angielskim), która zawiera informacje jak skonfigurować stronę wielojęzyczną "
344
+ "i korzystać z niej w codziennej pracy, dział FAQ, oraz dokumentację dla "
345
+ "programistów o tym jak adaptować wtyczki i motywy."
346
+
347
+ # @ polylang
348
+ #: ../admin/view-about.php:9
349
+ #, php-format
350
+ msgid ""
351
+ "You will also find useful information in the %ssupport forum%s. However "
352
+ "don't forget to make a search before posting a new topic."
353
+ msgstr ""
354
+ "Przydatne informacje znajdziesz w %sforum pomocy%s. Nie zapomnij go "
355
+ "przeszukać, zanim dodasz nowy temat."
356
+
357
+ # @ polylang
358
+ #: ../admin/view-about.php:16
359
+ #, php-format
360
+ msgid ""
361
+ "Polylang is free of charge and is released under the same license as "
362
+ "WordPress, the %sGPL%s."
363
+ msgstr ""
364
+ "Polylang jest bezpłatne i opublikowane na takiej samej licencji jak "
365
+ "WordPress, czyli %sGPL%s."
366
+
367
  # @ polylang
368
+ #: ../admin/view-about.php:22
369
+ #, php-format
370
+ msgid "If you wonder how you can help the project, just %sread this%s."
371
+ msgstr ""
372
+ "Jeśli zastanawiasz się jak mógłbyś pomóc w tym projekcie, po prostu "
373
+ "%sprzeczytaj to%s."
374
+
375
+ # @ polylang
376
+ #: ../admin/view-about.php:27
377
+ msgid ""
378
+ "Finally if you like this plugin or if it helps your business, donations to "
379
+ "the author are greatly appreciated."
380
+ msgstr ""
381
+ "Wreszcie, jeśli lubisz tę wtyczkę i pomaga Ci ona w prowadzeniu biznesu, "
382
+ "wsparcie dla jej autora będzie mile widziane."
383
+
384
+ # @ polylang
385
+ #: ../admin/view-languages.php:38
386
  msgid "Edit language"
387
  msgstr "Edytuj język"
388
 
389
  # @ polylang
390
+ #: ../admin/view-languages.php:38 ../admin/view-languages.php:113
 
391
  msgid "Add new language"
392
  msgstr "Dodaj nowy język"
393
 
394
  # @ polylang
395
+ #: ../admin/view-languages.php:54
396
  msgid "Choose a language"
397
  msgstr "Wybierz język"
398
 
399
  # @ polylang
400
+ #: ../admin/view-languages.php:68
401
  msgid "You can choose a language in the list or directly edit it below."
402
  msgstr "Możesz wybrać język z listy lub edytować go bezpośrednio poniżej"
403
 
404
  # @ polylang
405
+ #: ../admin/view-languages.php:74
 
 
 
 
 
 
406
  msgid "The name is how it is displayed on your site (for example: English)."
407
  msgstr "Nazwa, tak jak będzie wyświetlana na stronie (np. English)"
408
 
409
  # @ polylang
410
+ #: ../admin/view-languages.php:83
411
+ msgid ""
412
+ "Wordpress Locale for the language (for example: en_US). You will need to "
413
+ "install the .mo file for this language."
414
+ msgstr ""
415
+ "Lokalizacja WordPress dla języka (np. en_US). Dla tego języka będziesz "
416
+ "musiał zainstalować plik .mo."
 
 
417
 
418
  # @ polylang
419
+ #: ../admin/view-languages.php:87
420
  msgid "Language code"
421
  msgstr "Kod języka"
422
 
423
  # @ polylang
424
+ #: ../admin/view-languages.php:89
425
+ msgid "Language code - preferably 2-letters ISO 639-1 (for example: en)"
426
+ msgstr ""
427
+ "Kod języka - preferowane 2 litery zgodnie z ISO 639-1 (na przykład: en)"
428
 
429
  # @ polylang
430
+ #: ../admin/view-languages.php:93
431
  msgid "Text direction"
432
  msgstr "Kierunek zapisu języka"
433
 
434
  # @ polylang
435
+ #: ../admin/view-languages.php:97
436
  msgid "left to right"
437
  msgstr "od lewej do prawej"
438
 
439
  # @ polylang
440
+ #: ../admin/view-languages.php:102
441
  msgid "right to left"
442
  msgstr "od prawej do lewej"
443
 
444
  # @ polylang
445
+ #: ../admin/view-languages.php:104
446
  msgid "Choose the text direction for the language"
447
  msgstr "Wybierz kierunek zapisu języka"
448
 
449
  # @ polylang
450
+ #: ../admin/view-languages.php:110
 
 
 
 
 
 
451
  msgid "Position of the language in the language switcher"
452
  msgstr "Pozycja języka w przełączniku języka"
453
 
454
+ #: ../admin/view-languages.php:113
455
+ msgid "Update"
456
+ msgstr "Aktualizacja"
 
 
 
 
 
 
457
 
458
  # @ polylang
459
+ #: ../admin/view-languages.php:139
460
  msgid "Search translations"
461
  msgstr "Szukaj tłumaczeń"
462
 
463
  # @ polylang
464
+ #: ../admin/view-languages.php:142
465
  msgid "Clean strings translation database"
466
  msgstr "Wyczyść tłumaczenia fraz z bazy"
467
 
468
+ #: ../admin/view-languages.php:143
469
+ msgid ""
470
+ "Use this to remove unused strings from database, for example after a plugin "
471
+ "has been uninstalled."
472
+ msgstr ""
473
+ "Użyj tego aby usunąć nieużywane frazy z bazy danych, np. po tym jak "
474
+ "odinstalowałeś wtyczkę."
475
+
476
  # @ polylang
477
+ #: ../admin/view-languages.php:161
478
  msgid "Default language"
479
  msgstr "Domyślny język"
480
 
481
  # @ polylang
482
+ #: ../admin/view-languages.php:176
483
+ msgid ""
484
+ "There are posts, pages, categories or tags without language set. Do you want "
485
+ "to set them all to default language ?"
486
+ msgstr ""
487
+ "Istnieją wpisy, strony, kategorie i tagi bez określonego języka. Czy chcesz "
488
+ "ustawić dla nich domyślny język?"
 
 
 
 
 
 
489
 
490
  # @ polylang
491
+ #: ../admin/view-languages.php:184
492
  msgid "URL modifications"
493
  msgstr "Modyfikacje URL"
494
 
495
+ #: ../admin/view-languages.php:190
496
+ msgid "The language is set from content"
497
+ msgstr "Język jest ustawiony na podstawie zawartości"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
498
 
499
  # @ polylang
500
+ #: ../admin/view-languages.php:193
501
+ msgid "Posts, pages, categories and tags urls are not modified."
502
+ msgstr "Wpisy, strony, kategorie i adresy tagów nie są zmodyfikowane."
 
 
 
503
 
504
  # @ polylang
505
+ #: ../admin/view-languages.php:199
506
+ msgid "The language is set from the directory name in pretty permalinks"
507
+ msgstr "Język jest ustawiany ze ścieżki katalogów w bezpośrednich odnośnikach"
 
508
 
509
  # @ polylang
510
+ #: ../admin/view-languages.php:202 ../admin/view-languages.php:211
511
+ #: ../admin/view-languages.php:258 ../admin/view-languages.php:267
512
+ msgid "Example:"
513
+ msgstr "Przykład:"
514
 
515
  # @ polylang
516
+ #: ../admin/view-languages.php:208
517
+ msgid "The language is set from the subdomain name in pretty permalinks"
518
+ msgstr "Język jest ustawiany z nazwy subdomeny w bezpośrednich odnośnikach"
519
 
520
+ #: ../admin/view-languages.php:217
521
+ msgid "The language is set from different domains"
522
+ msgstr "Język jest ustawiany z różnych domen"
 
523
 
524
  # @ polylang
525
+ #: ../admin/view-languages.php:241
526
+ msgid "Hide URL language information for default language"
527
+ msgstr "Ukryj informację o języku w URL dla domyślnego języka"
528
 
529
  # @ polylang
530
+ #: ../admin/view-languages.php:255
531
+ msgid "Remove /language/ in pretty permalinks"
532
+ msgstr "Usuń /language/ z bezpośrednich odnośników"
533
 
534
  # @ polylang
535
+ #: ../admin/view-languages.php:264
536
+ msgid "Keep /language/ in pretty permalinks"
537
+ msgstr "Zatrzymaj /language/ w bezpośrednich odnośnikach"
 
 
538
 
539
  # @ polylang
540
+ #: ../admin/view-languages.php:279
541
+ msgid ""
542
+ "The front page url contains the language code instead of the page name or "
543
+ "page id"
544
+ msgstr "Adres strony głównej zawiera kod języka zamiast nazwy lub id strony."
545
 
546
  # @ polylang
547
+ #: ../admin/view-languages.php:287
548
+ #, php-format
549
+ msgid "Example: %s instead of %s"
550
+ msgstr "Przykład: %s zamiast %s"
551
 
552
  # @ polylang
553
+ #: ../admin/view-languages.php:297
554
+ msgid "Detect browser language"
555
+ msgstr "Wykryj język przeglądarki"
556
 
557
  # @ polylang
558
+ #: ../admin/view-languages.php:303
559
+ msgid ""
560
+ "When the front page is visited, set the language according to the browser "
561
+ "preference"
562
  msgstr ""
563
+ "Przy wejściu na stronę domową, ustaw język zgodnie z ustawieniami "
564
+ "przeglądarki"
565
 
566
+ #: ../admin/view-languages.php:310
567
+ msgid "Media"
568
+ msgstr "Media"
 
 
569
 
570
+ #: ../admin/view-languages.php:316
571
+ msgid "Activate languages and translations for media"
572
+ msgstr "Aktywuj języki i tłumaczenia dla mediów."
573
 
574
+ #: ../admin/view-languages.php:324
575
+ msgid "Custom post types"
576
+ msgstr "Własne typy wpisów"
 
577
 
578
+ #: ../admin/view-languages.php:337
579
+ msgid "Activate languages and translations for custom post types."
580
+ msgstr "Aktywuj języki i tłumaczenia dla własnych typów wpisów."
581
 
582
+ #: ../admin/view-languages.php:344
583
+ msgid "Custom taxonomies"
584
+ msgstr "Własne taksonomie"
585
 
586
+ #: ../admin/view-languages.php:357
587
+ msgid "Activate languages and translations for custom taxonomies."
588
+ msgstr "Aktywuj języki i tłumaczenia dla własnych taksonomii."
589
 
590
+ #: ../admin/view-languages.php:363
591
+ msgid "Synchronization"
592
+ msgstr "Synchronizacja"
593
 
594
+ #: ../admin/view-languages.php:374
595
+ msgid ""
596
+ "The synchronization options allow to maintain exact same values (or "
597
+ "translations in the case of taxonomies and page parent) of meta content "
598
+ "between the translations of a post or page."
599
+ msgstr ""
600
+ "Ustawienia synchronizacji pozwalają zachować dokładnie takie same wartości "
601
+ "(lub tłumaczenia w przypadku taksonomii i rodziców stron) meta danych "
602
+ "pomiędzy tłumaczeniami stron i wpisów."
603
 
604
  # @ polylang
605
+ #: ../admin/view-translations-media.php:30
606
+ #: ../admin/view-translations-post.php:21
607
+ #: ../admin/view-translations-term.php:30
608
+ msgid "Add new"
609
+ msgstr "Dodaj nowy"
610
 
611
+ #: ../frontend/frontend-filters-search.php:81
612
+ msgid "Search"
613
+ msgstr "Szukaj"
614
 
615
+ #: ../include/plugins-compat.php:66
616
+ msgid ""
617
+ "Import <strong>posts, pages, comments, custom fields, categories, and tags</"
618
+ "strong> from a WordPress export file."
619
  msgstr ""
620
+ "Importuj <strong>wpisy, strony, komentarze, własne pola, kategorie i tagi</"
621
+ "strong> z pliku eksportu WordPress."
622
 
623
  # @ polylang
624
+ #: ../include/switcher.php:22
625
+ msgid "Displays language names"
626
+ msgstr "Wyświetla nazwy języków"
627
 
628
  # @ polylang
629
+ #: ../include/switcher.php:23
630
+ msgid "Displays flags"
631
+ msgstr "Wyświetla flagi"
 
 
 
632
 
633
  # @ polylang
634
+ #: ../include/switcher.php:24
635
+ msgid "Forces link to front page"
636
+ msgstr "Wymusza link do strony głównej"
 
 
 
 
637
 
638
  # @ polylang
639
+ #: ../include/switcher.php:25
640
+ msgid "Hides the current language"
641
+ msgstr "Ukrywa aktualny język"
642
 
643
  # @ polylang
644
+ #: ../include/switcher.php:29
645
+ msgid "Displays as dropdown"
646
+ msgstr "Wyświetla się jako menu rozwijane"
647
 
648
+ #: ../include/upgrade.php:76
649
+ msgid ""
650
+ "Polylang has been deactivated because you upgraded from a too old version."
651
  msgstr ""
652
+ "Polylang został wyłączony ponieważ aktualizowałeś go ze zbyt starej wersji."
653
 
654
+ #: ../include/upgrade.php:78
 
655
  #, php-format
656
+ msgid "Please upgrade first to %s before ugrading to %s."
657
+ msgstr "Najpierw zaktualizuj do %s zanim wykonasz aktualizację do %s."
658
 
659
+ #. translators: Calendar caption: 1: month name, 2: 4-digit year
660
+ #: ../include/widget-calendar.php:126
661
  #, php-format
662
+ msgctxt "calendar caption"
663
+ msgid "%1$s %2$s"
664
+ msgstr "%1$s %2$s"
665
 
666
+ #: ../include/widget-calendar.php:152 ../include/widget-calendar.php:160
667
+ #, php-format
668
+ msgid "View posts for %1$s %2$s"
669
+ msgstr "Wyświetl posty dla %1$s %2$s"
670
 
671
  # @ polylang
672
+ #: ../include/widget-languages.php:16
673
+ msgid "Language Switcher"
674
+ msgstr "Przełącznik języka"
675
 
676
  # @ polylang
677
+ #: ../include/widget-languages.php:16
678
+ msgid "Displays a language switcher"
679
+ msgstr "Wyświetla przełącznik języka"
680
 
681
  # @ polylang
682
+ #: ../include/widget-languages.php:100
683
+ msgid "Title:"
684
+ msgstr "Tytuł:"
685
 
686
+ #: ../include/widget-recent-comments.php:47
687
+ msgid "Recent Comments"
688
+ msgstr "Ostatnie Komentarze"
 
689
 
690
+ #. translators: comments widget: 1: comment author, 2: post link
691
+ #: ../include/widget-recent-comments.php:81
692
+ #, php-format
693
+ msgctxt "widgets"
694
+ msgid "%1$s on %2$s"
695
+ msgstr "%1$s w %2$s"
696
 
697
+ #: ../include/widget-recent-posts.php:47
698
+ msgid "Recent Posts"
699
+ msgstr "Ostatnie Wpisy"
700
+
701
+ # @ polylang
702
+ #: ../polylang.php:164
703
+ #, php-format
704
+ msgid "You are using WordPress %s. Polylang requires at least WordPress %s."
705
+ msgstr "Używasz WordPress %s. Polylang wymaga przynajmniej WordPress %s."
languages/polylang.pot CHANGED
@@ -3,7 +3,7 @@ msgstr ""
3
  "Project-Id-Version: Polylang v1.5\n"
4
  "Report-Msgid-Bugs-To: \n"
5
  "POT-Creation-Date: \n"
6
- "PO-Revision-Date: 2014-04-23 20:09:41+0000\n"
7
  "Last-Translator: \n"
8
  "Language-Team: \n"
9
  "MIME-Version: 1.0\n"
@@ -48,11 +48,11 @@ msgstr ""
48
  msgid "Finally if you like this plugin or if it helps your business, donations to the author are greatly appreciated."
49
  msgstr ""
50
 
51
- #: admin/admin-filters-post.php:83
52
- #: admin/admin.php:73
53
  #: admin/settings.php:53
54
  #: admin/settings.php:80
55
- #: include/model.php:506
56
  #@ polylang
57
  msgid "Languages"
58
  msgstr ""
@@ -82,28 +82,28 @@ msgstr ""
82
  msgid "Displays as dropdown"
83
  msgstr ""
84
 
85
- #: admin/admin.php:252
86
  #@ polylang
87
  msgid "Filters content by language"
88
  msgstr ""
89
 
90
- #: admin/admin.php:243
91
  #@ polylang
92
  msgid "Show all languages"
93
  msgstr ""
94
 
95
  #: admin/admin-filters-columns.php:132
96
- #: admin/admin-filters-columns.php:228
97
  #@ polylang
98
  msgid "Add new translation"
99
  msgstr ""
100
 
101
- #: admin/admin-filters-columns.php:169
102
- #: admin/admin-filters-media.php:58
103
  #: admin/admin-filters-post.php:107
104
- #: admin/admin-filters-term.php:75
105
- #: admin/admin-filters-term.php:112
106
- #: include/model.php:507
107
  #@ polylang
108
  msgid "Language"
109
  msgstr ""
@@ -117,19 +117,19 @@ msgstr ""
117
  msgid "Translations"
118
  msgstr ""
119
 
120
- #: admin/admin-filters-term.php:77
121
- #: admin/admin-filters-term.php:114
122
  #@ polylang
123
  msgid "Sets the language"
124
  msgstr ""
125
 
126
- #: admin/admin-filters.php:46
127
  #@ polylang
128
  msgid "The widget is displayed for:"
129
  msgstr ""
130
 
131
- #: admin/admin-filters.php:49
132
- #: include/model.php:508
133
  #@ polylang
134
  msgid "All languages"
135
  msgstr ""
@@ -144,7 +144,7 @@ msgstr ""
144
  msgid "Wordpress default"
145
  msgstr ""
146
 
147
- #: admin/admin.php:154
148
  #: admin/settings.php:85
149
  #@ polylang
150
  msgid "Settings"
@@ -170,82 +170,82 @@ msgstr ""
170
  msgid "Strings translation"
171
  msgstr ""
172
 
173
- #: admin/admin-model.php:285
174
  #@ polylang
175
  msgid "Enter a valid WordPress locale"
176
  msgstr ""
177
 
178
- #: admin/admin-model.php:293
179
  #@ polylang
180
  msgid "The language code must be unique"
181
  msgstr ""
182
 
183
- #: admin/admin-model.php:297
184
  #@ polylang
185
  msgid "The language must have a name"
186
  msgstr ""
187
 
188
- #: admin/admin.php:353
189
  #@ polylang
190
  msgid "The language was created, but the WordPress language file was not downloaded. Please install it manually."
191
  msgstr ""
192
 
193
- #: admin/settings.php:328
194
  #@ polylang
195
  msgid "Widget title"
196
  msgstr ""
197
 
198
- #: admin/settings.php:346
199
  #@ polylang
200
  msgid "Taxonomies"
201
  msgstr ""
202
 
203
- #: admin/settings.php:347
204
  #@ polylang
205
  msgid "Custom fields"
206
  msgstr ""
207
 
208
- #: admin/settings.php:348
209
  #@ polylang
210
  msgid "Comment status"
211
  msgstr ""
212
 
213
- #: admin/settings.php:349
214
  #@ polylang
215
  msgid "Ping status"
216
  msgstr ""
217
 
218
- #: admin/settings.php:350
219
  #@ polylang
220
  msgid "Sticky posts"
221
  msgstr ""
222
 
223
- #: admin/settings.php:351
224
  #@ polylang
225
  msgid "Published date"
226
  msgstr ""
227
 
228
- #: admin/settings.php:352
229
  #@ polylang
230
  msgid "Post format"
231
  msgstr ""
232
 
233
- #: admin/settings.php:353
234
  #@ polylang
235
  msgid "Page parent"
236
  msgstr ""
237
 
238
- #: admin/settings.php:354
239
  #@ polylang
240
  msgid "Page template"
241
  msgstr ""
242
 
243
- #: admin/settings.php:355
244
  #@ polylang
245
  msgid "Page order"
246
  msgstr ""
247
 
248
- #: admin/settings.php:356
249
  #@ polylang
250
  msgid "Featured image"
251
  msgstr ""
@@ -298,11 +298,6 @@ msgstr ""
298
  msgid "Language code"
299
  msgstr ""
300
 
301
- #: admin/view-languages.php:93
302
- #@ polylang
303
- msgid "2-letters ISO 639-1 language code (for example: en)"
304
- msgstr ""
305
-
306
  #: admin/view-languages.php:93
307
  #@ polylang
308
  msgid "Text direction"
@@ -338,7 +333,7 @@ msgstr ""
338
  #: admin/admin-nav-menu.php:90
339
  #: admin/admin-nav-menu.php:93
340
  #: admin/admin-nav-menu.php:124
341
- #: admin/admin-nav-menu.php:181
342
  #: include/upgrade.php:301
343
  #@ polylang
344
  msgid "Language switcher"
@@ -394,7 +389,7 @@ msgstr ""
394
  msgid "Activate languages and translations for media"
395
  msgstr ""
396
 
397
- #: admin/view-languages.php:365
398
  #@ polylang
399
  msgid "Synchronization"
400
  msgstr ""
@@ -419,8 +414,8 @@ msgstr ""
419
  msgid "Activate languages and translations for custom taxonomies."
420
  msgstr ""
421
 
422
- #: admin/admin-filters-post.php:351
423
- #: admin/admin-filters-term.php:502
424
  #: admin/table-languages.php:54
425
  #: admin/view-translations-media.php:21
426
  #@ polylang
@@ -486,7 +481,7 @@ msgstr ""
486
  msgid "Adds multilingual capability to WordPress"
487
  msgstr ""
488
 
489
- #: polylang.php:160
490
  #, php-format
491
  #@ polylang
492
  msgid "You are using WordPress %s. Polylang requires at least WordPress %s."
@@ -528,7 +523,7 @@ msgstr ""
528
  msgid "The synchronization options allow to maintain exact same values (or translations in the case of taxonomies and page parent) of meta content between the translations of a post or page."
529
  msgstr ""
530
 
531
- #: admin/admin-model.php:289
532
  #@ polylang
533
  msgid "The language code contains invalid characters"
534
  msgstr ""
@@ -593,27 +588,27 @@ msgstr ""
593
  msgid "Example: %s instead of %s"
594
  msgstr ""
595
 
596
- #: admin/admin-model.php:49
597
  #@ polylang
598
  msgid "Impossible to add the language."
599
  msgstr ""
600
 
601
- #: admin/admin-model.php:73
602
  #@ polylang
603
  msgid "Language added."
604
  msgstr ""
605
 
606
- #: admin/admin-model.php:187
607
  #@ polylang
608
  msgid "Language deleted."
609
  msgstr ""
610
 
611
- #: admin/admin-model.php:268
612
  #@ polylang
613
  msgid "Language updated."
614
  msgstr ""
615
 
616
- #: admin/settings.php:203
617
  #@ polylang
618
  msgid "Translations updated."
619
  msgstr ""
3
  "Project-Id-Version: Polylang v1.5\n"
4
  "Report-Msgid-Bugs-To: \n"
5
  "POT-Creation-Date: \n"
6
+ "PO-Revision-Date: 2014-06-12 16:25:00+0000\n"
7
  "Last-Translator: \n"
8
  "Language-Team: \n"
9
  "MIME-Version: 1.0\n"
48
  msgid "Finally if you like this plugin or if it helps your business, donations to the author are greatly appreciated."
49
  msgstr ""
50
 
51
+ #: admin/admin-filters-post.php:81
52
+ #: admin/admin.php:90
53
  #: admin/settings.php:53
54
  #: admin/settings.php:80
55
+ #: include/model.php:538
56
  #@ polylang
57
  msgid "Languages"
58
  msgstr ""
82
  msgid "Displays as dropdown"
83
  msgstr ""
84
 
85
+ #: admin/admin.php:271
86
  #@ polylang
87
  msgid "Filters content by language"
88
  msgstr ""
89
 
90
+ #: admin/admin.php:262
91
  #@ polylang
92
  msgid "Show all languages"
93
  msgstr ""
94
 
95
  #: admin/admin-filters-columns.php:132
96
+ #: admin/admin-filters-columns.php:219
97
  #@ polylang
98
  msgid "Add new translation"
99
  msgstr ""
100
 
101
+ #: admin/admin-filters-columns.php:166
102
+ #: admin/admin-filters-media.php:55
103
  #: admin/admin-filters-post.php:107
104
+ #: admin/admin-filters-term.php:77
105
+ #: admin/admin-filters-term.php:116
106
+ #: include/model.php:539
107
  #@ polylang
108
  msgid "Language"
109
  msgstr ""
117
  msgid "Translations"
118
  msgstr ""
119
 
120
+ #: admin/admin-filters-term.php:79
121
+ #: admin/admin-filters-term.php:118
122
  #@ polylang
123
  msgid "Sets the language"
124
  msgstr ""
125
 
126
+ #: admin/admin-filters.php:45
127
  #@ polylang
128
  msgid "The widget is displayed for:"
129
  msgstr ""
130
 
131
+ #: admin/admin-filters.php:48
132
+ #: include/model.php:540
133
  #@ polylang
134
  msgid "All languages"
135
  msgstr ""
144
  msgid "Wordpress default"
145
  msgstr ""
146
 
147
+ #: admin/admin.php:171
148
  #: admin/settings.php:85
149
  #@ polylang
150
  msgid "Settings"
170
  msgid "Strings translation"
171
  msgstr ""
172
 
173
+ #: admin/admin-model.php:274
174
  #@ polylang
175
  msgid "Enter a valid WordPress locale"
176
  msgstr ""
177
 
178
+ #: admin/admin-model.php:282
179
  #@ polylang
180
  msgid "The language code must be unique"
181
  msgstr ""
182
 
183
+ #: admin/admin-model.php:286
184
  #@ polylang
185
  msgid "The language must have a name"
186
  msgstr ""
187
 
188
+ #: admin/admin.php:372
189
  #@ polylang
190
  msgid "The language was created, but the WordPress language file was not downloaded. Please install it manually."
191
  msgstr ""
192
 
193
+ #: admin/settings.php:330
194
  #@ polylang
195
  msgid "Widget title"
196
  msgstr ""
197
 
198
+ #: admin/settings.php:348
199
  #@ polylang
200
  msgid "Taxonomies"
201
  msgstr ""
202
 
203
+ #: admin/settings.php:349
204
  #@ polylang
205
  msgid "Custom fields"
206
  msgstr ""
207
 
208
+ #: admin/settings.php:350
209
  #@ polylang
210
  msgid "Comment status"
211
  msgstr ""
212
 
213
+ #: admin/settings.php:351
214
  #@ polylang
215
  msgid "Ping status"
216
  msgstr ""
217
 
218
+ #: admin/settings.php:352
219
  #@ polylang
220
  msgid "Sticky posts"
221
  msgstr ""
222
 
223
+ #: admin/settings.php:353
224
  #@ polylang
225
  msgid "Published date"
226
  msgstr ""
227
 
228
+ #: admin/settings.php:354
229
  #@ polylang
230
  msgid "Post format"
231
  msgstr ""
232
 
233
+ #: admin/settings.php:355
234
  #@ polylang
235
  msgid "Page parent"
236
  msgstr ""
237
 
238
+ #: admin/settings.php:356
239
  #@ polylang
240
  msgid "Page template"
241
  msgstr ""
242
 
243
+ #: admin/settings.php:357
244
  #@ polylang
245
  msgid "Page order"
246
  msgstr ""
247
 
248
+ #: admin/settings.php:358
249
  #@ polylang
250
  msgid "Featured image"
251
  msgstr ""
298
  msgid "Language code"
299
  msgstr ""
300
 
 
 
 
 
 
301
  #: admin/view-languages.php:93
302
  #@ polylang
303
  msgid "Text direction"
333
  #: admin/admin-nav-menu.php:90
334
  #: admin/admin-nav-menu.php:93
335
  #: admin/admin-nav-menu.php:124
336
+ #: admin/admin-nav-menu.php:188
337
  #: include/upgrade.php:301
338
  #@ polylang
339
  msgid "Language switcher"
389
  msgid "Activate languages and translations for media"
390
  msgstr ""
391
 
392
+ #: admin/view-languages.php:363
393
  #@ polylang
394
  msgid "Synchronization"
395
  msgstr ""
414
  msgid "Activate languages and translations for custom taxonomies."
415
  msgstr ""
416
 
417
+ #: admin/admin-filters-post.php:370
418
+ #: admin/admin-filters-term.php:579
419
  #: admin/table-languages.php:54
420
  #: admin/view-translations-media.php:21
421
  #@ polylang
481
  msgid "Adds multilingual capability to WordPress"
482
  msgstr ""
483
 
484
+ #: polylang.php:167
485
  #, php-format
486
  #@ polylang
487
  msgid "You are using WordPress %s. Polylang requires at least WordPress %s."
523
  msgid "The synchronization options allow to maintain exact same values (or translations in the case of taxonomies and page parent) of meta content between the translations of a post or page."
524
  msgstr ""
525
 
526
+ #: admin/admin-model.php:278
527
  #@ polylang
528
  msgid "The language code contains invalid characters"
529
  msgstr ""
588
  msgid "Example: %s instead of %s"
589
  msgstr ""
590
 
591
+ #: admin/admin-model.php:38
592
  #@ polylang
593
  msgid "Impossible to add the language."
594
  msgstr ""
595
 
596
+ #: admin/admin-model.php:62
597
  #@ polylang
598
  msgid "Language added."
599
  msgstr ""
600
 
601
+ #: admin/admin-model.php:176
602
  #@ polylang
603
  msgid "Language deleted."
604
  msgstr ""
605
 
606
+ #: admin/admin-model.php:257
607
  #@ polylang
608
  msgid "Language updated."
609
  msgstr ""
610
 
611
+ #: admin/settings.php:205
612
  #@ polylang
613
  msgid "Translations updated."
614
  msgstr ""
polylang.php CHANGED
@@ -2,7 +2,7 @@
2
  /*
3
  Plugin Name: Polylang
4
  Plugin URI: http://polylang.wordpress.com/
5
- Version: 1.5
6
  Author: Frédéric Demarle
7
  Description: Adds multilingual capability to WordPress
8
  Text Domain: polylang
@@ -33,7 +33,7 @@ Domain Path: /languages
33
  if (!function_exists('add_action'))
34
  exit();
35
 
36
- define('POLYLANG_VERSION', '1.5');
37
  define('PLL_MIN_WP_VERSION', '3.5');
38
 
39
  define('POLYLANG_BASENAME', plugin_basename(__FILE__)); // plugin name as known by WP
@@ -90,8 +90,11 @@ class Polylang {
90
 
91
  // avoid loading polylang admin for frontend ajax requests
92
  // special test for plupload which does not use jquery ajax and thus does not pass our ajax prefilter
93
- if (!defined('PLL_AJAX_ON_FRONT'))
94
- define('PLL_AJAX_ON_FRONT', defined('DOING_AJAX') && DOING_AJAX && empty($_REQUEST['pll_ajax_backend']) && !(isset( $_REQUEST['action'] ) && 'upload-attachment' === $_REQUEST['action']));
 
 
 
95
 
96
  if (!defined('PLL_ADMIN'))
97
  define('PLL_ADMIN', defined('DOING_CRON') || (is_admin() && !PLL_AJAX_ON_FRONT));
@@ -100,7 +103,7 @@ class Polylang {
100
  define('PLL_SETTINGS', is_admin() && isset($_GET['page']) && $_GET['page'] == 'mlang');
101
 
102
  // blog creation on multisite
103
- add_action('wpmu_new_blog', array(&$this, 'wpmu_new_blog'));
104
 
105
  // FIXME maybe not available on every installations but widely used by WP plugins
106
  spl_autoload_register(array(&$this, 'autoload')); // autoload classes
@@ -208,7 +211,7 @@ class Polylang {
208
  $polylang = new StdClass();
209
  $polylang->options = &$options;
210
  $polylang->model = new PLL_Admin_Model($options);
211
- $polylang->links_model = $this->get_links_model($polylang->model, $options);
212
  flush_rewrite_rules();
213
  }
214
 
@@ -280,7 +283,7 @@ class Polylang {
280
 
281
  $class = apply_filters('pll_model', PLL_SETTINGS ? 'PLL_Admin_Model' : 'PLL_Model');
282
  $model = new $class($options);
283
- $links_model = $this->get_links_model($model);
284
 
285
  if (PLL_ADMIN) {
286
  $polylang = new PLL_Admin($links_model);
@@ -298,20 +301,6 @@ class Polylang {
298
  if (!defined('PLL_WPML_COMPAT') || PLL_WPML_COMPAT)
299
  new PLL_WPML_Config;
300
  }
301
-
302
- /*
303
- * setup the links model based on options
304
- *
305
- * @since 1.2
306
- *
307
- * @param object $model instance of PLL_Model
308
- * @return object implementing "links_model interface"
309
- */
310
- protected function get_links_model(&$model) {
311
- $c = array('Directory', 'Directory', 'Subdomain', 'Domain');
312
- $class = get_option('permalink_structure') ? 'PLL_Links_' .$c[$model->options['force_lang']] : 'PLL_Links_Default';
313
- return new $class($model);
314
- }
315
  }
316
 
317
  new Polylang();
2
  /*
3
  Plugin Name: Polylang
4
  Plugin URI: http://polylang.wordpress.com/
5
+ Version: 1.5.1
6
  Author: Frédéric Demarle
7
  Description: Adds multilingual capability to WordPress
8
  Text Domain: polylang
33
  if (!function_exists('add_action'))
34
  exit();
35
 
36
+ define('POLYLANG_VERSION', '1.5.1');
37
  define('PLL_MIN_WP_VERSION', '3.5');
38
 
39
  define('POLYLANG_BASENAME', plugin_basename(__FILE__)); // plugin name as known by WP
90
 
91
  // avoid loading polylang admin for frontend ajax requests
92
  // special test for plupload which does not use jquery ajax and thus does not pass our ajax prefilter
93
+ // special test for customize_save done in frontend but for which we want to load the admin
94
+ if (!defined('PLL_AJAX_ON_FRONT')) {
95
+ $in = isset($_REQUEST['action']) && in_array($_REQUEST['action'], array('upload-attachment', 'customize_save'));
96
+ define('PLL_AJAX_ON_FRONT', defined('DOING_AJAX') && DOING_AJAX && empty($_REQUEST['pll_ajax_backend']) && !$in);
97
+ }
98
 
99
  if (!defined('PLL_ADMIN'))
100
  define('PLL_ADMIN', defined('DOING_CRON') || (is_admin() && !PLL_AJAX_ON_FRONT));
103
  define('PLL_SETTINGS', is_admin() && isset($_GET['page']) && $_GET['page'] == 'mlang');
104
 
105
  // blog creation on multisite
106
+ add_action('wpmu_new_blog', array(&$this, 'wpmu_new_blog'), 5); // before WP attempts to send mails which can break on some PHP versions
107
 
108
  // FIXME maybe not available on every installations but widely used by WP plugins
109
  spl_autoload_register(array(&$this, 'autoload')); // autoload classes
211
  $polylang = new StdClass();
212
  $polylang->options = &$options;
213
  $polylang->model = new PLL_Admin_Model($options);
214
+ $polylang->links_model = $polylang->model->get_links_model();
215
  flush_rewrite_rules();
216
  }
217
 
283
 
284
  $class = apply_filters('pll_model', PLL_SETTINGS ? 'PLL_Admin_Model' : 'PLL_Model');
285
  $model = new $class($options);
286
+ $links_model = $model->get_links_model();
287
 
288
  if (PLL_ADMIN) {
289
  $polylang = new PLL_Admin($links_model);
301
  if (!defined('PLL_WPML_COMPAT') || PLL_WPML_COMPAT)
302
  new PLL_WPML_Config;
303
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
304
  }
305
 
306
  new Polylang();
readme.txt CHANGED
@@ -3,8 +3,8 @@ Contributors: Chouby
3
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=CCWWYUUQV8F4E
4
  Tags: multilingual, bilingual, translate, translation, language, multilanguage, international, localization
5
  Requires at least: 3.5
6
- Tested up to: 3.9
7
- Stable tag: 1.5
8
  License: GPLv2 or later
9
 
10
  Polylang adds multilingual content management support to WordPress.
@@ -24,7 +24,7 @@ Polylang allows you to create a bilingual or multilingual WordPress site. You wr
24
 
25
  = Translators =
26
 
27
- The plugin admin interface is currently available in 35 languages: English, French, German by [Christian Ries](http://www.singbyfoot.lu), Russian by [yoyurec](http://yoyurec.in.ua) and unostar, Greek by [theodotos](http://www.ubuntucy.org), Dutch by [AlbertGn](http://wordpress.org/support/profile/albertgn), Hebrew by [ArielK](http://www.arielk.net), Polish by [Peter Paciorkiewicz](http://www.paciorkiewicz.pl) and [Bartosz](http://www.dfactory.eu/), Latvian by [@AndyDeGroo](http://twitter.com/AndyDeGroo), Italian by [Luca Barbetti](http://wordpress.org/support/profile/lucabarbetti), Danish by [Compute](http://wordpress.org/support/profile/compute), Spanish by Curro, Portuguese by [Vitor Carvalho](http://vcarvalho.com/), Lithuanian by [Naglis Jonaitis](http://najo.lt/), Turkish by [darchws](http://darch.ws/), Finnish by [Jani Alha](http://www.wysiwyg.fi), Bulgarian by [pavelsof](http://wordpress.org/support/profile/pavelsof), Belarusian by [Alexander Markevitch](http://fourfeathers.by/), Afrikaans by [Kobus Joubert](http://translate3d.com/), Hungarian by Csaba Erdei, Norwegian by [Tom Boersma](http://www.oransje.com/), Slovak by [Branco (WebHostingGeeks.com)](http://webhostinggeeks.com/user-reviews/), Swedish by [matsii](http://wordpress.org/support/profile/matsii) and [Jon Täng](http://jontang.se), Catalan by [Núria Martínez Berenguer](http://www.linkedin.com/profile/view?id=127867004&trk=nav_responsive_tab_profile&locale=en_US), Ukrainian by [cmd soft](http://www.cmd-soft.com/), Estonian by [Ahto Naris](http://profiles.wordpress.org/ahtonaris/), Venetian by Michele Brunelli, simplified Chinese by [Changmeng Hu](http://www.wpdaxue.com), Indonesian by [ajoull](http://www.ajoull.com/), Arabic by [Anas Sulaiman](http://ahs.pw/), Traditional Chinese by [香腸](http://sofree.cc/), Czech by [Přemysl Karbula](http://www.premyslkarbula.cz), Serbian by Sinisa, Myanmar by Sithu Thwin, Ukrainian by [http://getvoip.com/](http://getvoip.com/)
28
 
29
  = Credits =
30
 
@@ -64,12 +64,25 @@ See http://polylang.wordpress.com/documentation/contribute/
64
 
65
  == Upgrade Notice ==
66
 
67
- = 1.5 =
68
- Polylang 1.2 introduced major internal changes. More than ever, make a database backup before upgrading from 1.1.6 or older! If you are using a version older than 0.8, please ugrade to 0.9.8 before ugrading to 1.5
69
 
70
  == Changelog ==
71
 
72
- = 1.5 =
 
 
 
 
 
 
 
 
 
 
 
 
 
73
 
74
  * Add Ukrainian translation contributed by [http://getvoip.com/](http://getvoip.com/)
75
  * Refresh translation metaboxes (again): now translated posts are chosen from an autocomplete input field
3
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=CCWWYUUQV8F4E
4
  Tags: multilingual, bilingual, translate, translation, language, multilanguage, international, localization
5
  Requires at least: 3.5
6
+ Tested up to: 3.9.1
7
+ Stable tag: 1.5.1
8
  License: GPLv2 or later
9
 
10
  Polylang adds multilingual content management support to WordPress.
24
 
25
  = Translators =
26
 
27
+ The plugin admin interface is currently available in 35 languages: English, French, German by [Christian Ries](http://www.singbyfoot.lu), Russian by [yoyurec](http://yoyurec.in.ua) and unostar, Greek by [theodotos](http://www.ubuntucy.org), Dutch by [AlbertGn](http://wordpress.org/support/profile/albertgn), Hebrew by [ArielK](http://www.arielk.net), Polish by [Peter Paciorkiewicz](http://www.paciorkiewicz.pl), [Bartosz](http://www.dfactory.eu/) and Sebastian Janus, Latvian by [@AndyDeGroo](http://twitter.com/AndyDeGroo), Italian by [Luca Barbetti](http://wordpress.org/support/profile/lucabarbetti), Danish by [Compute](http://wordpress.org/support/profile/compute), Spanish by Curro, Portuguese by [Vitor Carvalho](http://vcarvalho.com/), Lithuanian by [Naglis Jonaitis](http://najo.lt/), Turkish by [darchws](http://darch.ws/), Finnish by [Jani Alha](http://www.wysiwyg.fi), Bulgarian by [pavelsof](http://wordpress.org/support/profile/pavelsof), Belarusian by [Alexander Markevitch](http://fourfeathers.by/), Afrikaans by [Kobus Joubert](http://translate3d.com/), Hungarian by Csaba Erdei, Norwegian by [Tom Boersma](http://www.oransje.com/), Slovak by [Branco (WebHostingGeeks.com)](http://webhostinggeeks.com/user-reviews/), Swedish by [matsii](http://wordpress.org/support/profile/matsii) and [Jon Täng](http://jontang.se), Catalan by [Núria Martínez Berenguer](http://www.linkedin.com/profile/view?id=127867004&trk=nav_responsive_tab_profile&locale=en_US), Ukrainian by [cmd soft](http://www.cmd-soft.com/), Estonian by [Ahto Naris](http://profiles.wordpress.org/ahtonaris/), Venetian by Michele Brunelli, simplified Chinese by [Changmeng Hu](http://www.wpdaxue.com), Indonesian by [ajoull](http://www.ajoull.com/), Arabic by [Anas Sulaiman](http://ahs.pw/), Traditional Chinese by [香腸](http://sofree.cc/), Czech by [Přemysl Karbula](http://www.premyslkarbula.cz), Serbian by Sinisa, Myanmar by Sithu Thwin, Ukrainian by [http://getvoip.com/](http://getvoip.com/)
28
 
29
  = Credits =
30
 
64
 
65
  == Upgrade Notice ==
66
 
67
+ = 1.5.1 =
68
+ Polylang 1.2 introduced major internal changes. More than ever, make a database backup before upgrading from 1.1.6 or older! If you are using a version older than 0.8, please ugrade to 0.9.8 before ugrading to 1.5.1
69
 
70
  == Changelog ==
71
 
72
+ = 1.5.1 (2014-06-19) =
73
+
74
+ * Add: filter 'pll_settings_tabs' and action 'pll_settings_active_tab_{$tab}'
75
+ * Add: possibility to add a path when using multiple domains (same path for all languages)
76
+ * Fix: Bad redirection if /language/ is added to urls (introduced in 1.5)
77
+ * Fix: Nav menu locations are not saved in customizer (introduced in 1.4)
78
+ * Fix: Unable to unset nav menu locations
79
+ * Fix: Incorrect link for date archives in language switcher (introduced in 1.5)
80
+ * Fix: Fatal error when using featured content in Twenty Fourteen
81
+ * Fix: Posts bulk edit broken (introduced in 1.5)
82
+ * Fix: Polylang does not play nice with switch_to_blog
83
+ * Fix: Warning: reset() expects parameter 1 to be array, null given in admin-filters-columns.php on line 81
84
+
85
+ = 1.5 (2014-05-29) =
86
 
87
  * Add Ukrainian translation contributed by [http://getvoip.com/](http://getvoip.com/)
88
  * Refresh translation metaboxes (again): now translated posts are chosen from an autocomplete input field