HEX
Server: Apache/2.4.59 (Debian)
System: Linux skycube.cz 4.19.0-25-amd64 #1 SMP Debian 4.19.289-2 (2023-08-08) x86_64
User: ilya (534)
PHP: 7.3.31-1~deb10u7
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,
Upload Files
File: /var/www/ilya/data/www/eeggs.ru/wp-content/plugins/rus-to-lat.php
<?php

/*

Plugin Name: RusToLat

Plugin URI: http://mywordpress.ru/plugins/rustolat/

Description: Транслитерация русских символов URL в английские. Thanks to Alexander Shilyaev for idea. Send your suggestions and critics to <a href="mailto:skorobogatov@gmail.com">skorobogatov@gmail.com</a>.

Author: Anton Skorobogatov <skorobogatov@gmail.com>

Contributor: Andrey Serebryakov <saahov@gmail.com>

Author URI: http://skorobogatov.ru/

Version: 0.3

*/ 

  

$gost = array(

   "Є"=>"EH","І"=>"I","і"=>"i","№"=>"#","є"=>"eh",

   "А"=>"A","Б"=>"B","В"=>"V","Г"=>"G","Д"=>"D",

   "Е"=>"E","Ё"=>"JO","Ж"=>"ZH",

   "З"=>"Z","И"=>"I","Й"=>"JJ","К"=>"K","Л"=>"L",

   "М"=>"M","Н"=>"N","О"=>"O","П"=>"P","Р"=>"R",

   "С"=>"S","Т"=>"T","У"=>"U","Ф"=>"F","Х"=>"KH",

   "Ц"=>"C","Ч"=>"CH","Ш"=>"SH","Щ"=>"SHH","Ъ"=>"'",

   "Ы"=>"Y","Ь"=>"","Э"=>"EH","Ю"=>"YU","Я"=>"YA",

   "а"=>"a","б"=>"b","в"=>"v","г"=>"g","д"=>"d",

   "е"=>"e","ё"=>"jo","ж"=>"zh",

   "з"=>"z","и"=>"i","й"=>"jj","к"=>"k","л"=>"l",

   "м"=>"m","н"=>"n","о"=>"o","п"=>"p","р"=>"r",

   "с"=>"s","т"=>"t","у"=>"u","ф"=>"f","х"=>"kh",

   "ц"=>"c","ч"=>"ch","ш"=>"sh","щ"=>"shh","ъ"=>"",

   "ы"=>"y","ь"=>"","э"=>"eh","ю"=>"yu","я"=>"ya","«"=>"","»"=>"","—"=>"-"

  );



$iso = array(

   "Є"=>"YE","І"=>"I","Ѓ"=>"G","і"=>"i","№"=>"#","є"=>"ye","ѓ"=>"g",

   "А"=>"A","Б"=>"B","В"=>"V","Г"=>"G","Д"=>"D",

   "Е"=>"E","Ё"=>"YO","Ж"=>"ZH",

   "З"=>"Z","И"=>"I","Й"=>"J","К"=>"K","Л"=>"L",

   "М"=>"M","Н"=>"N","О"=>"O","П"=>"P","Р"=>"R",

   "С"=>"S","Т"=>"T","У"=>"U","Ф"=>"F","Х"=>"X",

   "Ц"=>"C","Ч"=>"CH","Ш"=>"SH","Щ"=>"SHH","Ъ"=>"'",

   "Ы"=>"Y","Ь"=>"","Э"=>"E","Ю"=>"YU","Я"=>"YA",

   "а"=>"a","б"=>"b","в"=>"v","г"=>"g","д"=>"d",

   "е"=>"e","ё"=>"yo","ж"=>"zh",

   "з"=>"z","и"=>"i","й"=>"j","к"=>"k","л"=>"l",

   "м"=>"m","н"=>"n","о"=>"o","п"=>"p","р"=>"r",

   "с"=>"s","т"=>"t","у"=>"u","ф"=>"f","х"=>"x",

   "ц"=>"c","ч"=>"ch","ш"=>"sh","щ"=>"shh","ъ"=>"",

   "ы"=>"y","ь"=>"","э"=>"e","ю"=>"yu","я"=>"ya","«"=>"","»"=>"","—"=>"-"

  );

 

function sanitize_title_with_translit($title) {

	global $gost, $iso;

	$rtl_standard = get_option('rtl_standard');

	switch ($rtl_standard) {

		case 'off':

		    return $title;		

		case 'gost':

		    return strtr($title, $gost);

		default: 

		    return strtr($title, $iso);

	}

}



function rtl_options_page() {

?>

<div class="wrap">

	<h2>Настройки RusToLat</h2>

	<p>Вы можете выбрать стандарт, по которому будет производится транслитерация заголовков.</p>

	<?php

	if($_POST['rtl_standard']) {

		// set the post formatting options

		update_option('rtl_standard', $_POST['rtl_standard']);

		echo '<div class="updated"><p>Настройки обновлены.</p></div>';

	}

	?>



	<form method="post">

	<fieldset class="options">

		<legend>Производить транслитерацию в стандарте:</legend>

		<?php

		$rtl_standard = get_option('rtl_standard');

		?>

			<select name="rtl_standard">

				<option value="off"<?php if($rtl_standard == 'off'){ echo(' selected="selected"');}?>>Отключена</option>

				<option value="gost"<?php if($rtl_standard == 'gost'){ echo(' selected="selected"');}?>>ГОСТ 16876-71</option>

        <option value="iso"<?php if($rtl_standard == 'iso' OR $rtl_standard == ''){ echo(' selected="selected"');}?>>ISO 9-95</option>        								

			</select>



			<input type="submit" value="Изменить стандарт" />



	</fieldset>

	</form>

</div>

<?

}



function rtl_add_menu() {

		add_options_page('RusToLat', 'RusToLat', 8, __FILE__, 'rtl_options_page');

}



add_action('admin_menu', 'rtl_add_menu');

add_action('sanitize_title', 'sanitize_title_with_translit', 0);

?>