Version Description
(12.04.2019) = * Added Belorussian, Macedonian, Kazakh tables * Fixed bug with MariaDB during old slug conversion * Fixed not saving of user modifications in default iso9 table
Download this release
Release Info
| Developer | mihdan |
| Plugin | |
| Version | 3.7 |
| Comparing to | |
| See all releases | |
Code changes from version 3.6.5 to 3.7
- css/cyr-to-lat-admin.css +1 -1
- cyr-to-lat.php +6 -6
- includes/background-processes/class-cyr-to-lat-post-conversion-process.php +9 -7
- includes/background-processes/class-cyr-to-lat-term-conversion-process.php +7 -5
- includes/class-cyr-to-lat-conversion-tables.php +158 -29
- includes/class-cyr-to-lat-converter.php +1 -1
- includes/class-cyr-to-lat-main.php +10 -2
- includes/class-cyr-to-lat-settings.php +56 -7
- languages/cyr-to-lat-ru_RU.mo +0 -0
- languages/cyr-to-lat-ru_RU.po +85 -0
- languages/cyr2lat-ru_RU.mo +0 -0
- languages/cyr2lat-ru_RU.po +38 -23
- readme.txt +14 -4
- vendor/autoload_52.php +1 -1
- vendor/composer/ClassLoader.php +1 -1
- vendor/composer/LICENSE +1 -1
- vendor/composer/autoload_real_52.php +3 -3
css/cyr-to-lat-admin.css
CHANGED
|
@@ -24,7 +24,7 @@
|
|
| 24 |
}
|
| 25 |
|
| 26 |
#ctl-options .nav-tab-active {
|
| 27 |
-
border-bottom:
|
| 28 |
background: #f1f1f1;
|
| 29 |
}
|
| 30 |
|
| 24 |
}
|
| 25 |
|
| 26 |
#ctl-options .nav-tab-active {
|
| 27 |
+
border-bottom: none;
|
| 28 |
background: #f1f1f1;
|
| 29 |
}
|
| 30 |
|
cyr-to-lat.php
CHANGED
|
@@ -5,18 +5,18 @@
|
|
| 5 |
* Plugin Name: Cyr-To-Lat
|
| 6 |
* Plugin URI: https://wordpress.org/plugins/cyr2lat/
|
| 7 |
* Description: Converts Cyrillic characters in post and term slugs to Latin characters. Useful for creating human-readable URLs. Based on the original plugin by Anton Skorobogatov.
|
| 8 |
-
* Author: Sergey Biryukov, Mikhail Kobzarev
|
| 9 |
* Author URI: https://profiles.wordpress.org/sergeybiryukov/
|
| 10 |
* Requires at least: 2.3
|
| 11 |
* Tested up to: 5.1
|
| 12 |
-
* Version: 3.
|
| 13 |
-
* Stable tag: 3.
|
| 14 |
*
|
| 15 |
-
* Text Domain:
|
| 16 |
* Domain Path: /languages/
|
| 17 |
*
|
| 18 |
* @package cyr-to-lat
|
| 19 |
-
* @author Sergey Biryukov, Mikhail Kobzarev
|
| 20 |
*/
|
| 21 |
|
| 22 |
if ( ! defined( 'ABSPATH' ) ) {
|
|
@@ -26,7 +26,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
| 26 |
/**
|
| 27 |
* Plugin version.
|
| 28 |
*/
|
| 29 |
-
define( 'CYR_TO_LAT_VERSION', '3.
|
| 30 |
|
| 31 |
/**
|
| 32 |
* Path to the plugin dir.
|
| 5 |
* Plugin Name: Cyr-To-Lat
|
| 6 |
* Plugin URI: https://wordpress.org/plugins/cyr2lat/
|
| 7 |
* Description: Converts Cyrillic characters in post and term slugs to Latin characters. Useful for creating human-readable URLs. Based on the original plugin by Anton Skorobogatov.
|
| 8 |
+
* Author: Sergey Biryukov, Mikhail Kobzarev, Igor Gergel
|
| 9 |
* Author URI: https://profiles.wordpress.org/sergeybiryukov/
|
| 10 |
* Requires at least: 2.3
|
| 11 |
* Tested up to: 5.1
|
| 12 |
+
* Version: 3.7
|
| 13 |
+
* Stable tag: 3.7
|
| 14 |
*
|
| 15 |
+
* Text Domain: cyr2lat
|
| 16 |
* Domain Path: /languages/
|
| 17 |
*
|
| 18 |
* @package cyr-to-lat
|
| 19 |
+
* @author Sergey Biryukov, Mikhail Kobzarev, Igor Gergel
|
| 20 |
*/
|
| 21 |
|
| 22 |
if ( ! defined( 'ABSPATH' ) ) {
|
| 26 |
/**
|
| 27 |
* Plugin version.
|
| 28 |
*/
|
| 29 |
+
define( 'CYR_TO_LAT_VERSION', '3.7' );
|
| 30 |
|
| 31 |
/**
|
| 32 |
* Path to the plugin dir.
|
includes/background-processes/class-cyr-to-lat-post-conversion-process.php
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
<?php
|
| 2 |
/**
|
| 3 |
-
* Background old post slugs converting process
|
| 4 |
*
|
| 5 |
* @package cyr-to-lat
|
| 6 |
*/
|
|
@@ -11,28 +11,28 @@
|
|
| 11 |
class Cyr_To_Lat_Post_Conversion_Process extends WP_Background_Process {
|
| 12 |
|
| 13 |
/**
|
| 14 |
-
* Prefix
|
| 15 |
*
|
| 16 |
* @var string
|
| 17 |
*/
|
| 18 |
protected $prefix = CYR_TO_LAT_PREFIX;
|
| 19 |
|
| 20 |
/**
|
| 21 |
-
* Process action name
|
| 22 |
*
|
| 23 |
* @var string
|
| 24 |
*/
|
| 25 |
protected $action = CYR_TO_LAT_POST_CONVERSION_ACTION;
|
| 26 |
|
| 27 |
/**
|
| 28 |
-
* Plugin main class
|
| 29 |
*
|
| 30 |
* @var Cyr_To_Lat_Main
|
| 31 |
*/
|
| 32 |
private $main;
|
| 33 |
|
| 34 |
/**
|
| 35 |
-
* Cyr_To_Lat_Post_Conversion_Process constructor
|
| 36 |
*
|
| 37 |
* @param Cyr_To_Lat_Main $main Plugin main class.
|
| 38 |
*/
|
|
@@ -43,7 +43,7 @@ class Cyr_To_Lat_Post_Conversion_Process extends WP_Background_Process {
|
|
| 43 |
}
|
| 44 |
|
| 45 |
/**
|
| 46 |
-
* Task. Updates single post
|
| 47 |
*
|
| 48 |
* @param stdClass $post Queue item to iterate over.
|
| 49 |
*
|
|
@@ -76,13 +76,15 @@ class Cyr_To_Lat_Post_Conversion_Process extends WP_Background_Process {
|
|
| 76 |
}
|
| 77 |
|
| 78 |
/**
|
| 79 |
-
* Log
|
| 80 |
*
|
| 81 |
* @param string $message Message to log.
|
| 82 |
*/
|
| 83 |
public function log( $message ) {
|
| 84 |
if ( WP_DEBUG_LOG ) {
|
|
|
|
| 85 |
error_log( $message );
|
|
|
|
| 86 |
}
|
| 87 |
}
|
| 88 |
}
|
| 1 |
<?php
|
| 2 |
/**
|
| 3 |
+
* Background old post slugs converting process
|
| 4 |
*
|
| 5 |
* @package cyr-to-lat
|
| 6 |
*/
|
| 11 |
class Cyr_To_Lat_Post_Conversion_Process extends WP_Background_Process {
|
| 12 |
|
| 13 |
/**
|
| 14 |
+
* Prefix
|
| 15 |
*
|
| 16 |
* @var string
|
| 17 |
*/
|
| 18 |
protected $prefix = CYR_TO_LAT_PREFIX;
|
| 19 |
|
| 20 |
/**
|
| 21 |
+
* Process action name
|
| 22 |
*
|
| 23 |
* @var string
|
| 24 |
*/
|
| 25 |
protected $action = CYR_TO_LAT_POST_CONVERSION_ACTION;
|
| 26 |
|
| 27 |
/**
|
| 28 |
+
* Plugin main class
|
| 29 |
*
|
| 30 |
* @var Cyr_To_Lat_Main
|
| 31 |
*/
|
| 32 |
private $main;
|
| 33 |
|
| 34 |
/**
|
| 35 |
+
* Cyr_To_Lat_Post_Conversion_Process constructor
|
| 36 |
*
|
| 37 |
* @param Cyr_To_Lat_Main $main Plugin main class.
|
| 38 |
*/
|
| 43 |
}
|
| 44 |
|
| 45 |
/**
|
| 46 |
+
* Task. Updates single post
|
| 47 |
*
|
| 48 |
* @param stdClass $post Queue item to iterate over.
|
| 49 |
*
|
| 76 |
}
|
| 77 |
|
| 78 |
/**
|
| 79 |
+
* Log
|
| 80 |
*
|
| 81 |
* @param string $message Message to log.
|
| 82 |
*/
|
| 83 |
public function log( $message ) {
|
| 84 |
if ( WP_DEBUG_LOG ) {
|
| 85 |
+
// @phpcs:disable WordPress.PHP.DevelopmentFunctions.error_log_error_log
|
| 86 |
error_log( $message );
|
| 87 |
+
// @phpcs:enable WordPress.PHP.DevelopmentFunctions.error_log_error_log
|
| 88 |
}
|
| 89 |
}
|
| 90 |
}
|
includes/background-processes/class-cyr-to-lat-term-conversion-process.php
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
<?php
|
| 2 |
/**
|
| 3 |
-
* Background old term slugs converting process
|
| 4 |
*
|
| 5 |
* @package cyr-to-lat
|
| 6 |
*/
|
|
@@ -18,7 +18,7 @@ class Cyr_To_Lat_Term_Conversion_Process extends WP_Background_Process {
|
|
| 18 |
protected $prefix = CYR_TO_LAT_PREFIX;
|
| 19 |
|
| 20 |
/**
|
| 21 |
-
* Process action name
|
| 22 |
*
|
| 23 |
* @var string
|
| 24 |
*/
|
|
@@ -32,7 +32,7 @@ class Cyr_To_Lat_Term_Conversion_Process extends WP_Background_Process {
|
|
| 32 |
private $main;
|
| 33 |
|
| 34 |
/**
|
| 35 |
-
* Cyr_To_Lat_Post_Conversion_Process constructor
|
| 36 |
*
|
| 37 |
* @param Cyr_To_Lat_Main $main Plugin main class.
|
| 38 |
*/
|
|
@@ -43,7 +43,7 @@ class Cyr_To_Lat_Term_Conversion_Process extends WP_Background_Process {
|
|
| 43 |
}
|
| 44 |
|
| 45 |
/**
|
| 46 |
-
* Task. Updates single term
|
| 47 |
*
|
| 48 |
* @param stdClass $term Queue item to iterate over.
|
| 49 |
*
|
|
@@ -75,13 +75,15 @@ class Cyr_To_Lat_Term_Conversion_Process extends WP_Background_Process {
|
|
| 75 |
}
|
| 76 |
|
| 77 |
/**
|
| 78 |
-
* Log
|
| 79 |
*
|
| 80 |
* @param string $message Message to log.
|
| 81 |
*/
|
| 82 |
public function log( $message ) {
|
| 83 |
if ( WP_DEBUG_LOG ) {
|
|
|
|
| 84 |
error_log( $message );
|
|
|
|
| 85 |
}
|
| 86 |
}
|
| 87 |
}
|
| 1 |
<?php
|
| 2 |
/**
|
| 3 |
+
* Background old term slugs converting process
|
| 4 |
*
|
| 5 |
* @package cyr-to-lat
|
| 6 |
*/
|
| 18 |
protected $prefix = CYR_TO_LAT_PREFIX;
|
| 19 |
|
| 20 |
/**
|
| 21 |
+
* Process action name
|
| 22 |
*
|
| 23 |
* @var string
|
| 24 |
*/
|
| 32 |
private $main;
|
| 33 |
|
| 34 |
/**
|
| 35 |
+
* Cyr_To_Lat_Post_Conversion_Process constructor
|
| 36 |
*
|
| 37 |
* @param Cyr_To_Lat_Main $main Plugin main class.
|
| 38 |
*/
|
| 43 |
}
|
| 44 |
|
| 45 |
/**
|
| 46 |
+
* Task. Updates single term
|
| 47 |
*
|
| 48 |
* @param stdClass $term Queue item to iterate over.
|
| 49 |
*
|
| 75 |
}
|
| 76 |
|
| 77 |
/**
|
| 78 |
+
* Log
|
| 79 |
*
|
| 80 |
* @param string $message Message to log.
|
| 81 |
*/
|
| 82 |
public function log( $message ) {
|
| 83 |
if ( WP_DEBUG_LOG ) {
|
| 84 |
+
// @phpcs:disable WordPress.PHP.DevelopmentFunctions.error_log_error_log
|
| 85 |
error_log( $message );
|
| 86 |
+
// @phpcs:enable WordPress.PHP.DevelopmentFunctions.error_log_error_log
|
| 87 |
}
|
| 88 |
}
|
| 89 |
}
|
includes/class-cyr-to-lat-conversion-tables.php
CHANGED
|
@@ -15,6 +15,7 @@ class Cyr_To_Lat_Conversion_Tables {
|
|
| 15 |
/**
|
| 16 |
* Get conversion table by locale.
|
| 17 |
*
|
|
|
|
| 18 |
* @param string $locale WordPress locale.
|
| 19 |
*
|
| 20 |
* @return array
|
|
@@ -25,39 +26,28 @@ class Cyr_To_Lat_Conversion_Tables {
|
|
| 25 |
'Б' => 'B',
|
| 26 |
'В' => 'V',
|
| 27 |
'Г' => 'G',
|
| 28 |
-
'Ѓ' => 'G',
|
| 29 |
-
'Ґ' => 'G',
|
| 30 |
'Д' => 'D',
|
| 31 |
'Е' => 'E',
|
| 32 |
'Ё' => 'YO',
|
| 33 |
-
'Є' => 'YE',
|
| 34 |
'Ж' => 'ZH',
|
| 35 |
'З' => 'Z',
|
| 36 |
-
'Ѕ' => 'Z',
|
| 37 |
'И' => 'I',
|
| 38 |
'Й' => 'J',
|
| 39 |
-
'Ј' => 'J',
|
| 40 |
'І' => 'I',
|
| 41 |
-
'Ї' => 'YI',
|
| 42 |
'К' => 'K',
|
| 43 |
-
'Ќ' => 'K',
|
| 44 |
'Л' => 'L',
|
| 45 |
-
'Љ' => 'L',
|
| 46 |
'М' => 'M',
|
| 47 |
'Н' => 'N',
|
| 48 |
-
'Њ' => 'N',
|
| 49 |
'О' => 'O',
|
| 50 |
'П' => 'P',
|
| 51 |
'Р' => 'R',
|
| 52 |
'С' => 'S',
|
| 53 |
'Т' => 'T',
|
| 54 |
'У' => 'U',
|
| 55 |
-
'Ў' => 'U',
|
| 56 |
'Ф' => 'F',
|
| 57 |
'Х' => 'H',
|
| 58 |
-
'Ц' => '
|
| 59 |
'Ч' => 'CH',
|
| 60 |
-
'Џ' => 'DH',
|
| 61 |
'Ш' => 'SH',
|
| 62 |
'Щ' => 'SHH',
|
| 63 |
'Ъ' => '',
|
|
@@ -66,43 +56,35 @@ class Cyr_To_Lat_Conversion_Tables {
|
|
| 66 |
'Э' => 'E',
|
| 67 |
'Ю' => 'YU',
|
| 68 |
'Я' => 'YA',
|
|
|
|
|
|
|
|
|
|
| 69 |
'а' => 'a',
|
| 70 |
'б' => 'b',
|
| 71 |
'в' => 'v',
|
| 72 |
'г' => 'g',
|
| 73 |
-
'ѓ' => 'g',
|
| 74 |
-
'ґ' => 'g',
|
| 75 |
'д' => 'd',
|
| 76 |
'е' => 'e',
|
| 77 |
'ё' => 'yo',
|
| 78 |
-
'є' => 'ye',
|
| 79 |
'ж' => 'zh',
|
| 80 |
'з' => 'z',
|
| 81 |
-
'ѕ' => 'z',
|
| 82 |
'и' => 'i',
|
| 83 |
'й' => 'j',
|
| 84 |
-
'ј' => 'j',
|
| 85 |
'і' => 'i',
|
| 86 |
-
'ї' => 'yi',
|
| 87 |
'к' => 'k',
|
| 88 |
-
'ќ' => 'k',
|
| 89 |
'л' => 'l',
|
| 90 |
-
'љ' => 'l',
|
| 91 |
'м' => 'm',
|
| 92 |
'н' => 'n',
|
| 93 |
-
'њ' => 'n',
|
| 94 |
'о' => 'o',
|
| 95 |
'п' => 'p',
|
| 96 |
'р' => 'r',
|
| 97 |
'с' => 's',
|
| 98 |
'т' => 't',
|
| 99 |
'у' => 'u',
|
| 100 |
-
'ў' => 'u',
|
| 101 |
'ф' => 'f',
|
| 102 |
'х' => 'h',
|
| 103 |
-
'ц' => '
|
| 104 |
'ч' => 'ch',
|
| 105 |
-
'џ' => 'dh',
|
| 106 |
'ш' => 'sh',
|
| 107 |
'щ' => 'shh',
|
| 108 |
'ъ' => '',
|
|
@@ -111,18 +93,112 @@ class Cyr_To_Lat_Conversion_Tables {
|
|
| 111 |
'э' => 'e',
|
| 112 |
'ю' => 'yu',
|
| 113 |
'я' => 'ya',
|
|
|
|
|
|
|
|
|
|
| 114 |
);
|
| 115 |
switch ( $locale ) {
|
| 116 |
-
|
| 117 |
-
|
| 118 |
-
$table['
|
| 119 |
-
$table['
|
| 120 |
-
$table['
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 121 |
break;
|
|
|
|
| 122 |
case 'uk':
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 123 |
$table['И'] = 'Y';
|
| 124 |
$table['и'] = 'y';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 125 |
break;
|
|
|
|
| 126 |
case 'ka_GE':
|
| 127 |
$table['áƒ'] = 'a';
|
| 128 |
$table['ბ'] = 'b';
|
|
@@ -158,6 +234,59 @@ class Cyr_To_Lat_Conversion_Tables {
|
|
| 158 |
$table['ჯ'] = 'j';
|
| 159 |
$table['ჰ'] = 'h';
|
| 160 |
break;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 161 |
default:
|
| 162 |
}
|
| 163 |
|
| 15 |
/**
|
| 16 |
* Get conversion table by locale.
|
| 17 |
*
|
| 18 |
+
* @link https://ru.wikipedia.org/wiki/ISO_9
|
| 19 |
* @param string $locale WordPress locale.
|
| 20 |
*
|
| 21 |
* @return array
|
| 26 |
'Б' => 'B',
|
| 27 |
'В' => 'V',
|
| 28 |
'Г' => 'G',
|
|
|
|
|
|
|
| 29 |
'Д' => 'D',
|
| 30 |
'Е' => 'E',
|
| 31 |
'Ё' => 'YO',
|
|
|
|
| 32 |
'Ж' => 'ZH',
|
| 33 |
'З' => 'Z',
|
|
|
|
| 34 |
'И' => 'I',
|
| 35 |
'Й' => 'J',
|
|
|
|
| 36 |
'І' => 'I',
|
|
|
|
| 37 |
'К' => 'K',
|
|
|
|
| 38 |
'Л' => 'L',
|
|
|
|
| 39 |
'М' => 'M',
|
| 40 |
'Н' => 'N',
|
|
|
|
| 41 |
'О' => 'O',
|
| 42 |
'П' => 'P',
|
| 43 |
'Р' => 'R',
|
| 44 |
'С' => 'S',
|
| 45 |
'Т' => 'T',
|
| 46 |
'У' => 'U',
|
|
|
|
| 47 |
'Ф' => 'F',
|
| 48 |
'Х' => 'H',
|
| 49 |
+
'Ц' => 'CZ',
|
| 50 |
'Ч' => 'CH',
|
|
|
|
| 51 |
'Ш' => 'SH',
|
| 52 |
'Щ' => 'SHH',
|
| 53 |
'Ъ' => '',
|
| 56 |
'Э' => 'E',
|
| 57 |
'Ю' => 'YU',
|
| 58 |
'Я' => 'YA',
|
| 59 |
+
'Ѣ' => 'YE',
|
| 60 |
+
'Ѳ' => 'FH',
|
| 61 |
+
'Ѵ' => 'YH',
|
| 62 |
'а' => 'a',
|
| 63 |
'б' => 'b',
|
| 64 |
'в' => 'v',
|
| 65 |
'г' => 'g',
|
|
|
|
|
|
|
| 66 |
'д' => 'd',
|
| 67 |
'е' => 'e',
|
| 68 |
'ё' => 'yo',
|
|
|
|
| 69 |
'ж' => 'zh',
|
| 70 |
'з' => 'z',
|
|
|
|
| 71 |
'и' => 'i',
|
| 72 |
'й' => 'j',
|
|
|
|
| 73 |
'і' => 'i',
|
|
|
|
| 74 |
'к' => 'k',
|
|
|
|
| 75 |
'л' => 'l',
|
|
|
|
| 76 |
'м' => 'm',
|
| 77 |
'н' => 'n',
|
|
|
|
| 78 |
'о' => 'o',
|
| 79 |
'п' => 'p',
|
| 80 |
'р' => 'r',
|
| 81 |
'с' => 's',
|
| 82 |
'т' => 't',
|
| 83 |
'у' => 'u',
|
|
|
|
| 84 |
'ф' => 'f',
|
| 85 |
'х' => 'h',
|
| 86 |
+
'ц' => 'cz',
|
| 87 |
'ч' => 'ch',
|
|
|
|
| 88 |
'ш' => 'sh',
|
| 89 |
'щ' => 'shh',
|
| 90 |
'ъ' => '',
|
| 93 |
'э' => 'e',
|
| 94 |
'ю' => 'yu',
|
| 95 |
'я' => 'ya',
|
| 96 |
+
'ѣ' => 'ye',
|
| 97 |
+
'ѳ' => 'fh',
|
| 98 |
+
'ѵ' => 'yh',
|
| 99 |
);
|
| 100 |
switch ( $locale ) {
|
| 101 |
+
// Belorussian.
|
| 102 |
+
case 'bel':
|
| 103 |
+
unset( $table['И'] );
|
| 104 |
+
unset( $table['и'] );
|
| 105 |
+
$table['Ў'] = 'U';
|
| 106 |
+
$table['ў'] = 'u';
|
| 107 |
+
unset( $table['Щ'] );
|
| 108 |
+
unset( $table['щ'] );
|
| 109 |
+
unset( $table['Ъ'] );
|
| 110 |
+
unset( $table['ъ'] );
|
| 111 |
+
unset( $table['Ѣ'] );
|
| 112 |
+
unset( $table['ѣ'] );
|
| 113 |
+
unset( $table['Ѳ'] );
|
| 114 |
+
unset( $table['ѳ'] );
|
| 115 |
+
unset( $table['Ѵ'] );
|
| 116 |
+
unset( $table['ѵ'] );
|
| 117 |
break;
|
| 118 |
+
// Ukrainian.
|
| 119 |
case 'uk':
|
| 120 |
+
$table['Ґ'] = 'G';
|
| 121 |
+
$table['ґ'] = 'g';
|
| 122 |
+
unset( $table['Ё'] );
|
| 123 |
+
unset( $table['ё'] );
|
| 124 |
+
$table['Є'] = 'YE';
|
| 125 |
+
$table['є'] = 'ye';
|
| 126 |
$table['И'] = 'Y';
|
| 127 |
$table['и'] = 'y';
|
| 128 |
+
$table['Ї'] = 'YI';
|
| 129 |
+
$table['ї'] = 'yi';
|
| 130 |
+
unset( $table['Ъ'] );
|
| 131 |
+
unset( $table['ъ'] );
|
| 132 |
+
unset( $table['Ы'] );
|
| 133 |
+
unset( $table['ы'] );
|
| 134 |
+
unset( $table['Э'] );
|
| 135 |
+
unset( $table['э'] );
|
| 136 |
+
unset( $table['Ѣ'] );
|
| 137 |
+
unset( $table['ѣ'] );
|
| 138 |
+
unset( $table['Ѳ'] );
|
| 139 |
+
unset( $table['ѳ'] );
|
| 140 |
+
unset( $table['Ѵ'] );
|
| 141 |
+
unset( $table['ѵ'] );
|
| 142 |
+
break;
|
| 143 |
+
// Bulgarian.
|
| 144 |
+
case 'bg_BG':
|
| 145 |
+
unset( $table['Ё'] );
|
| 146 |
+
unset( $table['ё'] );
|
| 147 |
+
$table['Щ'] = 'STH';
|
| 148 |
+
$table['щ'] = 'sth';
|
| 149 |
+
$table['Ъ'] = 'A';
|
| 150 |
+
$table['ъ'] = 'a';
|
| 151 |
+
unset( $table['Ы'] );
|
| 152 |
+
unset( $table['ы'] );
|
| 153 |
+
unset( $table['Э'] );
|
| 154 |
+
unset( $table['э'] );
|
| 155 |
+
$table['Ѫ'] = 'О';
|
| 156 |
+
$table['ѫ'] = 'о';
|
| 157 |
+
break;
|
| 158 |
+
// Macedonian.
|
| 159 |
+
case 'mk_MK':
|
| 160 |
+
$table['Ѓ'] = 'G';
|
| 161 |
+
$table['ѓ'] = 'g';
|
| 162 |
+
unset( $table['Ё'] );
|
| 163 |
+
unset( $table['ё'] );
|
| 164 |
+
$table['Ѕ'] = 'Z';
|
| 165 |
+
$table['ѕ'] = 'z';
|
| 166 |
+
unset( $table['Й'] );
|
| 167 |
+
unset( $table['й'] );
|
| 168 |
+
$table['Ј'] = 'J';
|
| 169 |
+
$table['ј'] = 'j';
|
| 170 |
+
unset( $table['I'] );
|
| 171 |
+
unset( $table['i'] );
|
| 172 |
+
$table['Ќ'] = 'K';
|
| 173 |
+
$table['ќ'] = 'k';
|
| 174 |
+
$table['Љ'] = 'L';
|
| 175 |
+
$table['љ'] = 'l';
|
| 176 |
+
$table['Њ'] = 'N';
|
| 177 |
+
$table['њ'] = 'n';
|
| 178 |
+
$table['Џ'] = 'DH';
|
| 179 |
+
$table['џ'] = 'dh';
|
| 180 |
+
unset( $table['Щ'] );
|
| 181 |
+
unset( $table['щ'] );
|
| 182 |
+
unset( $table['Ъ'] );
|
| 183 |
+
unset( $table['ъ'] );
|
| 184 |
+
unset( $table['Ы'] );
|
| 185 |
+
unset( $table['ы'] );
|
| 186 |
+
unset( $table['Ь'] );
|
| 187 |
+
unset( $table['ь'] );
|
| 188 |
+
unset( $table['Э'] );
|
| 189 |
+
unset( $table['э'] );
|
| 190 |
+
unset( $table['Ю'] );
|
| 191 |
+
unset( $table['ю'] );
|
| 192 |
+
unset( $table['Я'] );
|
| 193 |
+
unset( $table['я'] );
|
| 194 |
+
unset( $table['Ѣ'] );
|
| 195 |
+
unset( $table['ѣ'] );
|
| 196 |
+
unset( $table['Ѳ'] );
|
| 197 |
+
unset( $table['ѳ'] );
|
| 198 |
+
unset( $table['Ѵ'] );
|
| 199 |
+
unset( $table['ѵ'] );
|
| 200 |
break;
|
| 201 |
+
// Georgian.
|
| 202 |
case 'ka_GE':
|
| 203 |
$table['áƒ'] = 'a';
|
| 204 |
$table['ბ'] = 'b';
|
| 234 |
$table['ჯ'] = 'j';
|
| 235 |
$table['ჰ'] = 'h';
|
| 236 |
break;
|
| 237 |
+
// Kazakh.
|
| 238 |
+
case 'kk':
|
| 239 |
+
$table['Ә'] = 'Ae';
|
| 240 |
+
$table['ә'] = 'ae';
|
| 241 |
+
$table['Ғ'] = 'Gh';
|
| 242 |
+
$table['ғ'] = 'gh';
|
| 243 |
+
unset( $table['Ё'] );
|
| 244 |
+
unset( $table['ё'] );
|
| 245 |
+
$table['Қ'] = 'Q';
|
| 246 |
+
$table['қ'] = 'q';
|
| 247 |
+
$table['Ң'] = 'Ng';
|
| 248 |
+
$table['ң'] = 'ng';
|
| 249 |
+
$table['Ө'] = 'Oe';
|
| 250 |
+
$table['ө'] = 'oe';
|
| 251 |
+
$table['У'] = 'W';
|
| 252 |
+
$table['у'] = 'w';
|
| 253 |
+
$table['Ұ'] = 'U';
|
| 254 |
+
$table['ұ'] = 'u';
|
| 255 |
+
$table['Ү'] = 'Ue';
|
| 256 |
+
$table['ү'] = 'ue';
|
| 257 |
+
$table['Һ'] = 'H';
|
| 258 |
+
$table['һ'] = 'h';
|
| 259 |
+
$table['Ц'] = 'C';
|
| 260 |
+
$table['ц'] = 'c';
|
| 261 |
+
unset( $table['Щ'] );
|
| 262 |
+
unset( $table['щ'] );
|
| 263 |
+
unset( $table['Ъ'] );
|
| 264 |
+
unset( $table['ъ'] );
|
| 265 |
+
unset( $table['Ь'] );
|
| 266 |
+
unset( $table['ь'] );
|
| 267 |
+
unset( $table['Э'] );
|
| 268 |
+
unset( $table['э'] );
|
| 269 |
+
unset( $table['Ю'] );
|
| 270 |
+
unset( $table['ю'] );
|
| 271 |
+
unset( $table['Я'] );
|
| 272 |
+
unset( $table['я'] );
|
| 273 |
+
|
| 274 |
+
// Kazakh 2018 latin.
|
| 275 |
+
$table['Á'] = 'A';
|
| 276 |
+
$table['á'] = 'a';
|
| 277 |
+
$table['Ǵ'] = 'G';
|
| 278 |
+
$table['ǵ'] = 'g';
|
| 279 |
+
$table['I'] = 'I';
|
| 280 |
+
$table['ı'] = 'i';
|
| 281 |
+
$table['Ń'] = 'N';
|
| 282 |
+
$table['ń'] = 'n';
|
| 283 |
+
$table['Ó'] = 'O';
|
| 284 |
+
$table['ó'] = 'o';
|
| 285 |
+
$table['Ú'] = 'O';
|
| 286 |
+
$table['ú'] = 'o';
|
| 287 |
+
$table['Ý'] = 'O';
|
| 288 |
+
$table['ý'] = 'o';
|
| 289 |
+
break;
|
| 290 |
default:
|
| 291 |
}
|
| 292 |
|
includes/class-cyr-to-lat-converter.php
CHANGED
|
@@ -116,7 +116,7 @@ class Cyr_To_Lat_Converter {
|
|
| 116 |
public function convert_existing_slugs() {
|
| 117 |
global $wpdb;
|
| 118 |
|
| 119 |
-
$regexp = '
|
| 120 |
|
| 121 |
// phpcs:disable WordPress.DB.DirectDatabaseQuery
|
| 122 |
$posts = $wpdb->get_results(
|
| 116 |
public function convert_existing_slugs() {
|
| 117 |
global $wpdb;
|
| 118 |
|
| 119 |
+
$regexp = Cyr_To_Lat_Main::PROHIBITED_CHARS_REGEX . '+';
|
| 120 |
|
| 121 |
// phpcs:disable WordPress.DB.DirectDatabaseQuery
|
| 122 |
$posts = $wpdb->get_results(
|
includes/class-cyr-to-lat-main.php
CHANGED
|
@@ -10,6 +10,14 @@
|
|
| 10 |
*/
|
| 11 |
class Cyr_To_Lat_Main {
|
| 12 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 13 |
/**
|
| 14 |
* Plugin settings.
|
| 15 |
*
|
|
@@ -90,7 +98,7 @@ class Cyr_To_Lat_Main {
|
|
| 90 |
// Locales list - https://make.wordpress.org/polyglots/teams/.
|
| 91 |
$locale = get_locale();
|
| 92 |
$iso9_table = $this->settings->get_option( $locale );
|
| 93 |
-
$iso9_table = ! empty( $iso9_table ) ? $iso9_table :
|
| 94 |
|
| 95 |
$is_term = false;
|
| 96 |
// phpcs:disable WordPress.PHP.DevelopmentFunctions.error_log_debug_backtrace
|
|
@@ -116,7 +124,7 @@ class Cyr_To_Lat_Main {
|
|
| 116 |
$title = iconv( 'UTF-8', 'UTF-8//TRANSLIT//IGNORE', $title );
|
| 117 |
}
|
| 118 |
|
| 119 |
-
$title = preg_replace(
|
| 120 |
$title = preg_replace( '/\-+/', '-', $title );
|
| 121 |
$title = trim( $title, '-' );
|
| 122 |
}
|
| 10 |
*/
|
| 11 |
class Cyr_To_Lat_Main {
|
| 12 |
|
| 13 |
+
/**
|
| 14 |
+
* Regex of prohibited chars in slugs
|
| 15 |
+
* [^A-Za-z0-9[.apostrophe.][.underscore.][.period.][.hyphen.]]+
|
| 16 |
+
*
|
| 17 |
+
* @link https://dev.mysql.com/doc/refman/5.6/en/regexp.html
|
| 18 |
+
*/
|
| 19 |
+
const PROHIBITED_CHARS_REGEX = "[^A-Za-z0-9'_\.\-]";
|
| 20 |
+
|
| 21 |
/**
|
| 22 |
* Plugin settings.
|
| 23 |
*
|
| 98 |
// Locales list - https://make.wordpress.org/polyglots/teams/.
|
| 99 |
$locale = get_locale();
|
| 100 |
$iso9_table = $this->settings->get_option( $locale );
|
| 101 |
+
$iso9_table = ! empty( $iso9_table ) ? $iso9_table : $this->settings->get_option( 'iso9' );
|
| 102 |
|
| 103 |
$is_term = false;
|
| 104 |
// phpcs:disable WordPress.PHP.DevelopmentFunctions.error_log_debug_backtrace
|
| 124 |
$title = iconv( 'UTF-8', 'UTF-8//TRANSLIT//IGNORE', $title );
|
| 125 |
}
|
| 126 |
|
| 127 |
+
$title = preg_replace( '/' . self::PROHIBITED_CHARS_REGEX . '/', '-', $title );
|
| 128 |
$title = preg_replace( '/\-+/', '-', $title );
|
| 129 |
$title = trim( $title, '-' );
|
| 130 |
}
|
includes/class-cyr-to-lat-settings.php
CHANGED
|
@@ -137,6 +137,7 @@ class Cyr_To_Lat_Settings {
|
|
| 137 |
'placeholder' => '',
|
| 138 |
'helper' => '',
|
| 139 |
'supplemental' => '',
|
|
|
|
| 140 |
),
|
| 141 |
'iso9' => array(
|
| 142 |
'label' => __( 'ISO9 Table', 'cyr2lat' ),
|
|
@@ -147,14 +148,14 @@ class Cyr_To_Lat_Settings {
|
|
| 147 |
'supplemental' => '',
|
| 148 |
'default' => Cyr_To_Lat_Conversion_Tables::get(),
|
| 149 |
),
|
| 150 |
-
'
|
| 151 |
-
'label' => __( '
|
| 152 |
-
'section' => '
|
| 153 |
'type' => 'table',
|
| 154 |
'placeholder' => '',
|
| 155 |
'helper' => '',
|
| 156 |
'supplemental' => '',
|
| 157 |
-
'default' => Cyr_To_Lat_Conversion_Tables::get( '
|
| 158 |
),
|
| 159 |
'uk' => array(
|
| 160 |
'label' => __( 'uk Table', 'cyr2lat' ),
|
|
@@ -165,6 +166,24 @@ class Cyr_To_Lat_Settings {
|
|
| 165 |
'supplemental' => '',
|
| 166 |
'default' => Cyr_To_Lat_Conversion_Tables::get( 'uk' ),
|
| 167 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 168 |
'ka_GE' => array(
|
| 169 |
'label' => __( 'ka_GE Table', 'cyr2lat' ),
|
| 170 |
'section' => 'ka_GE_section',
|
|
@@ -174,6 +193,15 @@ class Cyr_To_Lat_Settings {
|
|
| 174 |
'supplemental' => '',
|
| 175 |
'default' => Cyr_To_Lat_Conversion_Tables::get( 'ka_GE' ),
|
| 176 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 177 |
);
|
| 178 |
}
|
| 179 |
|
|
@@ -187,10 +215,13 @@ class Cyr_To_Lat_Settings {
|
|
| 187 |
public function init_settings() {
|
| 188 |
$this->settings = get_option( self::OPTION_NAME, null );
|
| 189 |
|
|
|
|
|
|
|
| 190 |
// If there are no settings defined, use defaults.
|
| 191 |
if ( ! is_array( $this->settings ) ) {
|
| 192 |
-
$form_fields = $this->get_form_fields();
|
| 193 |
$this->settings = array_merge( array_fill_keys( array_keys( $form_fields ), '' ), wp_list_pluck( $form_fields, 'default' ) );
|
|
|
|
|
|
|
| 194 |
}
|
| 195 |
}
|
| 196 |
|
|
@@ -308,8 +339,8 @@ class Cyr_To_Lat_Settings {
|
|
| 308 |
self::PAGE
|
| 309 |
);
|
| 310 |
add_settings_section(
|
| 311 |
-
'
|
| 312 |
-
__( '
|
| 313 |
array( $this, 'cyr_to_lat_section' ),
|
| 314 |
self::PAGE
|
| 315 |
);
|
|
@@ -319,12 +350,30 @@ class Cyr_To_Lat_Settings {
|
|
| 319 |
array( $this, 'cyr_to_lat_section' ),
|
| 320 |
self::PAGE
|
| 321 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 322 |
add_settings_section(
|
| 323 |
'ka_GE_section',
|
| 324 |
__( 'ka_GE Table', 'cyr2lat' ),
|
| 325 |
array( $this, 'cyr_to_lat_section' ),
|
| 326 |
self::PAGE
|
| 327 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 328 |
}
|
| 329 |
|
| 330 |
/**
|
| 137 |
'placeholder' => '',
|
| 138 |
'helper' => '',
|
| 139 |
'supplemental' => '',
|
| 140 |
+
'default' => 'no',
|
| 141 |
),
|
| 142 |
'iso9' => array(
|
| 143 |
'label' => __( 'ISO9 Table', 'cyr2lat' ),
|
| 148 |
'supplemental' => '',
|
| 149 |
'default' => Cyr_To_Lat_Conversion_Tables::get(),
|
| 150 |
),
|
| 151 |
+
'bel' => array(
|
| 152 |
+
'label' => __( 'bel Table', 'cyr2lat' ),
|
| 153 |
+
'section' => 'bel_section',
|
| 154 |
'type' => 'table',
|
| 155 |
'placeholder' => '',
|
| 156 |
'helper' => '',
|
| 157 |
'supplemental' => '',
|
| 158 |
+
'default' => Cyr_To_Lat_Conversion_Tables::get( 'bel' ),
|
| 159 |
),
|
| 160 |
'uk' => array(
|
| 161 |
'label' => __( 'uk Table', 'cyr2lat' ),
|
| 166 |
'supplemental' => '',
|
| 167 |
'default' => Cyr_To_Lat_Conversion_Tables::get( 'uk' ),
|
| 168 |
),
|
| 169 |
+
'bg_BG' => array(
|
| 170 |
+
'label' => __( 'bg_BG Table', 'cyr2lat' ),
|
| 171 |
+
'section' => 'bg_BG_section',
|
| 172 |
+
'type' => 'table',
|
| 173 |
+
'placeholder' => '',
|
| 174 |
+
'helper' => '',
|
| 175 |
+
'supplemental' => '',
|
| 176 |
+
'default' => Cyr_To_Lat_Conversion_Tables::get( 'bg_BG' ),
|
| 177 |
+
),
|
| 178 |
+
'mk_MK' => array(
|
| 179 |
+
'label' => __( 'mk_MK Table', 'cyr2lat' ),
|
| 180 |
+
'section' => 'mk_MK_section',
|
| 181 |
+
'type' => 'table',
|
| 182 |
+
'placeholder' => '',
|
| 183 |
+
'helper' => '',
|
| 184 |
+
'supplemental' => '',
|
| 185 |
+
'default' => Cyr_To_Lat_Conversion_Tables::get( 'mk_MK' ),
|
| 186 |
+
),
|
| 187 |
'ka_GE' => array(
|
| 188 |
'label' => __( 'ka_GE Table', 'cyr2lat' ),
|
| 189 |
'section' => 'ka_GE_section',
|
| 193 |
'supplemental' => '',
|
| 194 |
'default' => Cyr_To_Lat_Conversion_Tables::get( 'ka_GE' ),
|
| 195 |
),
|
| 196 |
+
'kk' => array(
|
| 197 |
+
'label' => __( 'kk Table', 'cyr2lat' ),
|
| 198 |
+
'section' => 'kk_section',
|
| 199 |
+
'type' => 'table',
|
| 200 |
+
'placeholder' => '',
|
| 201 |
+
'helper' => '',
|
| 202 |
+
'supplemental' => '',
|
| 203 |
+
'default' => Cyr_To_Lat_Conversion_Tables::get( 'kk' ),
|
| 204 |
+
),
|
| 205 |
);
|
| 206 |
}
|
| 207 |
|
| 215 |
public function init_settings() {
|
| 216 |
$this->settings = get_option( self::OPTION_NAME, null );
|
| 217 |
|
| 218 |
+
$form_fields = $this->get_form_fields();
|
| 219 |
+
|
| 220 |
// If there are no settings defined, use defaults.
|
| 221 |
if ( ! is_array( $this->settings ) ) {
|
|
|
|
| 222 |
$this->settings = array_merge( array_fill_keys( array_keys( $form_fields ), '' ), wp_list_pluck( $form_fields, 'default' ) );
|
| 223 |
+
} else {
|
| 224 |
+
$this->settings = array_merge( wp_list_pluck( $form_fields, 'default' ), $this->settings );
|
| 225 |
}
|
| 226 |
}
|
| 227 |
|
| 339 |
self::PAGE
|
| 340 |
);
|
| 341 |
add_settings_section(
|
| 342 |
+
'bel_section',
|
| 343 |
+
__( 'bel Table', 'cyr2lat' ),
|
| 344 |
array( $this, 'cyr_to_lat_section' ),
|
| 345 |
self::PAGE
|
| 346 |
);
|
| 350 |
array( $this, 'cyr_to_lat_section' ),
|
| 351 |
self::PAGE
|
| 352 |
);
|
| 353 |
+
add_settings_section(
|
| 354 |
+
'bg_BG_section',
|
| 355 |
+
__( 'bg_BG Table', 'cyr2lat' ),
|
| 356 |
+
array( $this, 'cyr_to_lat_section' ),
|
| 357 |
+
self::PAGE
|
| 358 |
+
);
|
| 359 |
+
add_settings_section(
|
| 360 |
+
'mk_MK_section',
|
| 361 |
+
__( 'mk_MK Table', 'cyr2lat' ),
|
| 362 |
+
array( $this, 'cyr_to_lat_section' ),
|
| 363 |
+
self::PAGE
|
| 364 |
+
);
|
| 365 |
add_settings_section(
|
| 366 |
'ka_GE_section',
|
| 367 |
__( 'ka_GE Table', 'cyr2lat' ),
|
| 368 |
array( $this, 'cyr_to_lat_section' ),
|
| 369 |
self::PAGE
|
| 370 |
);
|
| 371 |
+
add_settings_section(
|
| 372 |
+
'kk_section',
|
| 373 |
+
__( 'kk Table', 'cyr2lat' ),
|
| 374 |
+
array( $this, 'cyr_to_lat_section' ),
|
| 375 |
+
self::PAGE
|
| 376 |
+
);
|
| 377 |
}
|
| 378 |
|
| 379 |
/**
|
languages/cyr-to-lat-ru_RU.mo
ADDED
|
Binary file
|
languages/cyr-to-lat-ru_RU.po
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
msgid ""
|
| 2 |
+
msgstr ""
|
| 3 |
+
"Project-Id-Version: Cyr To Lat\n"
|
| 4 |
+
"POT-Creation-Date: 2019-01-28 17:51+0200\n"
|
| 5 |
+
"PO-Revision-Date: 2019-01-28 17:51+0200\n"
|
| 6 |
+
"Last-Translator: KAGG Design <info@kagg.eu>\n"
|
| 7 |
+
"Language-Team: KAGG Design\n"
|
| 8 |
+
"Language: ru_RU\n"
|
| 9 |
+
"MIME-Version: 1.0\n"
|
| 10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
| 11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
| 12 |
+
"X-Generator: Poedit 2.2.1\n"
|
| 13 |
+
"X-Poedit-Basepath: ..\n"
|
| 14 |
+
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
| 15 |
+
"%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n"
|
| 16 |
+
"X-Poedit-KeywordsList: __;esc_html__;esc_attr__\n"
|
| 17 |
+
"X-Poedit-Flags-xgettext: --add-comments\n"
|
| 18 |
+
"X-Poedit-SearchPath-0: .\n"
|
| 19 |
+
"X-Poedit-SearchPath-1: src\n"
|
| 20 |
+
"X-Poedit-SearchPathExcluded-0: vendor\n"
|
| 21 |
+
"X-Poedit-SearchPathExcluded-1: dist\n"
|
| 22 |
+
"X-Poedit-SearchPathExcluded-2: src\n"
|
| 23 |
+
|
| 24 |
+
#: includes/class-cyr-to-lat-settings.php:113
|
| 25 |
+
msgid "View Cyr To Lat settings"
|
| 26 |
+
msgstr "Посмотреть настройки Cyr To Lat"
|
| 27 |
+
|
| 28 |
+
#: includes/class-cyr-to-lat-settings.php:114
|
| 29 |
+
msgid "Settings"
|
| 30 |
+
msgstr "Настройки"
|
| 31 |
+
|
| 32 |
+
#: includes/class-cyr-to-lat-settings.php:126
|
| 33 |
+
msgid "Convert Existing Slugs"
|
| 34 |
+
msgstr "Конвертировать существующие слаги"
|
| 35 |
+
|
| 36 |
+
#: includes/class-cyr-to-lat-settings.php:134
|
| 37 |
+
#: includes/class-cyr-to-lat-settings.php:300
|
| 38 |
+
msgid "ISO9 Table"
|
| 39 |
+
msgstr "Таблица ISO9"
|
| 40 |
+
|
| 41 |
+
#: includes/class-cyr-to-lat-settings.php:143
|
| 42 |
+
#: includes/class-cyr-to-lat-settings.php:306
|
| 43 |
+
msgid "bg_BG Table"
|
| 44 |
+
msgstr "Таблица bg_BG"
|
| 45 |
+
|
| 46 |
+
#: includes/class-cyr-to-lat-settings.php:152
|
| 47 |
+
#: includes/class-cyr-to-lat-settings.php:312
|
| 48 |
+
msgid "uk Table"
|
| 49 |
+
msgstr "Таблица uk"
|
| 50 |
+
|
| 51 |
+
#: includes/class-cyr-to-lat-settings.php:161
|
| 52 |
+
#: includes/class-cyr-to-lat-settings.php:318
|
| 53 |
+
msgid "ka_GE Table"
|
| 54 |
+
msgstr "Таблица ka_GE"
|
| 55 |
+
|
| 56 |
+
#: includes/class-cyr-to-lat-settings.php:221
|
| 57 |
+
#: includes/class-cyr-to-lat-settings.php:222
|
| 58 |
+
msgid "Cyr To Lat"
|
| 59 |
+
msgstr "Cyr To Lat"
|
| 60 |
+
|
| 61 |
+
#. Admin panel title.
|
| 62 |
+
#: includes/class-cyr-to-lat-settings.php:244
|
| 63 |
+
msgid "Cyr To Lat Plugin Options"
|
| 64 |
+
msgstr "Опции плагина Cyr To Lat"
|
| 65 |
+
|
| 66 |
+
#: includes/class-cyr-to-lat-settings.php:258
|
| 67 |
+
msgid "Donate"
|
| 68 |
+
msgstr "Пожертвовать"
|
| 69 |
+
|
| 70 |
+
#: includes/class-cyr-to-lat-settings.php:261
|
| 71 |
+
msgid "Would you like to support the advancement of this plugin?"
|
| 72 |
+
msgstr "Хотите поддержать развитие этого плагина?"
|
| 73 |
+
|
| 74 |
+
#. @todo Change to Sergey's account
|
| 75 |
+
#: includes/class-cyr-to-lat-settings.php:276
|
| 76 |
+
msgid "Your appreciation"
|
| 77 |
+
msgstr "Ваша оценка"
|
| 78 |
+
|
| 79 |
+
#: includes/class-cyr-to-lat-settings.php:281
|
| 80 |
+
msgid "Leave a ★★★★★ plugin review on WordPress.org"
|
| 81 |
+
msgstr "Оставьте ★★★★★ обзор плагина на WordPress.org"
|
| 82 |
+
|
| 83 |
+
#: includes/class-cyr-to-lat-settings.php:294
|
| 84 |
+
msgid "General Options"
|
| 85 |
+
msgstr "Общие настройки"
|
languages/cyr2lat-ru_RU.mo
CHANGED
|
Binary file
|
languages/cyr2lat-ru_RU.po
CHANGED
|
@@ -1,8 +1,8 @@
|
|
| 1 |
msgid ""
|
| 2 |
msgstr ""
|
| 3 |
"Project-Id-Version: Cyr To Lat\n"
|
| 4 |
-
"POT-Creation-Date: 2019-
|
| 5 |
-
"PO-Revision-Date: 2019-
|
| 6 |
"Last-Translator: KAGG Design <info@kagg.eu>\n"
|
| 7 |
"Language-Team: KAGG Design\n"
|
| 8 |
"Language: ru_RU\n"
|
|
@@ -21,64 +21,79 @@ msgstr ""
|
|
| 21 |
"X-Poedit-SearchPathExcluded-1: dist\n"
|
| 22 |
"X-Poedit-SearchPathExcluded-2: src\n"
|
| 23 |
|
| 24 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 25 |
msgid "View Cyr To Lat settings"
|
| 26 |
msgstr "Посмотреть настройки Cyr To Lat"
|
| 27 |
|
| 28 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 29 |
msgid "Settings"
|
| 30 |
msgstr "Настройки"
|
| 31 |
|
| 32 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 33 |
msgid "Convert Existing Slugs"
|
| 34 |
msgstr "Конвертировать существующие слаги"
|
| 35 |
|
| 36 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 37 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 38 |
msgid "ISO9 Table"
|
| 39 |
msgstr "Таблица ISO9"
|
| 40 |
|
| 41 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 42 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 43 |
-
msgid "
|
| 44 |
-
msgstr "Таблица
|
| 45 |
|
| 46 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 47 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 48 |
msgid "uk Table"
|
| 49 |
msgstr "Таблица uk"
|
| 50 |
|
| 51 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 52 |
-
#: includes/class-cyr-to-lat-settings.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 53 |
msgid "ka_GE Table"
|
| 54 |
msgstr "Таблица ka_GE"
|
| 55 |
|
| 56 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 57 |
-
#: includes/class-cyr-to-lat-settings.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 58 |
msgid "Cyr To Lat"
|
| 59 |
msgstr "Cyr To Lat"
|
| 60 |
|
| 61 |
#. Admin panel title.
|
| 62 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 63 |
msgid "Cyr To Lat Plugin Options"
|
| 64 |
msgstr "Опции плагина Cyr To Lat"
|
| 65 |
|
| 66 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 67 |
msgid "Donate"
|
| 68 |
msgstr "Пожертвовать"
|
| 69 |
|
| 70 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 71 |
msgid "Would you like to support the advancement of this plugin?"
|
| 72 |
msgstr "Хотите поддержать развитие этого плагина?"
|
| 73 |
|
| 74 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 75 |
msgid "Your appreciation"
|
| 76 |
msgstr "Ваша оценка"
|
| 77 |
|
| 78 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 79 |
msgid "Leave a ★★★★★ plugin review on WordPress.org"
|
| 80 |
msgstr "Оставьте ★★★★★ обзор плагина на WordPress.org"
|
| 81 |
|
| 82 |
-
#: includes/class-cyr-to-lat-settings.php:
|
| 83 |
msgid "General Options"
|
| 84 |
msgstr "Общие настройки"
|
| 1 |
msgid ""
|
| 2 |
msgstr ""
|
| 3 |
"Project-Id-Version: Cyr To Lat\n"
|
| 4 |
+
"POT-Creation-Date: 2019-04-12 15:35+0300\n"
|
| 5 |
+
"PO-Revision-Date: 2019-04-12 15:37+0300\n"
|
| 6 |
"Last-Translator: KAGG Design <info@kagg.eu>\n"
|
| 7 |
"Language-Team: KAGG Design\n"
|
| 8 |
"Language: ru_RU\n"
|
| 21 |
"X-Poedit-SearchPathExcluded-1: dist\n"
|
| 22 |
"X-Poedit-SearchPathExcluded-2: src\n"
|
| 23 |
|
| 24 |
+
#: includes/class-cyr-to-lat-settings.php:121
|
| 25 |
msgid "View Cyr To Lat settings"
|
| 26 |
msgstr "Посмотреть настройки Cyr To Lat"
|
| 27 |
|
| 28 |
+
#: includes/class-cyr-to-lat-settings.php:122
|
| 29 |
msgid "Settings"
|
| 30 |
msgstr "Настройки"
|
| 31 |
|
| 32 |
+
#: includes/class-cyr-to-lat-settings.php:134
|
| 33 |
msgid "Convert Existing Slugs"
|
| 34 |
msgstr "Конвертировать существующие слаги"
|
| 35 |
|
| 36 |
+
#: includes/class-cyr-to-lat-settings.php:143
|
| 37 |
+
#: includes/class-cyr-to-lat-settings.php:337
|
| 38 |
msgid "ISO9 Table"
|
| 39 |
msgstr "Таблица ISO9"
|
| 40 |
|
| 41 |
+
#: includes/class-cyr-to-lat-settings.php:152
|
| 42 |
+
#: includes/class-cyr-to-lat-settings.php:343
|
| 43 |
+
msgid "bel Table"
|
| 44 |
+
msgstr "Таблица bel"
|
| 45 |
|
| 46 |
+
#: includes/class-cyr-to-lat-settings.php:161
|
| 47 |
+
#: includes/class-cyr-to-lat-settings.php:349
|
| 48 |
msgid "uk Table"
|
| 49 |
msgstr "Таблица uk"
|
| 50 |
|
| 51 |
+
#: includes/class-cyr-to-lat-settings.php:170
|
| 52 |
+
#: includes/class-cyr-to-lat-settings.php:355
|
| 53 |
+
msgid "bg_BG Table"
|
| 54 |
+
msgstr "Таблица bg_BG"
|
| 55 |
+
|
| 56 |
+
#: includes/class-cyr-to-lat-settings.php:179
|
| 57 |
+
#: includes/class-cyr-to-lat-settings.php:361
|
| 58 |
+
msgid "mk_MK Table"
|
| 59 |
+
msgstr "Таблица mk_MK"
|
| 60 |
+
|
| 61 |
+
#: includes/class-cyr-to-lat-settings.php:188
|
| 62 |
+
#: includes/class-cyr-to-lat-settings.php:367
|
| 63 |
msgid "ka_GE Table"
|
| 64 |
msgstr "Таблица ka_GE"
|
| 65 |
|
| 66 |
+
#: includes/class-cyr-to-lat-settings.php:197
|
| 67 |
+
#: includes/class-cyr-to-lat-settings.php:373
|
| 68 |
+
msgid "kk Table"
|
| 69 |
+
msgstr "Таблица kk"
|
| 70 |
+
|
| 71 |
+
#: includes/class-cyr-to-lat-settings.php:261
|
| 72 |
+
#: includes/class-cyr-to-lat-settings.php:262
|
| 73 |
msgid "Cyr To Lat"
|
| 74 |
msgstr "Cyr To Lat"
|
| 75 |
|
| 76 |
#. Admin panel title.
|
| 77 |
+
#: includes/class-cyr-to-lat-settings.php:282
|
| 78 |
msgid "Cyr To Lat Plugin Options"
|
| 79 |
msgstr "Опции плагина Cyr To Lat"
|
| 80 |
|
| 81 |
+
#: includes/class-cyr-to-lat-settings.php:296
|
| 82 |
msgid "Donate"
|
| 83 |
msgstr "Пожертвовать"
|
| 84 |
|
| 85 |
+
#: includes/class-cyr-to-lat-settings.php:299
|
| 86 |
msgid "Would you like to support the advancement of this plugin?"
|
| 87 |
msgstr "Хотите поддержать развитие этого плагина?"
|
| 88 |
|
| 89 |
+
#: includes/class-cyr-to-lat-settings.php:313
|
| 90 |
msgid "Your appreciation"
|
| 91 |
msgstr "Ваша оценка"
|
| 92 |
|
| 93 |
+
#: includes/class-cyr-to-lat-settings.php:318
|
| 94 |
msgid "Leave a ★★★★★ plugin review on WordPress.org"
|
| 95 |
msgstr "Оставьте ★★★★★ обзор плагина на WordPress.org"
|
| 96 |
|
| 97 |
+
#: includes/class-cyr-to-lat-settings.php:331
|
| 98 |
msgid "General Options"
|
| 99 |
msgstr "Общие настройки"
|
readme.txt
CHANGED
|
@@ -1,9 +1,9 @@
|
|
| 1 |
=== Cyr-To-Lat ===
|
| 2 |
Contributors: SergeyBiryukov, mihdan, karevn, webvitaly, kaggdesign
|
| 3 |
-
Tags: cyrillic, georgian, latin, l10n, russian, rustolat, slugs, translations, transliteration
|
| 4 |
Requires at least: 2.3
|
| 5 |
Tested up to: 5.1
|
| 6 |
-
Stable tag: 3.
|
| 7 |
Requires PHP: 5.2
|
| 8 |
|
| 9 |
Converts Cyrillic characters in post, page and term slugs to Latin characters.
|
|
@@ -16,11 +16,13 @@ Converts Cyrillic characters in post, page and term slugs to Latin characters. U
|
|
| 16 |
* Automatically converts existing post, page and term slugs on activation
|
| 17 |
* Saves existing post and page permalinks integrity
|
| 18 |
* Performs transliteration of attachment file names
|
| 19 |
-
* Includes Russian,
|
| 20 |
* Transliteration table can be customized without editing the plugin by itself
|
| 21 |
|
| 22 |
Based on the original Rus-To-Lat plugin by Anton Skorobogatov.
|
| 23 |
|
|
|
|
|
|
|
| 24 |
== Installation ==
|
| 25 |
|
| 26 |
1. Upload `cyr2lat` folder to the `/wp-content/plugins/` directory.
|
|
@@ -42,10 +44,18 @@ add_filter('ctl_table', 'my_cyr_to_lat_table');
|
|
| 42 |
|
| 43 |
= Can I contribute? =
|
| 44 |
|
| 45 |
-
Yes you can!
|
|
|
|
|
|
|
|
|
|
| 46 |
|
| 47 |
== Changelog ==
|
| 48 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 49 |
= 3.6.5 (11.02.2019) =
|
| 50 |
* Added queues for background slug conversion process
|
| 51 |
|
| 1 |
=== Cyr-To-Lat ===
|
| 2 |
Contributors: SergeyBiryukov, mihdan, karevn, webvitaly, kaggdesign
|
| 3 |
+
Tags: cyrillic, belorussian, ukrainian, bulgarian, macedonian, georgian, kazakh, latin, l10n, russian, cyr-to-lat, cyr2lat, rustolat, slugs, translations, transliteration
|
| 4 |
Requires at least: 2.3
|
| 5 |
Tested up to: 5.1
|
| 6 |
+
Stable tag: 3.7
|
| 7 |
Requires PHP: 5.2
|
| 8 |
|
| 9 |
Converts Cyrillic characters in post, page and term slugs to Latin characters.
|
| 16 |
* Automatically converts existing post, page and term slugs on activation
|
| 17 |
* Saves existing post and page permalinks integrity
|
| 18 |
* Performs transliteration of attachment file names
|
| 19 |
+
* Includes Russian, Belorussian, Ukrainian, Bulgarian, Macedonian, Georgian, and Kazakh characters
|
| 20 |
* Transliteration table can be customized without editing the plugin by itself
|
| 21 |
|
| 22 |
Based on the original Rus-To-Lat plugin by Anton Skorobogatov.
|
| 23 |
|
| 24 |
+
[](http://coderisk.com/wp/plugin/cyr2lat/RIPS-nt7iXCmzoc)
|
| 25 |
+
|
| 26 |
== Installation ==
|
| 27 |
|
| 28 |
1. Upload `cyr2lat` folder to the `/wp-content/plugins/` directory.
|
| 44 |
|
| 45 |
= Can I contribute? =
|
| 46 |
|
| 47 |
+
Yes you can!
|
| 48 |
+
|
| 49 |
+
* Join in on our [GitHub repository](https://github.com/mihdan/cyr2lat)
|
| 50 |
+
* Join in on our [Telegram Channel](https://t.me/cyr2lat)
|
| 51 |
|
| 52 |
== Changelog ==
|
| 53 |
|
| 54 |
+
= 3.7 (12.04.2019) =
|
| 55 |
+
* Added Belorussian, Macedonian, Kazakh tables
|
| 56 |
+
* Fixed bug with MariaDB during old slug conversion
|
| 57 |
+
* Fixed not saving of user modifications in default iso9 table
|
| 58 |
+
|
| 59 |
= 3.6.5 (11.02.2019) =
|
| 60 |
* Added queues for background slug conversion process
|
| 61 |
|
vendor/autoload_52.php
CHANGED
|
@@ -4,4 +4,4 @@
|
|
| 4 |
|
| 5 |
require_once dirname(__FILE__) . '/composer'.'/autoload_real_52.php';
|
| 6 |
|
| 7 |
-
return
|
| 4 |
|
| 5 |
require_once dirname(__FILE__) . '/composer'.'/autoload_real_52.php';
|
| 6 |
|
| 7 |
+
return ComposerAutoloaderInit45d109b755504f763d934370e259f554::getLoader();
|
vendor/composer/ClassLoader.php
CHANGED
|
@@ -279,7 +279,7 @@ class ClassLoader
|
|
| 279 |
*/
|
| 280 |
public function setApcuPrefix($apcuPrefix)
|
| 281 |
{
|
| 282 |
-
$this->apcuPrefix = function_exists('apcu_fetch') && ini_get('apc.enabled') ? $apcuPrefix : null;
|
| 283 |
}
|
| 284 |
|
| 285 |
/**
|
| 279 |
*/
|
| 280 |
public function setApcuPrefix($apcuPrefix)
|
| 281 |
{
|
| 282 |
+
$this->apcuPrefix = function_exists('apcu_fetch') && filter_var(ini_get('apc.enabled'), FILTER_VALIDATE_BOOLEAN) ? $apcuPrefix : null;
|
| 283 |
}
|
| 284 |
|
| 285 |
/**
|
vendor/composer/LICENSE
CHANGED
|
@@ -1,4 +1,4 @@
|
|
| 1 |
-
Format:
|
| 2 |
Upstream-Name: Composer
|
| 3 |
Upstream-Contact: Jordi Boggiano <j.boggiano@seld.be>
|
| 4 |
Source: https://github.com/composer/composer
|
| 1 |
+
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
| 2 |
Upstream-Name: Composer
|
| 3 |
Upstream-Contact: Jordi Boggiano <j.boggiano@seld.be>
|
| 4 |
Source: https://github.com/composer/composer
|
vendor/composer/autoload_real_52.php
CHANGED
|
@@ -2,7 +2,7 @@
|
|
| 2 |
|
| 3 |
// autoload_real_52.php generated by xrstf/composer-php52
|
| 4 |
|
| 5 |
-
class
|
| 6 |
private static $loader;
|
| 7 |
|
| 8 |
public static function loadClassLoader($class) {
|
|
@@ -19,9 +19,9 @@ class ComposerAutoloaderInit786610186433dbfeb9e2e79b41d77986 {
|
|
| 19 |
return self::$loader;
|
| 20 |
}
|
| 21 |
|
| 22 |
-
spl_autoload_register(array('
|
| 23 |
self::$loader = $loader = new xrstf_Composer52_ClassLoader();
|
| 24 |
-
spl_autoload_unregister(array('
|
| 25 |
|
| 26 |
$vendorDir = dirname(dirname(__FILE__));
|
| 27 |
$baseDir = dirname($vendorDir);
|
| 2 |
|
| 3 |
// autoload_real_52.php generated by xrstf/composer-php52
|
| 4 |
|
| 5 |
+
class ComposerAutoloaderInit45d109b755504f763d934370e259f554 {
|
| 6 |
private static $loader;
|
| 7 |
|
| 8 |
public static function loadClassLoader($class) {
|
| 19 |
return self::$loader;
|
| 20 |
}
|
| 21 |
|
| 22 |
+
spl_autoload_register(array('ComposerAutoloaderInit45d109b755504f763d934370e259f554', 'loadClassLoader'), true /*, true */);
|
| 23 |
self::$loader = $loader = new xrstf_Composer52_ClassLoader();
|
| 24 |
+
spl_autoload_unregister(array('ComposerAutoloaderInit45d109b755504f763d934370e259f554', 'loadClassLoader'));
|
| 25 |
|
| 26 |
$vendorDir = dirname(dirname(__FILE__));
|
| 27 |
$baseDir = dirname($vendorDir);
|
