Транслитерация URL — сервис генерации ссылок ЧПУ
Создаем правильный URL в два счета!
Как сэкономить немного времени на рутинной работе
При создании страниц сайтов и их оптимизации мы каждый раз сталкиваемся с составлением правильных url-адресов. Правильный адрес страницы в нашем понимании, как впрочем, и в понимании поисковых систем должен формироваться по принципу ЧПУ (подробно о концепции ЧПУ написано в Википедии), т.е.:
- лаконично доносить содержание заголовка страницы,
- быть составленным из латинских букв и символов.
Составлять url-адреса для каждой страницы вручную несложно, но это требует достаточно много времени в случаях, когда страниц десятки и сотни. У нас их тысячи. Только некоторые CMS предусматривают встроенные механизмы преобразования кириллицы в латиницу, но у них есть свои недостатки. К примеру, на Вордпрессе буква «я» переводится как «ja», что по правилам транслитерации является ошибкой. Такой вариант нас не может устраивать. Мы работаем с сайтами на различных системах администрирования (с теми, что предпринимают попытки создания ЧПУ ссылок, и с теми, в которых это не предусмотрено), а иногда и без CMS вовсе. Нам был очень нужен инструмент, который бы преобразовывал текст заголовка (или просто, требуемый текст) правильно, вне зависимости от того, какая админка у сайта. И мы этот инструмент разработали! Благодаря ему не нужно держать в голове список всех соответствий русских и транслитерированных латинских букв и специальных символов. Он способен быстро, а главное – правильно, переводить УРЛ к нужному, для оптимизации, виду.
Как это работает?
Транслитерация происходит с использованием Javascript. Это было сделано, чтобы постоянно не дергать сервер (и тем самым высвободить ресурсы для более важных и полезных задач). Url формируется в реальном времени, без необходимости постоянно нажимать кнопку генерации. Так же на странице имеется flash-кнопка «Скопировать ваш УРЛ», при нажатии на которую можно быстро скопировать в буфер обмена полученную транслитерированную строку, чтобы не тратить время на «копипаст». Соответственно, если вам требуется, в модуле есть галочка «Добавить слеши», которая присоединяет к полученной url – ссылке слеши вначале и конце строки. Кнопка «Показать список замены» выводит на экран соответствия русских букв и соответствующих латинских аналогов – это тот самый список, который, теперь, нет необходимости постоянно держать в голове и вспоминать. Надеемся, что данный инструмент будет полезен, и сэкономит вам несколько минут, часов или даже дней вашего рабочего времени.
Хочешь стать экспертом в SEO?
Пройди курсы от SEO Интеллект
ПодробнееПонравилось? Репост!
Настраиваем транслит ссылок WordPress с помощью плагина
Начнем с определения слова. URL — это английская аббревиатура, которая означает унифицированный адрес сайта в интернете. На просторах всемирной паутины адреса сайтов встречаются в виде символов, использующихся в наиболее популярных языках мира, в том числе русского. Но чаще всего можно встретить такие URL на латинице. Процесс написания русских слов на латинице называется транслитерацией.
Какие URL лучше не использовать
Грамотно составленный URL страницы прямо в поисковике демонстрирует пользователю, что эта информация, которую он искал. То есть релевантная, что является фактором, влияющим на ранжирование при поисковой выдаче. Однако, многие владельцы сайтов, чаще всего по незнанию, игнорируют правила написания URL. В частности это происходит из-за того, что они давно и полностью делегируют системе управления сайтом задачу по составлению адресов.
Пример:
Да, в CMS за это отвечает автоматика, но для SEO-продвижения такие URL окажутся бесполезны. Ведь то, что адрес страницы должен быть человеко понятным уже никто не ставит под сомнение. А в данном примере пользователь видит хаотичный набор символов, который никак им не воспринимается.
Составляем URL страницы грамотно:
- В приспособленном для SEO адресе страницы должны находиться ключевики (слова или фразы).
- Оптимальный размер URL от трех до пяти слов.
- Все символы должны находиться в нижнем регистре. Без этого статья может не проиндексироваться.
- Несмотря на то, что кириллический адрес в интернете допустим, старайтесь использовать транслит. Написанный по-русски URL конечно понятен пользователям и корректно отображается в адресной строке. Однако, в поисковике визуально будет показан в виде символов, где одной кириллической букве будет соответствовать аж 6 таких символов. Именно поэтому сайты с российской аудиторией используют транслит ссылок в wordpress.
- Не тратьте время на составление URL самостоятельно. В репозитории wordpress есть хорошие плагины для преобразования заголовка текста в транслит, который автоматически преобразуется в ссылку страницы. Один из них — плагин оптимизации Clearfy.
К слову, данное расширение может не только автоматически преобразовывать кириллический адрес в транслит ссылок wordpress, но и выполнять большинство задач описанных выше в правилах грамотного составления URL для продвижения.
Транслит ссылок WordPress и управление им через плагин
Скачиваем и приступаем к его настройке:
Открываем «Настройки» => «Clearfy меню» =>
=> далее раздел «SEO» (в левом боковом меню плагина) => вкладка «Transliteration»
Транслит ссылок WordPress можно настроить по многим параметрам, представленным в меню настроек.
Первая опция: «Использовать транслитерацию». Активируйте ее, нажав на кнопку ВКЛ. После этого во всех новых статьях URL будут автоматически преобразовываться из кириллических в латинские.
Также разработчики позаботились о конвертации имен файлов, загружаемых на сайт. Если перед загрузкой их не переименовали с кириллицы на латиницу, то плагин сделает это самостоятельно. Активируем и эту функцию.
В случае если у вас уже установлен плагин, каким-либо образом влияющий на транслитерацию ссылок и названий файлов, активируйте функцию принудительной транслитерации, чтобы Clearfy вносил свои изменения. Нажимаем кнопку ВКЛ.
Преобразуйте имена файлов в нижний регистр. Часто случается, когда на сайт загружаются данные с названиями находящимися в смешанном регистре, то есть одновременно в верхнем и нижнем.
Пример: Paul_Atkinson.jpg
Значение следующей функции сложно переоценить. Речь о перенаправлении со старых кириллических URL на новые адреса уже с латинской графикой. Это очень актуально, ввиду того, что старые ссылки продолжают вести трафик на ваш сайт, например из соцсетей. А если после апгрейда они перестанут обеспечивать переходы, то это скажется на ранжировании в поисковой выдаче. К тому же труд копирайтеров и контент-менеджеров окажется напрасным. Не допустите этого и нажмите кнопку ВКЛ.
Также мы советуем сделать транслит ссылок WordPress уже имеющихся записей, рубрик и т.д. Изменения не коснутся файлов, загруженных на сайт ранее. Преобразуйте уже созданные записи. Для этого нажмите на соответствующую кнопку в меню настроек плагина и переведите ссылки на латиницу.
Вы можете дополнить текущую базу символов транслитерации на своем сайте и создать правила. Пример: Ё=Jo, ё=jo, Ж=Zh, ж=zh. Это необходимо, например, если вы придерживаетесь особенных правил, присущих определенному языку, использующему латинский алфавит. Для этого введите пары значений через запятую в специальном поле внизу.
Заключение
Мы рассказали вам о том, как можно автоматически создавать транслит ссылок WordPress. В контексте статьи становится ясно, что наличие человеко понятных адресов на сайте повышает доверие пользователей к ресурсу. Нежели хаотичные наборы символов в URL. При этом лучше использовать не кириллический, а латинский алфавит. В основном из-за некорректного отображения в поисковике: каждая русская буква будет заменена на 6 ни о чем не говорящих символов. Итак, человеко понятный URL в сумме с транслитом дает прекрасный результат, который способствует повторному обращению читателей к статьям.
WordPress. Плагин «Транслитерация URL». Категория: Web-разработка • CMS WoprdPress
Исторически сложилось, что латиница предпочтительнее в URL, нежели кириллица. Автоматический транслит WordPress не поддерживает, и чтобы система научилась самостоятельно производить транслитерацию, нужен плагин. Их сущестует великое множество, давайте и мы создадим свой велосипед. Заодно посмотрим, какие подводные камни есть на этом пути.
Итак, создаем директорию tokmakov-translit
и внутри нее файл tokmakov-translit.php
:
<?php /* Plugin Name: Транслитерация URL Plugin URI: https://tokmakov.msk.ru Description: Преобразует символы кириллицы в латиницу при создании новой записи, страницы, рубрики или метки. Version: 1.0 Author: Евгений Токмаков Author URI: https://tokmakov.msk.ru */ register_activation_hook(__FILE__, function() { // проверяем права пользователя на активацию плагинов if (!current_user_can('activate_plugins')) { return; } // изначально транслитерация выключена $settings = [ 'onoff' => 'off', // транслитерация slug включена? 'clean' => 'off', // выполять доп.замены в slug? 'exist' => 'off' // были конвертированы старые? ]; update_option('tokmakov_translit', $settings); }); register_deactivation_hook(__FILE__, function() { // проверяем права пользователя на деактивацию плагинов if (!current_user_can('deactivate_plugins')) { return; } });
Для начала создадим страницу настроек плагина, которая в панели управления будет выглядеть так:
Как видите, у плагина есть довольно подробное описание:
Slug — это несколько слов, которые нужно задать при создании записи, страницы, рубрики или метки. Slug используются для создания постоянных ссылок. Если slug не задан, он будет создан автоматически из заголовка записи, страницы, рубрики или метки. Если загловок содержит кириллицу, то при создании slug будет произведено URL-кодирование. Например, слово «корова» будет преобразовано в «%D0%BA…%D0%B0».
И примечания, которые объясняют, как правильно использовать настройки:
- Используйте настройку «Преобразовать существующие» только один раз. Перед этим крайне желательно сделать резервную копию базы данных.
- Если нужны дополнительные замены при конвертации существующих записей, рубрик и меток — отметьте checkbox «Производить дополнительные замены».
- Если нужны дополнительные замены при создании новых записей, страниц, рубрик и меток — отметьте checkbox «Производить дополнительные замены».
- Настройка «Производить дополнительные замены» не будет работать без «Включить транслитерацию», но будет работать при транслитерации существующих.
Плагин имеет три настройки: включить транслитерацию новых записей, включить дополнительные преобразования и преобразовать существующие. Третий checkbox отвечает за единоразовую конвертацию существующих
записей блога, страниц, рубрик и меток. Хотя настроек три, в таблице БД wp_options
сохраняется только одна опция tokmakov_translit
в виде сериализованного массива:
[ 'onoff' => 'off', // транслитерация slug включена? 'clean' => 'off', // выполять доп.замены в slug? 'exist' => 'off' // были конвертированы старые? ]
Если была выполнена конвертация существующих, нам нужно выполнять 301 редиректы со старых URL на новые. В WordPress уже есть функционал редиректа для записей блога, если был изменен slug
поста. Но еще нет функционала редиректа для рубрик, меток и страниц. Так что для редиректа со старых URL постов используем возможности WordPress.
Итак, создаем страницу настроек плагина транслитерации:
/* ********************************************************** * Код ниже относится к настройкам плагина транслитерации * ********************************************************** */
/* * Добавляем страницу настроек плагина, пункт меню этой * страницы будет дочерним для нативного пункта меню WP * верхнего уровня «Настройки» */ add_action('admin_menu', function () { add_options_page( // содержимое тега title этой страницы 'Транслитерация URL', // название пункта меню для этой страницы 'Транслитерация URL', // права доступа, чтобы был показан этот пункт меню 'manage_options', // уникальный идентификатор меню (slug) 'tokmakov_translit_page', // функция выводит содержимое этой страницы function () { ?> <div> <h3>Плагин транслитерации</h3> <p> Slug — это несколько слов, которые нужно задать при создании записи, страницы, рубрики или метки. Slug используются для создания постоянных ссылок. Если slug не задан, он будет создан автоматически из заголовка записи, страницы, рубрики или метки. Если загловок содержит кириллицу, то при создании slug будет произведено URL-кодирование. Например, слово «корова» будет преобразовано в «%D0%BA%D0%BE%D1%80%D0%BE%D0%B2%D0%B0». </p> <p> Плагин автоматически преобразует символы кириллицы в латиницу при создании новой записи, страницы, рубрики или метки. Таким образом в URL слово «корова» будет представлено как «korova». </p> <form method="post" action="options. php"> <?php settings_fields('tokmakov_translit_page'); do_settings_sections('tokmakov_translit_page'); submit_button(); ?> </form> <p>Примечания:</p> <ul> <li> Используйте настройку «Преобразовать существующие» только один раз. Перед этим крайне желательно сделать резервную копию базы данных. </li> <li> Если нужны дополнительные замены при конвертации существующих записей, рубрик и меток — отметьте checkbox «Производить доп.замены». </li> <li> Если нужны дополнительные замены при создании новых записей, страниц, рубрик и меток — отметьте checkbox «Производить доп.замены». </li> <li> Настройка «Производить доп.замены» не будет работать без «Включить транслитерацию», но будет работать при транслитерации существующих. </li> </ul> <?php } ); });
/* * 1. Регистрируем опцию для плагина * 2. Добавляем новую секцию для опции * 3. Добавляем поля формы настроек */ add_action('admin_init', function () { /* * 1. Регистрируем опцию для плагина */ register_setting( // страница меню, куда будет добавлена эта опция 'tokmakov_translit_page', // уникальный идентификатор этой опции (slug) 'tokmakov_translit', /* * Функция нужна, чтобы обработать опцию перед сохранением. Но * мы ее будем использовать еще и для того, чтобы преобразовать * кириллицу в латиницу для уже существующих записей, страниц, * рубрик и меток. */ function ($option) { $exist = get_option('tokmakov_translit')['exist']; $option = [ 'onoff' => 'off', 'clean' => 'off', 'exist' => $exist ]; if (isset($_POST['tokmakov_translit']['onoff'])) { $option['onoff'] = 'on'; // доп. замены можно включить, только если уже включена // транлитерация новых записей, страниц, рубрик, меток if (isset($_POST['tokmakov_translit']['clean'])) { $option['clean'] = 'on'; } } if (isset($_POST['tokmakov_translit_exist']) && 'off' == $exist) { $option['exist'] = 'on'; $clean = isset($_POST['tokmakov_translit']['clean']); tokmakov_convert_existing_slugs($clean); } return $option; } ); /* * 2. Регистрируем секцию для опции */ add_settings_section( // уникальный идентификатор секции 'tokmakov_translit_section', // заголовок секции нам не нужен 'Настройки транслитерации', // функция выводит описание секции function () {}, // страница, куда будет добавлена эта секция 'tokmakov_translit_page' ); /* * 3.1. Добавляем поле формы для редактирования опции */ add_settings_field( 'tokmakov_translit_onoff', // идентификатор поля формы 'Включить транслитерацию', // заголовок поля формы function () { // выводит html-код поля формы $value = get_option('tokmakov_translit')['onoff']; $checked = ''; if ($value == 'on') { $checked = 'checked'; } ?> <input type="checkbox" name="tokmakov_translit[onoff]" value="1" <?= $checked; ?>> <em> Включить транслитерацию для новых записей, страниц, рубрик, меток и загружаемых медиа-файлов. </em> <?php }, 'tokmakov_translit_page', // страница меню 'tokmakov_translit_section' // идентификатор секции ); /* * 3.2. Добавляем поле формы для редактирования опции */ add_settings_field( 'tokmakov_translit_clean', // идентификатор поля формы 'Производить доп. замены', // заголовок поля формы function () { // выводит html-код поля формы $value = get_option('tokmakov_translit')['clean']; $checked = ''; if ($value == 'on') { $checked = 'checked'; } ?> <input type="checkbox" name="tokmakov_translit[clean]" value="1" <?= $checked; ?>> <em> Кроме транслитерации, из slug будут удалены все символы, кроме дефиса, подчеркивания, <code>a-z</code> и <code>0-9</code>. </em> <?php }, 'tokmakov_translit_page', // страница меню 'tokmakov_translit_section' // идентификатор секции ); /* * 3.3. Добавляем поле формы для редактирования опции */ add_settings_field( 'tokmakov_translit_exist', // идентификатор поля формы 'Преобразовать существующие', // заголовок поля формы function () { // выводит html-код поля формы $value = get_option('tokmakov_translit')['exist']; $disabled = ''; if ($value == 'on') { $disabled = 'disabled'; } ?> <input type="checkbox" name="tokmakov_translit_exist" value="1" <?= $disabled; ?>> <em> Преобразовать кириллицу в латиницу для уже существующих записей, страниц, рубрик и меток. </em> <?php }, 'tokmakov_translit_page', // страница меню 'tokmakov_translit_section', // идентификатор секции ['label_for' => 'tokmakov_translit_old'] ); });
Дальше идет код, который отвечает за преобразование кириллицы в латиницу.
/* **************************************************************** * Код ниже конвертирует кириллицу в латиницу для новых постов, * * страниц, рубрик и меток. Или преобразует уже существующие. * **************************************************************** */
/* * При вызове функций sanitize_title() и sanitize_file_name() * будем вмешиваться и заменять кириллицу на латиницу */ if ('on' == get_option('tokmakov_translit')['onoff']) { add_filter('sanitize_title', 'tokmakov_convert_slug'); if ('on' == get_option('tokmakov_translit')['clean']) { add_filter('sanitize_title', 'tokmakov_clean_slug'); } add_filter('sanitize_file_name', 'tokmakov_convert_slug'); }
/* * Функция позволяет произвести транслитарацию slug */ function tokmakov_convert_slug($slug) { $replace = array( 'А' => 'A', 'а' => 'a', 'Б' => 'B', 'б' => 'b', 'В' => 'V', 'в' => 'v', 'Г' => 'G', 'г' => 'g', 'Д' => 'D', 'д' => 'd', 'Е' => 'E', 'е' => 'e', 'Ё' => 'Jo', 'ё' => 'jo', 'Ж' => 'Zh', 'ж' => 'zh', 'З' => 'Z', 'з' => 'z', 'И' => 'I', 'и' => 'i', 'Й' => 'J', 'й' => 'j', 'К' => 'K', 'к' => 'k', 'Л' => 'L', 'л' => 'l', 'М' => 'M', 'м' => 'm', 'Н' => 'N', 'н' => 'n', 'О' => 'O', 'о' => 'o', 'П' => 'P', 'п' => 'p', 'Р' => 'R', 'р' => 'r', 'С' => 'S', 'с' => 's', 'Т' => 'T', 'т' => 't', 'У' => 'U', 'у' => 'u', 'Ф' => 'F', 'ф' => 'f', 'Х' => 'H', 'х' => 'h', 'Ц' => 'C', 'ц' => 'c', 'Ч' => 'Ch', 'ч' => 'ch', 'Ш' => 'Sh', 'ш' => 'sh', 'Щ' => 'Shh', 'щ' => 'shh', 'Ъ' => '', 'ъ' => '', 'Ы' => 'Y', 'ы' => 'y', 'Ь' => '', 'ь' => '', 'Э' => 'E', 'э' => 'e', 'Ю' => 'Ju', 'ю' => 'ju', 'Я' => 'Ya', 'я' => 'ya' ); return strtr($slug, $replace); }
/* * Функция убирает из slug все, кроме [-_A-Za-z0-9] */ function tokmakov_clean_slug($slug) { $slug = preg_replace('~[^-_A-Za-z0-9]~', '-', $slug); $slug = preg_replace('~[-]+~', '-', $slug); $slug = preg_replace('~^-+~', '', $slug); $slug = preg_replace('~-+$~', '', $slug); return $slug; }
/* * Функция позволяет произвести транслитарацию slug для * всех уже существующих записей, страниц, рубрик, меток */ function tokmakov_convert_existing_slugs($clean = false) { global $wpdb; /* * Посты */ $query = "SELECT `ID`, `post_name` FROM `". -_A-Za-z0-9]') AND `post_status` IN ('publish', 'future', 'private') AND `post_type` = 'page'"; $posts = $wpdb->get_results($query); // сюда будем записывать старые slug, которые будем добавлять // в таблицу БД wp_postmeta, чтобы случайно не добавить дважды $old_slugs = []; // сюда будем записывать новые slug, чтобы перезаписать старые // значения slug в таблице БД wp_posts $new_slugs = []; foreach ($posts as $post) { $new_slug = tokmakov_convert_slug(rawurldecode($post->post_name)); if ($clean) { $new_slug = tokmakov_clean_slug($new_slug); } if ($post->post_name != $new_slug) { /* * Страница может быть родителем для другой страницы. И это * влияет на недоступность по старому URL как этой страницы, * так и ее потомков. Например, сейчас работаем со страницей * «вторая». У нее есть родительская страница «первая» и * дочерняя страница «третья». Нам надо сохранить старые slug: * «первая/вторая» и «первая/вторая/третья». Но, когда будем * работать со страницей «третья», нам уже не нужно сохранять * старый slug «первая/вторая/третья». Мы сохранили его раньше. */ // нам нужно сохранить старый slug не только текущей страницы, // но и всех ее потомков; при этом slug будет иерархический $children = tokmakov_all_children($post->ID); array_unshift($children, $post->ID); foreach ($children as $child) { // получаем родителей, потому что slug иерархический $parents = get_post_ancestors($child); array_unshift($parents, $child); $parents = array_reverse($parents); $items = []; foreach ($parents as $parent) { $items[] = get_post($parent)->post_name; } $parents = implode('/', $items); // этот старый slug уже мог быть добавлен на // одной из предыдущих итераций цикла if (!in_array($parents, $old_slugs)) { $old_slugs[] = $parents; add_post_meta($child, '_tt_old_slug', $parents); } } $new_slugs[$post->ID] = $new_slug; } } // записываем в таблицу БД wp_posts новые значения slug foreach ($new_slugs as $id => $value) { $wpdb->update( $wpdb->posts, ['post_name' => $value], ['ID' => $id] ); } /* * Метки */ $query = "SELECT `". -_A-Za-z0-9]')"; $terms = $wpdb->get_results($query); // сюда будем записывать старые slug, которые будем добавлять // в таблицу БД wp_termmeta, чтобы случайно не добавить дважды $old_slugs = []; // сюда будем записывать новые slug, чтобы перезаписать старые // значения slug в таблице БД wp_terms $new_slugs = []; foreach ($terms as $term) { $new_slug = tokmakov_convert_slug(rawurldecode($term->slug)); if ($clean) { $new_slug = tokmakov_clean_slug($new_slug); } if ($term->slug != $new_slug) { /* * Это иерархическая таксономия, и это влияет на недоступность * по старому URL как этой рубрики, так и ее потомков. */ // нам нужно сохранить старый slug не только текущей рубрики, // но и всех ее потомков; при этом slug будет иерархический $children = get_term_children($term->term_id, 'category'); array_unshift($children, $term->term_id); foreach ($children as $child) { $parents = get_term_parents_list( $child, 'category', [ 'format' => 'slug', 'separator' => '/', 'link' => false, 'inclusive' => true ] ); $parents = trim($parents, '/'); // этот старый slug уже мог быть добавлен на // одной из предыдущих итераций цикла if (!in_array($parents, $old_slugs)) { $old_slugs[] = $parents; add_term_meta( $child, '_tt_old_slug', $parents ); } } $new_slugs[$term->term_id] = $new_slug; } } // записываем в таблицу БД wp_terms новые значения slug foreach ($new_slugs as $id => $value) { $wpdb->update( $wpdb->terms, ['slug' => $value], ['term_id' => $id] ); } }
/* * Вспомогательная функция, возвращает всех потомков страницы */ function tokmakov_all_children($id) { $children = get_children([ 'post_parent' => $id, 'post_type' => 'page', 'post_status' => ['publish', 'future', 'private'] ]); $ids = []; foreach ($children as $child) { $ids[] = $child->ID; $ids = array_merge($ids, tokmakov_all_children($child->ID)); } return $ids; }
Давайте разберем функцию преобразования существующих записей, рубрик и меток подробно. При изменении slug
записи блога через панель управления, WordPress добавляет новую запись в таблицу БД wp_postmeta
. Например, мы изменили some-slug
на other-slug
для поста 1234, при этом будет добавлена запись:
post_id => 1234 meta_key => _wp_old_slug meta_value => some-slug
Когда посетитель зайдет на страницу www.example.com/some-slug/
, он будет перенаправлен на страницу www.example.com/other-slug/
. Если slug
поста будет изменен еще раз на another-slug
, WordPress добавит еще одну запись в таблицу БД:
post_id => 1234 meta_key => _wp_old_slug meta_value => other-slug
Теперь, если посетитель зайдет по адресу www.example.com/some-slug/
или www.example.com/other-slug/
, он будет перенаправлен на страницу www.example.com/another-slug/
.
Когда запущена транслитерация существующих записей типа post
, мы поступаем аналогично — добавляем в таблицу БД wp_postmeta
новую запись со старым slug
-ом. И редиректы за нас будет выполнять WordPress. А вот с записями типа page
уже сложнее — функционал редиректа для страниц еще не реализован. Так что надо это делать самим — при этом учитывать, что страницы поддерживают иерархию, так что записывать надо не «чистый» slug
страницы (как в случае с post
), а с учетом всех предков.
post_id => 2345 meta_key => _tt_old_slug meta_value => parent-slug/current-slug
С таксономиями ситуация аналогична — в WordPress функционал редиректа для рубрик и меток еще не реализован. Так что делаем это сами, опять-таки учитывая, что таксономия меток плоская, а таксономия рубрик — иерархическая. Поэтому для рубрик надо добавлять записи в таблицу БД wp_termmeta
с учетом родителей:
term_id => 3456 meta_key => _tt_old_slug meta_value => parent-slug/current-slug
Дальше идет код, который отвечет за редиректы после конвертации существующих:
/* *********************************************************** * Код ниже выполняет 301 редирект со старого URL на новый * *********************************************************** */
/* * Выполняем редиректы со старых URL страниц, рубрик и меток * на новые, если была конвертация существующих */ if ('on' == get_option('tokmakov_translit')['exist']) { add_filter('init', 'tokmakov_redirect_page'); add_filter('request', 'tokmakov_redirect_term'); }
/* * Функция выполняет редирект со старого URL страницы на новый */ function tokmakov_redirect_page() { $request = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH); $request = trim($request, '/'); if (!preg_match('~^[^/]+?(/[^/]+)*$~', $request)) { return; } global $wpdb; // пробуем найти старый slug, который был до преобразования $query = "SELECT `". $wpdb->posts."`.`ID` FROM `".$wpdb->posts."` INNER JOIN `".$wpdb->postmeta."` ON `".$wpdb->posts."`.`ID` = `".$wpdb->postmeta."`.`post_id` WHERE `".$wpdb->posts."`.`post_type` = 'page' AND `".$wpdb->posts."`.`post_status` IN ('publish', 'future', 'private') AND `".$wpdb->postmeta."`.`meta_key` = '_tt_old_slug' AND `".$wpdb->postmeta."`.`meta_value` = %s ORDER BY `".$wpdb->postmeta."`.`meta_id` DESC LIMIT 1"; $query = $wpdb->prepare($query, $request); $page_id = (int)$wpdb->get_var($query); // если старый slug найден — выполняем редирект if (!empty($page_id)) { wp_redirect(get_permalink($page_id), 301); die(); } };
/* * Функция выполняет редирект со старого URL рубрики или метки на новый */ function tokmakov_redirect_term($query_vars) { global $wpdb; if (isset($query_vars['tag']) || isset($query_vars['category_name'])) { if (isset($query_vars['category_name'])) { $slug = $query_vars['category_name']; $taxonomy = 'category'; } if (isset($query_vars['tag'])) { $slug = $query_vars['tag']; $taxonomy = 'post_tag'; } // пробуем найти старый slug, который был до преобразования $query = "SELECT `".$wpdb->terms."`.`term_id` FROM `".$wpdb->terms."` INNER JOIN `".$wpdb->termmeta."` USING (`term_id`) INNER JOIN `".$wpdb->term_taxonomy."` USING (`term_id`) WHERE `".$wpdb->term_taxonomy."`.`taxonomy` = '".$taxonomy."' AND `".$wpdb->termmeta."`.`meta_key` = '_tt_old_slug' AND `". $wpdb->termmeta."`.`meta_value` = '".$slug."' ORDER BY `".$wpdb->termmeta."`.`meta_id` DESC LIMIT 1"; $term_id = (int)$wpdb->get_var($query); // если старый slug найден — выполняем редирект if (!empty($term_id)) { wp_redirect(get_term_link($term_id, $taxonomy), 301); die(); } } return $query_vars; }
Давайте рассмотрим этот код подробнее. Как видите, для страниц и таксономий он вешается на разные события. Это сделано неспроста. Шаблон URL страниц иногда может совпадать с шаблоном URL записи блога. Простейший пример:
http://www.example.com/some-page/ http://www.example.com/some-post/
Или вот еще пример — дочерняя страница child-page
и страница вложения поста some-attachment
:
http://www.example.com/some-page/child-page/ http://www.example.com/some-post/some-attachment/
В этом случае WordPress проводит дополнительную проверку на предмет того, что страница с таким slug
существует. И для этого выполняет запрос к базе данных — чтобы правильно установить имена переменных запроса и их значений. Но в нашем случае запрос к БД не поможет, потому что slug
мы уже перезаписали. И переменные запроса скорее всего будут установлены неправильно. Поэтому мы выполянем редирект для страниц на хуке init
, еще до того, как WordPress начнет разбирать URL и выполнять эту проверку.
А редирект для страниц рубрик и меток выполняем на хуке request
, когда URL уже разобран и переменные запроса известны. И редирект выполняем только в том случае, когда запрошена рубрика или метка.
И последее, что нам осталось сделать — создать файл uninstall.php
:
<?php if (!defined('WP_UNINSTALL_PLUGIN')) { exit; } global $wpdb; // если была конвертация существующих — удаляем записи, которые // мы добавили в таблицы wp_postmeta и wp_termmeta $wpdb->delete( $wpdb->postmeta, ['meta_key' => '_tt_old_slug'] ); $wpdb->delete( $wpdb->termmeta, ['meta_key' => '_tt_old_slug'] ); delete_option('tokmakov_translit');
Поиск: CMS • SEO • Web-разработка • Плагин • ЧПУ • WordPress • URL
Настройка ЧПУ и автоматическая транслитерация url в WordPress
Опубликовано: 28 июня 2014
Обновлено: 11 апреля 2019
28 429
ЧПУ – один из критериев ранжирования сайта в поисковых системах, поэтому вопрос настройки ЧПУ в WordPress актуален.
WP позволяет выбрать несколько вариантов формирования URl:
- /?p=123
- /2014/06/25/sample-post/
- /2014/06/sample-post/
- /archives/123
- /sample-post/
- Произвольно
Можно выбрать префикс для
- Префикс для рубрик
- Префикс для меток
Какие настройки лучше выбрать?
На мой взгляд, лучше выбрать вариант с названием постов сразу от корня сайта (т.е. пятый вариант: /sample-post/). Из плюсов: посты будут с ЧПУ, позволит безболезненно менять рубрики и структуру блога. Из минусов: длинный url, возможно появление кириллических символов в URL.
Для рубрик и меток можно выбрать префиксы на свой вкус, я использую: cat и tags соответственно.
Как исправить этот недостаток у выбранного варианта?
URL с названиями разделов и страниц автоматически подставляется на русском языке (если Вы ведёте блог на русском языке). Это не очень хорошо по многим причинам, например:
- русские буквы кодируются – из-за это урлы становятся очень длинными, непонятными, нечитабельными
- неудобно анализировать ссылочную массу: как внутреннюю, так и внешнюю, потому что ссылки имеют не читабельный вид
- такими ссылками не удобно делиться пользователям
Как решить?
Конечно, можно переделывать url каждой страницы делать транслитерацию вручную, но можно установить плагин – Cyr to Lat enhanced. Для этого необходимо зайти в раздел “Плагины” -> “Добавить новый” -> найти через поиск по названию и установить.
После того как Вы активируете плагин, задумываться о транслитерации url в WP больше не надо будет, плагин будет это делать автоматически.
Какие опасности подстерегают?
- Все старые кириллические url автоматически преобразуются в англоязычные, таким образом, если у Вас было много проиндексируемых страниц с с кириллическими урлами, то необходимо подумать о настройке редиректов. Причем важно настроить переадресацию таким образом, чтобы старый урл страницы – перенаправлялся на новый (а не на главную страницу, например).
- Транслитерация урлов произойдёт не только на страницах и постах, но и в рубриках, метках, т.е. на всём сайте целиком.
Вопросы?
Автор
Андрей Воскобойников
Многие из вас, кто создавал или хочет создать свой сайт задавались вопросом поисковой оптимизации (search engine optimization, SEO). Какой вид URL все-таки лучше для индексации поисковиками: транслит или кириллица, и есть ли смысл составлять URL на английском языке в зоне .ru и .ua? Из личного опыта у меня сформировалось мнение, что URL лучше составлять на транслите. Вот основные причины: 1. Как Google так и Yandex отлично распознают транслит и при поисковой выдаче подсвечивают в URL слова на транслите. Вот пример http://www.google.ru/search?hl=ru&rlz=1I7GGLL_ru&newwindow=1&q=%D1%82%D1%80%D0%B0%D0%BD%D1%81%D0%BB%D0%B8%D1%82&lr=lang_ru&aq=0s&oq=nhfyckbn. Существуют разные варианты транслитерации, я пользуюсь этим.
2. Ссылка на транслите, в отличие от ссылки на английском языке для русскоязычных пользователей будет нести смысловую нагрузку (ну не все на просторах СНГ знают английский язык). Например для не знающих английский url вида http://www.itcomfort.com.ua/itservice/custom_equipment/ ни о чем не скажет, напротив же http://grand-mebli.com.ua/mebel-dlya-kafe-barov-restoranov.html. 3. Хотя Google с Yandexом отлично распознают кириллицу в url и также хорошо подсвечивают ключевые слова на кириллице в своей поисковой выдаче, тот факт, что при копировании ссылка на кириллице превращается в кракозяблы остается для меня и большинства русскоязычных пользователей существенным минусом. Например скинуть в аське кому-то ссылку в таком виде http://www.itdom.org.ua/%D0%9D%D0%BE%D1%83%D1%82%D0%B1%D1%83%D0%BA%D0%B8.html с километровой длиной, думаю, вызовет не самые лучшие отзывы.Если вы используете CMS Joomla, то в ней есть отличные механизмы преобразования ссылок в ЧПУ ( веб-адреса, удобные для восприятия человеком, а также систем и методов построения таких адресов. Является аббревиатурой от словосочетания «человекопонятный урл» (где «урл» — жаргонное обозначение URL)). Самымы популярными реализациями этих механизмов для CMS Joomla являются компоненты sh504sef, opensef, artio joomsef. Тут мой выбор пал на sh504sef, который можно взять на сайте http://extensions.siliana.com/. Вам также советую остановится именно на этом компоненте. В одной из статей постараюсь объяснить почему. Ссылка должна отобрать суть страницы, но ее длина должна быть как можно короче, это влияет на выдачу. Также в ссылки лучше не использовать прописных букв, пробелов и символов типа ‘, ». |
Транслитерация и ЧПУ – используем Translit
Настройка ЧПУ – человеко-понятных УРЛ-ов (URL), иначе, адресов страниц на любом сайте – одна из первоочередных мер для облегчения восприятия адреса пользователем во-первых и оптимизации его, то есть адреса, под поисковые системы во-вторых. Производится такая настройка обычно в самом начале разработки веб-проекта.
MODX при включении режима ЧПУ (в Revolution он называется «Дружественные URL») изначально предлагает автоматическую генерацию псевдонимов страниц исходя из их названий, однако если название состоит из русских слов, то и псевдоним страницы окажется на русском. Чем это плохо для поискового продвижения? Всем. Хуже только домен в кириллической зоне.
Для автоматической транслитерации русских символов в английские и существует отличное дополнение под названием translit.
Для начала следует установить его через менеджер пакетов: «Приложения – Установщик». Затем идем в системные настройки, в раздел «Дружественные URL».
Установим значения:
- Автоматически генерировать псевдоним (automatic_alias) – Да.
- Транслитерация псевдонимов (friendly_alias_translit) – russian.
- Использовать дружественные URL (friendly_urls) – russian.
После этого можно спокойно создавать и сохранять статьи, не указывая псевдоним вручную, он будет формироваться автоматически. Дополнение translit заменит русские буквы на латиницу. Псевдонимы при желании всегда допустимо изменять на свои.
Обратите внимание на аналогичное, но все же несколько другое дополнение – yTranslit. Оно не транслитерирует, а полноценно переводит псведонимы на английский язык, используя сервис Api Яндекса.
Переводчик на латиницу онлайн. Переводчик на латиницу онлайн Почему выбирают транслит от Yandex
Представленный на данной странице онлайн-ресурс поможет выполнить правильную транслитерацию с русского на английский необходимых данных: имен, названий, URL страниц сайтов. Транслитерация онлайн (транслит онлайн) — это удобная и простая в использовании программа, которая облегчит Вашу работу и поможет правильно представить необходимую информацию на латинице в автоматическом режиме. Воспользуйтесь им, чтобы правильно преобразовать буквы кириллицы в буквы латинского алфавита. Это понадобится вам при оформлении документов или договоров.
Транслит онлайн
Преимущества нашего online-транслитератора:
- Учтенные правила различных систем;
- Готовый URL для вставки на сайт;
- Онлайн перевод в реальном времени.
Ниже Вы можете узнать, что такое транслитерация, а также познакомитесь с основными системами транслитерирования, чтобы иметь возможность самостоятельно преобразовать буквы кириллического алфавита или их сочетания и находить соответствия, если под рукой нет транслит-переводчиков.
Что такое транслитерация?
Транслитерация — это самый правильный и относительно легкий способ передачи текста, написанного в одной алфавитной системе, посредством другой, например, русские слова латинскими буквами. Этот способ был разработан Шлейхером и до сих пор остается востребованным. Это логично, ведь благодаря именно этому способу становится возможном правильно и корректно оформить водительские права, загранпаспорт, дипломы и другие документы.
Иными словами это передача русских слов латиницей (на английском языке), то есть представление русских слов с помощью английского алфавита. Например, «до свидания» будет звучать не «bye», а «dosvidaniya».
Где применяется?
Изначально транслитерация с английского на русский изучалась и использовалась в основном переводчиками, однако сегодня сферы ее использования значительно расширились. Транслитерация стала весьма популярна в интернете.
При переводе профессиональные переводчики используют способ транслитерации, если:
- Необходимо написать ФИО в документах, адреса (улицы), а также другие русские буквы латиницей. Вот пример написания имени и фамилии: Коваленко — Kovalenko; улица Лебединая — ylitsa Lebedinaya;
- Речь идет о реалиях местности или страны, которым нет обозначения в языке перевода или же существует необходимость подчеркнуть колорит языка. Так, можно привести в пример всем известный борщ, который переводится как «borsch», бабушка — «babushka».
Если же говорить об интернет технологиях, тут транслитерация на английский служит, чтобы:
- Придумать название сайта или адрес страницы. Несмотря на английские буквы, многие имена сайтов легко читаются на русском.
Использовать в переписке или интернет-общении. Тут часто буквы заменяются числами или же другими символами. Ч часто передается на письме как 4. Шапочка — Shapo4ka. Возможны и другие варианты. Также это излюбленный метод общения геймеров и пользователей ПК, которые часто используют транслит на английский. Для того чтобы написать русские слова латиницей поменяйте раскладку клавиатуры.
Наиболее популярные системы транслитерации
Существуют различные системы транслитераций. Они могут иметь некоторые различия между собой. Мы предлагаем рассмотреть несколько наиболее актуальных способов транслитерации.
Транслитерация по ГОСТ . Это утвержденный документ, который определяет, как транслитерировать кириллические языки с помощью латиницы. ГОСТ 7.79-2000 — адаптированный к международному стандарту ISO9, принятый в России.
Транслитерация для документов по требованиям ИКАО . ИКАО расшифровывается как Международная организация гражданской авиации. Данная организация разработала свою собственную систему транслитерации фамилий и имен. Данная система зачастую включена в транслит онлайн с русского на английский.
Транслитерация по системе TYP (Traveller»s Yellow Pages Transliteration). Несмотря на большое разнообразие систем транслитерации, эта система является довольно популярной и наиболее используемой. Она имеет свои отличительные правила транслитерации с русского на английский, которые можно видеть в таблице, приведенной ниже.
Транслитерация по приказу МИД N 4271 используется для оформления загранпаспортов.
Транслитерация по приказу МВД N 995 используется для выдачи водительских удостоверений и на данный момент (2018г. ) совпадает с транслитерацией для загранпаспортов.
Транслитерация для Яндекс . Часто, в качестве названия страницы сайта, используют название самой статьи английскими буквами. Чтобы достичь хороших результатов в поисковых системах, нужно использовать именно правила яндекса.
При транслитерации некоторые буквы русского (или любого другого славянского языка), такие как щ, ц, ы, ч, й, ж, ю, на английском вызывают наибольшие трудности. Давайте же рассмотрим, как они транслитерируются и пишутся, согласно выше разобранным системам с помощью сводной таблицы транслитерации.
Итоговая таблица транслитерации с русского на английский
Ниже представлена сводная таблица для транслита с русского на английский, в которой приведены системы, рассмотренные выше.
Русские буквы | Система TYP | Система ИКАО | ГОСТ 7.79-2000 | Приказы МИД N 4271/ МВД N 995 | |
Возможно, Вам будет интересно изучить тему букв и звуков английского языка более подробно. С помощью онлайн-самоучителя Lim English , Вы можете пройти специализированный курс на данную тему. и приступайте к увлекательным занятиям! |
Почему же для сайта так важны SEO-урлы с правильным транслитом?
Для грамотного, корректного формирования структуры web-ресурса одним из главных условий является уникальный ЧПУ (человекопонятный URL). Вид урла дает пользователю представление о том, что находится на странице, а поисковому роботу подсказывает, каков формат, какова релевантность запросу и так далее. Словом, предоставляет информацию, которая используется в алгоритме поиска и выдачи веб-страниц. Таким образом, задавая адрес ресурса, необходимо использовать транслит Яндекса.
Почему выбирают транслит от Yandex?
Транслитерация Яндекса отлична от привычного транслита
Анализируя ссылки, поисковый робот Яндекса, обращает внимание на адреса сайтов. И здесь важную роль играет урл, написанный транслитом. Оказывается, транслит Яндекса не соответствует традиционным правилам транслитерации. Существуют исключения перевода кириллических символов в латиницу. Например, для Yandex транскрипция буквы «щ» отличается от общепризнанного — SHH вместо SHCH.
Транслит URL Яндекса и ранжирование сайта
Стратегии SEO обязательно учитывают алгоритмы ранжирования. Таким образом вебмастер добивается улучшения позиции веб-ресурса в выдаче поиска. Правильные URL повышают шансы приблизиться к первым позициям в SERP. Страницы с правильным транслитерированным адресом поисковик ранжирует выше. Следовательно, интернет-ресурс, где соблюдается правильная транслитерация Яндекс, получает преимущество перед конкурентами.
Еще Яндекс интегрировал в поиске полезный бонус для сайтов, использующих грамотный транслит, — подсветку транслитерированного адреса. Это выделение — мощный инструмент для привлечения посетителей ресурса, увеличения количества конверсии сайта в целом.
Какой же тип ЧПУ выбрать?
Транслит или перевод на английский язык, кириллицу?
На сайте доступны следующие три варианта перевода:
- Грамотный translit по правилам Яндекс. Идеальный вариант для Яндекс, но для Google не подходит. Google не выделит данные слова в выдаче.
- Вручную перевод слова на английский язык. К сожалению, такие ссылки бесполезны для Yandex, но для Google в приоритете.
- Использование написания URL кириллицей. Минус — внешние безанкорные ссылки будут выглядеть вот так http://domain.ru/%D1%82%D1%80%D0%B5%D0.
Вывод однозначен: для создания ЧПУ сайта в интернете под Yandex используем сервис онлайн-транслита. Для Google берем просто перевод слова на английский язык.
Здравствуйте, уважаемые читатели блога сайт! Этот пост я решил посвятить теме транслитерации, которая, если говорить в двух словах, представляет собой правила написания текста с помощью знаков другого языка (скажем, по-русски на латинице).
Я думаю, с таким явлением сталкивались практически все пользователи, а многие применяли транслит, передавая свои мысли на русском, но записывая их английскими буквами, просто не имея в визуальном отображении русскоязычной раскладки на клавиатуре.
Такие тексты (заметки или сообщения), написанные латинскими символами, до сих пор можно встретить на некоторых форумах. Причем, пишут их юзеры, в основном не соблюдая никаких правил, которые имеют место быть и о которых мы еще поговорим ниже. Основная цель такого общения — донести информацию до аудитории, которая бы ее адекватно восприняла.
Некоторые использовали (и используют до сих пор) транслитерацию с русского языка на английский при отправке СМС c мобильника, если там отсутствует соответствующая языковая опция. Однако, это не единственные примеры применения translit. Сегодня об этом и поговорим.
Правила транслитерации и ее отличие от транскрипции
Для начала определим основные понятия для более точного понимания предмета, а также усвоим принципиальное различие между такими терминами как «транскрипция» и «транслитерация».
Транскрипция — это широкое понятие, которое означает по возможности точную передачу звуков конкретного языка посредством определенной системы символов.
Транслитерация обеспечивает отображение букв одной письменности с помощью знаков другой письменности, при этом не делается акцент на произношении.
Записанные с помощью спецсимволов слова чрезвычайно полезны для усвоения правильного произношения при изучении иностранных языков. Вот несколько примеров транскрипции русских слов на латинице в формате МФА (Международного Фонетического Алфавита):
Адрес — ˈadrʲɪs Алексей — ɐlʲɪksʲˈej Альманах — ɐlʲmɐnˈax Гоголь — ɡˈoɡəlʲ Дмитрий — dmʲˈitrʲɪj Евгений — jɪvɡʲˈenʲɪj Екатеринбург — jɪkətʲɪrʲɪnbˈurk Михаил — mʲɪxɐˈil Словарь — slɐvˈarʲ Татьяна — tɐtʲjˈænə Юлия — jˈʉlʲɪjə Юрий — jˈʉrʲɪj
В большинстве языков (включая английский и русский) существуют свои правила транскрипции, когда каждому слову находит соответствие его фонетический аналог, описывающий его звучание. Вот парочка примеров:
Улыбка — улы́пкʌ (русская транскрипция) smile — (английская транскрипция)
Более того, буквы и слова на кириллице можно транскрибировать на английские, и наоборот.
Задачей же транслитерации, как мы уже определили, является простое отображение символов одной письменности с помощью знаков другой. Тогда приведенные выше в качестве примера русские слова (в том числе имена) будут переведены транслитом на тот же английский так:
Адрес — Adres Алексей — Aleksej Альманах — Al»manah Гоголь — Gogol» Дмитрий — Dmitrij Евгений — Evgenij Екатеринбург — Ekaterinburg Михаил — Mihail Словарь — Slovar» Татьяна — Tat»jana Юлия — Julija Юрий — Jurij
Думаю, теперь разница между транскрипцией и транслитерацией в общем значении этих терминов очевидна. Существует множество стандартов транслита, порой несовместимых между собой. Исторически были приняты несколько государственных стандартов (ГОСТ), которые включая советское время регулировали транслитерацию.
На сегодня действующим является международный стандарт ISO-9 , регламентирующий общие принципы перевода с русского на латиницу. Основным его преимуществом является то, что он исключает двусмысленность трактовки.
В нем каждая буква кириллицы соответствует определенной букве латинского алфавита или ее сочетанию со специальным символом (диакритом). Диакритические символы — специальные надстрочные или подстрочные знаки, которые добавляются к буквам.
Ярким примером может служить значок «»», присутствующий в некоторых транслитерированных словах, представленных выше (скажем, Tat»jana), который обозначает смягчение согласных (аналог мягкого знака «ь» в русском алфавите). В результате подобного соответствия возможна обратная транслитерация, даже если язык не опознан.
Несмотря на существование международного стандарта ISO-9, который весьма однозначно отображает принципы перевода знаков русского алфавита на латинские, он не является единственным, так как в различных областях применяются альтернативные базовые правила.
Если вас заинтриговала эта тема и вы желаете поближе с ней ознакомиться, то список всех основных стандартов транслитерации кириллических языков с помощью латиницы вы можете найти на специальной странице Википедии.
Способы транслита, применяемые на практике
После представления теоретической части самое время остановиться на видах практического использования транслитерации. Вот они:
1. Практическая транскрипция — базируется на стандарте типа ИСО-9, о котором я упоминал выше. Необходимо соблюдать не только грамматическое, но и фонетическое соответствие между обоими языками. Иными словами, необходимо найти «золотую середину» в написании и звучании того или иного слова на основе обоих языков.
Преимущество данного метода состоит в облегченном вводе текста. При этом используются только латинские символы. Правда, небольшие сложности могут возникнуть при прочтении некоторых специфических согласных, которые имеют такие соответствия: «ж-zh», «ч-ch», «ш-sh», «щ-shch».
Применяется в том числе при отправке СМС, а также нередко в адресах русскоязычных вебсайтов и при работе с софтом, который не поддерживает кириллицу. Ниже представляю таблицу наиболее часто используемых правил транслитерации русского алфавита латиницей :
Обратите внимание, что некоторым русским буквам соответствует сразу несколько вариантов латинских символов (в, д, е, ё, ж, з, й, к, л, х, ц, ч, ш, щ, ъ, ы, ь, э, ю, я). Они расположены по убыванию популярности применения.
2. Геймерский язык (альтернативное название «кодировка Волапюк») — здесь используются латинские буквы вкупе с цифрами и знаками препинания. Это название получено им по причине того, что такой транслит в ходу между геймерами (игроками компьютерных игр).
Дело в том, что в подобных играх в основном нет опций для использования кириллицы в никах, поэтому геймеры составляют такой набор английских знаков и цифр, которые внешне похожи на русские буквы (например, «Клинопись» в геймерском варианте выглядит как «KJIuHonucb»).
Для образования русских ников это даже оригинально, но с целью отправки СМС, а тем более, при общении, такой способ явно не подходит. Правда, иногда геймерский транслит используют некоторые вебмастера для своего сайта (например, nouck.ru или kypc.ru).
3. Вульгарный — наиболее популярный вариант транслита в общении между простыми пользователями. Он основан на смешении транскрипции и геймерского языка. Здесь достигнут компромисс, поскольку такой вариант довольно просто вводится и одновременно легко читается.
Скажем, в нем используют для обозначения буквы «Ч» цифру «4». Также, вместо «Ж» ставят звездочку «*», вместо «Ш» — «W» и т.д. В общем, обычный translit разрешает практически любые интерпретации, главное, чтобы автору было комфортно писать текст, а читателям — легко его корректно воспринимать.
Транслитерация имен, фамилий и адресов сайтов
А теперь мы переходим к практической области, где надо жестко соблюдать соответствующие стандарты. Например, очень часто требуется указать данные (имя, фамилию, свой адрес) при регистрации на зарубежных сайтах, скажем, на том же Google Adsense () или вебсайтах платежных систем (к примеру, PayPal).
Если вы регистрируетесь с территории Российской Федерации, то строго следуйте правилам, применяемым при оформлении загранпаспортов, иначе могут возникнуть сложности.
Потому корректное написание русского имени, фамилии, адреса (а также других необходимых данных) на английском может вам существенно помочь.
Для вебмастеров четкое и последовательное соблюдение правил транслитерации русских слов также имеет важнейшее значение. Ведь многие владельцы вебресурсов на просторах рунета используют translit как в адресах страниц, так и в названии своих сайтов.
Для чего это необходимо? Дело в том, что содержащие ключевые слова URL () вебстраниц оказывают положительное влияние на SEO продвижение сайта. Скажете, это мелочь? Но успешная раскрутка любого проекта как раз и состоит из сплошных нюансов.
Косвенным доказательством этого может служить то обстоятельство, что, например, Яндекс при ранжировании (в о том, как ранжируют сайты поисковики) совсем недавно даже выделял жирным в результатах поиска ключевики в урлах:
Таким образом, очень важно соблюдать правильный translit с русского на английский для адресов всех страниц вашего сайта. С этой целью стоит взять за основу предоставленную выше таблицу.
Также следует иметь ввиду, что при составлении URL лучше всего ограничить набор символов следующим образом: использовать только цифры (0-9), буквы в верхнем (A-Z) и нижнем (a-z) регистрах, а также тире («-») и нижнее подчеркивание («_»).
Для тех, кто имеет вебресурсы, существует простое расширение (правда, этот плагин давно не обновлялся, поэтому для вроде меня существует его более современный аналог), который обеспечивает автоматический транслит русских букв в адресе страницы, создавая при этом ЧПУ (человеко-понятные урлы).
Касательно поисковой оптимизации хотелось бы остановиться еще на одном нюансе (напоминаю, что мелочей в продвижении нет). Невзирая на то, что основным международным стандартом является на данный момент ИСО-9, транслитерация в Яндексе и Гугле имеет свои особенности.
Например, в общепринятом стандарте русская буква «х» (ха) соответствует латинской «x» (икс). Однако, Yandex в выдаче не выделяет ключевики с таким вариантом в URL (выделению жирным подлежат только те ключи, где «х» транслитерирована в «h»):
Похожая ситуация наблюдается и с Google, хотя в правилах транслитерации «империи добра» и есть некоторые различия с российским поисковиком.
Поскольку многие вебмастера и владельцы коммерческих ресурсов чуть больше ориентируются на Yandex, в последней главе я предоставлю один из онлайн сервисов, который дает возможность корректно перевести в транслит любой набор букв, соответствующий правилам «зеркала рунета».
В общем, вручную можно всегда проставить нужную литеру при составлении урла любой веб-страницы. Используя автоматический вариант в лице все того же RusToLat мы теряем некоторое время на редактирование, поскольку в настройках данного плагина есть возможность выставить только стандарт ISO-9 как самый подходящий. А в нем как раз соответствие «x» — «х».
Конечно, можно и здесь найти выход. А именно, чуточку изменить файл плагина, где определены соответствия между русским и латинским алфавитами. Для этого откройте его на редактирование (советую использовать в подобных случаях редактор Нотпад++) и замените нужные символы:
Только не забудьте удостовериться, что RusToLat настроен правильно в (там должна быть установлена кодировка ISO 9-95):
Естественно, проделывать такую операцию или нет, каждый для себя решает сам. Кстати, я был бы рад любому комментарию с вашей стороны относительно данного аспекта. Стоит ли игра свеч?
С целью добиться активного участия вашего сайта в поиске по картинкам можно использовать translit ключевых слов в самом названии файлов изображений. Для этих целей удобно применять программу Punto Switcher. После активации софта просто выделите название графического файла и нажмите сочетание Alt+Scroll Lock на клавиатуре (горячие клавиши по умолчанию в Свитчере).
Переводчики транслита онлайн
1. Прежде всего, я хотел бы сразу выполнить обещание и предоставить сервис, учитывающий правила Яндекса (подозреваю, что для поисковой системы Гугл он тоже подойдет). Это Translit-online.ru , где существует сразу несколько вариантов на выбор. На главной вкладке можно перевести онлайн любой текст для чтения длиной до 50 000 знаков:
Ниже даны настройки некоторых присущих только кириллице символов (ё, й, х, ц, щ, э), которые вызывают некоторые сложности при их преобразовании в латиницу. Так как это режим перевода для чтения, то можно настроить соответствие по вашему разумению:
А вот следующую страницу онлайн переводчика вы как раз можете использовать для перевода в translit адреса страницы вашего вебсайта с ЧПУ:
Также здесь имеется такой интересный инструмент как виртуальная клавиатура. Она позволяет набирать текст по-русски, даже если у вас нет русскоязычной раскладки. Переключив ее на английскую раскладку, вы можете печатать, используя латинские символы, которые максимально созвучны русским аналогам. Правда, предварительно необходимо установить виртуальную клавиатуру в режим «RU» с помощью кнопки «Esc»:
К примеру, для получения слова «транслитерация» нужно после выше описанных действий набрать на английском «t-r-a-n-s-l-i-t-e-r-a-c-i», а для вывода в текстовое поле буквы «я» надо нажать сначала Ctrl, а потом «a».
Среди полезных фишек данного сервиса присутствует также получение варианта имени и фамилии для загранпаспорта, эта опция чрезвычайно подходит и при регистрации на важных зарубежных ресурсах, о чем я упоминал выше в статье. На отдельной вкладке предоставлен онлайн мультиязычный переводчик с русского и обратно.
2. Еще одним переводчиком в транслит онлайн является известный ресурс Translit.net (бывший Транслит.ру), где свои преимущества. Тут тоже присутствует виртуальная клавиатура прямо на главной странице, которая позволяет транслитерировать текст.
Введите текст русскими буквами:
Перевести Очистить
Как будет латинскими буквами:
Зачем переводить русские буквы в латиницу?
Так как у нас Россия пока не очень богатая страна и большинство компаний не может позволить себе организовать раздачу бесплатных образцов для рекламы своего товара, то на данный момент большинство предложений о халяве приходит из за рубежа.
Так как наиболее распространённым языком является английский, то и формы заказа бесплатных пробников зачастую на английском языке.
Адресную информацию и ФИО получателя в таких формах обязательно необходимо заполнять на латинице. Так как латиницу поймут и наши почтальоны и те компании которые раздают халяву.
Если же писать на русском, то есть риск, что организаторы акци просто не захотят тратить время на перевод и понимать что там написано.
Если же писать на английском, то наши почтальоны не поймут кому и куда доставлять.
Самым лучшим вариантом является написание адреса доставки халявы и ФИО получателя халявы на латинице.
Сейчас в интернете полно разных переводчиков, но большинсто из них либо не удобные, либо их нужно долго искать.
Мы же предлагаем пользоваться постоянно нашим бесплатнып переводчиком русского текста на латиницу.
Когда будете заказывать халяву через формы написанные на английском, то пишите адрес доставки и ФИО на латинице.
Перевести русский текст на латиницу позволит наш бесплатный, простой и удобный сервис. Когда мы заказываем образцы с иностранных сайтов, то всегда так делаем и халява, не всегда конечно:-), но приходит. Значит способ правильный.
Из букв латинского алфавита получаются буквы кириллицы, иврита, белорусского, греческого, или украинского алфавитов. Этот транслитератор задумывался как сервис для русскоязычных жителей стран СНГ, находящихся за границей и желающих переписываться на родном языке. Если кто-нибудь говорит «Я пользуюсь транслитом», то всем понятно — речь идет о Translit.ru. Еще его называют просто «транслит» или «translit», «транслитератор» или «конвертер кириллицы».
Иллюстрация к транслиту
Набор текста кириллицей на латинской клавиатуре или наоборот, автоматическая перекодировка кириллицы в транслит
Убедитесь, что над окошком транслитерации включен режим «Я печатаю по-русски». Режимы переключаются клавишей F12 или ESC. Теперь просто набирайте текст латинскими буквами, в окне транслита он автоматически «переведется» в кириллицу.
Если у вас на клавиатуре русская раскладка, а вы хотите набрать текст латиницей, перейдите в режим «Я печатаю на транслите» и печатайте кириллицей, она автоматически «переведется» в латиницу.
Соответствие букв кириллицы и латиницы можно увидеть чуть выше окна транслитерации. Если вас не устраивают правила транслитерации, установленные по умолчанию, вы можете настроить собственные.
Набор текста в других алфавитах
Над таблицей соответствия алфавитов выберите в меню язык, на котором вам нужно набрать текст, и пользуйтесь транслитом так же, как для преобразования букв латинского алфавита в кириллицу.
Кроме того, выбрать язык можно, кликнув мышкой на название языка в самом верху страницы справа.
Персональная настройка правил транслитерации
Виртуальная клавиатура и набор текста «слепым методом» на компьютерах без поддержки нужного языка
Ссылка русская клавиатура наверху слева в оранжевом поле включает воображаемую, или виртуальную, русифицированную клавиатуру. Вы можете выбрать любую удобную вам раскладку букв: «йцукен», «яверты» и др.
Тематические материалы:
Обновлено: 23.12.2020
103583
Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter
Транслитерация URL для EPiServer CMS 10
Некоторое время назад мы создали веб-сайт с версией на китайском языке, и у нас было несколько проблем с не очень красивыми сегментами URL. Мне потребовалось время, чтобы понять, что то, что я искал, называется транслитерацией. Я реализовал действительно хакерский способ изменения сегмента URL-адреса, создаваемого EPiServer, чтобы я мог ввести свое транслитерированное имя страницы вместо имени страницы на китайском языке.
Теперь в CMS 10 старый класс UrlSegment был удален, и вместо него у нас есть IUrlSegmentGenerator, IUrlSegmentCreator и IUrlSegmentLocator, вы можете узнать больше об этом в примечании к выпуску CMS-3824.
Реализации по умолчанию для этих интерфейсов являются внутренними, так что расширять их по-прежнему непросто, но я реализовал транслитерирующий UrlSegmentGenerator и поменял реализацию, так что вам не нужно.
Итак, что такое транслитерация и почему это важно?
Допустим, у нас есть страница с именем «伤寒 论 勘误» (я не знаю, что это значит, это просто какой-то китайский текст, который я скопировал). По умолчанию UrlSegmentGenerator будет выдавать URL-адрес «-», поскольку все символы, кроме буквенно-цифровых, удаляются, поэтому единственное, что остается, — это символ пробела в имени.
При использовании транслитерации китайские иероглифы преобразуются в их буквенно-цифровые версии, поэтому та же входная строка «伤寒 论 勘误» преобразуется в «Shang Han Lun Kan Wu», а Генератор транслитерации UrlSegmentGenerator затем создает URL-адрес «shang-han-lun- кан-ву «.
Конечно, я не знаю китайского, поэтому не могу проверить, что это на 100% правильно. Но я знаю, что «шан-хан-лунь-кан-ву» — лучшее представление, чем «-», поскольку три страницы на китайском языке в одном и том же месте будут иметь URL-адреса «-», «-1» и « -2 «с использованием генератора по умолчанию.
Этот подход должен работать для всех языков, не только для китайского, но вам придется протестировать его самостоятельно. Если вы обнаружите какие-либо ошибки, сообщите нам об этом, отправив запрос на перенос.
Код доступен по адресу https://github.com/creunaab/EPi.UrlTransliterator, и пакет с таким же именем вскоре должен быть доступен в фиде NuGet EPiServer.
28 октября 2016 г.
Руководство по структуре URL-адресов
- Анатомия URL-адресов
- Многоязычные структуры URL-адресов
- Достоинства каждого подхода
- Рекомендации по URL-адресам для определенных стран
Международное и многоязычное SEO, возможно, является одной из наиболее сложных дисциплин в SEO переводить.
Об этом свидетельствует количество веб-сайтов с ошибками hreflang, а также количество распространенных заблуждений.
Хотя есть решения о выборе языков и стран для таргетинга, принимая во внимание более широкие бизнес-факторы, необходимо принять технические решения, одним из которых является международная настройка ваших структур URL-адресов.
Анатомия URL-адресов
В этой статье я буду ссылаться на URL-адреса (универсальный указатель ресурсов), URI (универсальные идентификаторы ресурсов) и URN (универсальные имена ресурсов).Разницу можно пояснить на диаграмме ниже:
- URL-адрес может использоваться только для описания полного (или абсолютного), содержащего схему, хост и путь.
- URN можно описать только для описания пути.
- Все является URI.
Объявление
Продолжить чтение ниже
Короче говоря, все URN и URL-адреса являются URI, но не все URI являются URL-адресами.
Многоязычные структуры URL-адресов
Существует пять основных способов настройки веб-сайта с точки зрения структур URL-адресов для международного SEO.Это:
- gTLD с подпапками
- gTLD с поддоменами
- Различные ccTLD для корневого домена
- gTLD с параметрами
- Различные домены целиком
Хотя есть ряд статей, в которых рассматриваются плюсы и минусы каждой реализации Метод, о некоторых из которых я расскажу позже, также существуют ограничения вашего технологического стека.
Если вы, например, используете Shopify, вам нужно будет настроить новые витрины Shopify для каждой международной версии (если вы не хотите использовать плагин для перезаписи валют и цен с помощью JavaScript).
Это означает, что вам, вероятно, придется использовать разные ccTLD или домены при внедрении hreflang через жидкость темы Shopify.
Достоинства каждого подхода
Вы можете добиться успеха с помощью любого из пяти вышеупомянутых методов реализации, поскольку существует большое количество переменных, которые влияют на успех многоязычной SEO-кампании — это лишь одна из них.
Реклама
Продолжить чтение ниже
Различные ccTLD
Они посылают самые сильные сигналы поисковым системам о том, на какую страну нацелен таргетинг.Например, domain.fr — сильный указатель на Францию.
Этот метод зачастую дороже в обслуживании (поскольку он поддерживает несколько доменов), и каждый из них будет иметь свой собственный профиль обратных ссылок, который нужно создавать и поддерживать.
На протяжении многих лет некоторые ccTLD (например, .co и .ax) использовались в немеждународных целях в качестве окончания слов.
Например, bron.co и beesw.ax могут выглядеть разумно с точки зрения маркетинга и бренда, но на самом деле они являются ccTLD для Колумбии и Аландских островов.
Субдомен и подкаталог
Не желая вновь разжечь дебаты по поисковой оптимизации как старые, как время, использование gTLD с субдоменом или подкаталогом маршрута является жизнеспособной реализацией для международного SEO. Оба были реализованы «в дикой природе» с хорошим успехом.
CNN и Hotels.com являются примерами поддоменов, используемых для многоязычных структур URL, а BeatsByDre и Imperva Incapsula — примерами подкаталогов.
По опыту я добился успеха с обоими методами реализации, но вот более подробный анализ дебатов о субдоменах и подпапках, проведенный Дженни Халас.
С точки зрения разработки, вы можете сопоставить другие платформы и базы данных с субдоменом или обратным прокси-сервером в подпапку.
Это снова зависит от ограничений вашего технологического стека, и и то, и другое может быть достигнуто с помощью периферийного SEO и пользовательских работников для обработки либо сопоставления, либо обратного прокси.
Параметры
Здесь к домену добавляется параметр URL? Lang = fr или аналогичный.
Хотя это может сработать, это метод реализации, который я рекомендую меньше всего, поскольку ссылки на него неудобны для пользователя.
Другой домен целиком
Подобно другому подходу ccTLD, использование разных доменов может быть плодотворной международной стратегией SEO, особенно если ваш домен не является вашей торговой маркой.
Хорошим примером бизнеса, который выиграет от такого подхода, является британский розничный бренд B&Q, который использует доменное имя diy.com (поскольку они занимаются розничной торговлей своими руками).
Объявление
Продолжить чтение ниже
DIY (Do It Yourself) может не переводиться как непосредственно на другие языки, поэтому это может быть кандидатом для использования другого домена в целом.
Рекомендации по использованию URL для некоторых стран
При выборе исходной структуры URL важно также тщательно изучить и принять во внимание культурные различия и нюансы не только поисковых систем, не относящихся к Google, но и различных пользовательских баз.
URL Лучшие методы для Японии
Нет никаких причинно-следственных доказательств того, что наличие специфичного для Японии ccTLD (например, .co.jp) дает какое-либо преимущество перед рейтингом в Google Japan, goo.ne.jp или Yahoo.
При составлении ваших URL-адресов для Японии и для помощи в локализации вы должны использовать японские символы в своих URN.
Например, если вы американская туристическая компания, нацеленная на японский рынок с отелями для бронирования, ваши URL-адреса могут выглядеть примерно так:
travel-usa.com/wisconsin/ 旅行 /
旅行 будучи слово рёкоу на иероглифах. В Японии используется несколько алфавитов, включая кандзи, хирагана и катакана.
Пользователи в Японии обычно вводят латиницу перед преобразованием своего поискового запроса в предпочтительный стиль письма. Хирагана — самый распространенный алфавит, используемый в Японии, в то время как катакана часто используется для иностранных слов.
Объявление
Продолжить чтение ниже
Пока ваши URL-адреса имеют кодировку UTF-8, японские символы будут отображаться в результатах поиска, если они правильно отформатированы.
Рекомендации по URL-адресам для России и Яндекса
В отличие от Google, Яндекс ценит ключевые слова, включенные в путь, хотя важно, чтобы они не использовались в качестве «спама».
Еще один частый вопрос для Яндекса — использование кириллицы в URL-адресах при таргетинге на Россию. Официальная подпись Google по этому поводу гласит:
«[W] e (Google) может сканировать и индексировать нелатинские URL-адреса в обычном режиме.”
Хорошим примером этого в реальной жизни является русская версия Википедии, в которой используются кириллические пути:
Русская страница Википедии для Компьютер (Компьютер)Однако, когда вы копируете и вставляете URL за пределами в браузере кириллица форматируется неправильно, и вместо этого вы получаете неработающий путь:
Объявление
Продолжить чтение ниже
https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0% BC% D0% BF% D1% 8C% D1% 8E% D1% 82% D0% B5% D1% 80
Но когда вы вставляете его обратно в браузер, например Chrome или YaBrowser, он работает и форматируется.
URL Лучшие методы для Китая и Baidu
Baidu работает иначе, чем Google, и имеет ряд отличий от Google. То, как он обрабатывает URL-адреса, и то, что Baidu определяет как «дружественные» URL-адреса, также немного отличается от Googles.
При использовании Baidu любой ценой следует избегать использования URL-адресов с параметрами, поскольку у Baidu могут возникнуть проблемы при их сканировании. Как и в случае с Google, лучше всего использовать описательный URN.
В отличие от Японии, также не рекомендуется использовать китайские символы в URL.Это связано с тем, что некоторые китайские символы имеют проблемы с кодированием, что может привести к нечитаемым символам в пути URI.
Это вызовет проблемы при сканировании Baidu-Spider и обнаружении содержимого в URI. Однако вы можете заменить китайские иероглифы на пиньинь.
Реклама
Продолжить чтение ниже
Дополнительные ресурсы:
Изображение предоставлено
Все скриншоты сделаны автором, март 2019 г.
Как транслитерировать ссылки и имена файлов в WordPress
Начнем с теории.URL означает Uniform Resource Locator адреса веб-сайта в Интернете. Обычно адреса веб-сайтов представляют собой набор символов, написанных на самых популярных языках. Однако латинские URL-адреса более популярны. Это объясняет, почему вам всегда следует транслитерировать ссылки и имена файлов.
Каких URL-адресов следует избегатьПравильные URL показывают пользователю, что это именно та информация, которую он искал. Имеется в виду актуальная информация. Google использует релевантные URL-адреса как один из факторов ранжирования в результатах поиска.Однако многие владельцы веб-сайтов игнорируют основные правила определения URL. Обычно это происходит либо из-за недостатка знаний, либо из-за того, что владельцы веб-сайтов делегируют этот процесс CMS.
Пример:
Конечно, CMS может автоматически подставлять URL. Но эти адреса совершенно бесполезны для SEO. Никто не сомневается, что URL-адреса должны быть понятными. В приведенном выше примере пользователь видит хаотичный набор символов и не может его понять.
Как определить понятный URL:
- Используйте ключевые слова (слова или фразы) в заголовках или заголовках SEO.
- Идеальный URL-адрес состоит из 3-5 слов.
- Используйте только строчные буквы. В противном случае сообщение не будет проиндексировано.
- Технически можно использовать кириллические URL-адреса — кириллические адреса понятны пользователям и отображаются корректно. Но лучше транслитерировать ссылки, так как поисковые системы представляют кириллические ссылки следующим образом: один символ кириллицы равен шести символам. Именно поэтому владельцы сайтов с кириллическим покрытием транслитерируют ссылки и имена файлов в WordPress.
- Не тратьте время на заполнение URL-адресов вручную. Есть много хороших плагинов, которые могут транслитерировать ссылки и текст. Перейдите в репозиторий WordPress, чтобы найти наиболее подходящий. Они автоматически конвертируют URL-адреса в латиницу. И Clearfy — один из плагинов оптимизации.
Это расширение используется не только для транслитерации ссылок в WordPress, но и для того, чтобы следовать рекомендациям по эффективному SEO.
Как транслитерировать ссылки в WordPress с помощью плагинаЗагрузите и установите плагин.
Открыть Настройки => Clearfy меню
=> SEO => Транслитерация .
Есть несколько способов транслитерировать ссылки из плагина.
Активируйте первую опцию Используйте транслитерацию , нажав ON. Теперь все URL для новых сообщений будут переведены с кириллицы на латиницу.
Разработчики Clearfy также предоставили вам инструменты для преобразования имен файлов.Если вы не переименовали файлы с кириллицы на латиницу перед загрузкой на сайт, плагин может сделать это за вас. Просто активируйте опцию ниже:
Если вы используете другой плагин для транслитерации ссылок, активируйте Принудительная транслитерация в Clearfy, чтобы наш плагин выполнял свою работу правильно.
Преобразование имен файлов в нижний регистр, потому что иногда вы загружаете файлы со смешанным регистром (нижний и верхний регистры).
Пример: Пол Аткинсон.jpg
Следующий вариант очень полезен. Он перенаправляет со старых кириллических URL на новые латиницей. Старые ссылки (из социальных сетей и т. Д.) Продолжают привлекать трафик на сайт, и теперь вы определенно не захотите терять пользователей или понижать позиции сайта в рейтинге.
Не забудьте транслитерировать ссылки для существующих сообщений, категорий и т. Д. Изменения не повлияют на старые файлы. Но вам обязательно стоит конвертировать существующие сообщения. Активируйте соответствующую опцию в меню плагина и транслитерируйте ссылки на латиницу.
Вы можете расширить существующую базу символов транслитерации на своем веб-сайте и создать собственные правила. Небольшой пример для русского: Ё = Jo, ё = jo, = Zh, = zh. Важно соблюдать языковые правила транслитерации. Просто введите пару значений и разделите их запятыми.
ЗаключениеМы показали вам, как автоматически транслитерировать ссылки в WordPress.Имейте в виду, что понятный URL-адрес повышает лояльность пользователей. Лучше избегать использования кириллических символов в URL-адресах, так как каждый кириллический символ будет преобразован поисковыми системами в шесть символов. Подведем итог: понятные URL-адреса и транслитерация ссылок дают отличный результат и повышают узнаваемость вашего сайта. Конечно, вы можете придерживаться изменения URL-адресов вручную. Но какой в этом смысл, если вы можете использовать Clearfy?
Справочник переводчикаV3.0 — Когнитивные службы Azure
- Читать 9 минут
В этой статье
Что нового?
Версия 3 переводчика предоставляет современный веб-API на основе JSON.Он повышает удобство использования и производительность за счет объединения существующих функций в меньшее количество операций и предоставляет новые функции.
- Транслитерация для преобразования текста на одном языке из одного скрипта в другой.
- Перевод на несколько языков одним запросом.
- Определение языка, перевод и транслитерация в одном запросе.
- Словарь для поиска альтернативных переводов термина, обратных переводов и примеров, показывающих термины, используемые в контексте.
- Более информативные результаты определения языка.
Базовые URL-адреса
Microsoft Translator обслуживается из нескольких центров обработки данных. В настоящее время они расположены в 10 регионах Azure:
- Северная и Южная Америка: Восточная часть США, Центральная южная часть США, Западная Центральная часть США и Западная часть США 2
- Азиатско-Тихоокеанский регион: Южная Корея, Восточная Япония, Юго-Восточная Азия и Восточная Австралия
- Европа: Северная Европа, Западная Европа, Швейцария Северная 1,2 и Швейцария Западная 1,2
Запросы к Microsoft Translator в большинстве случаев обрабатываются центром обработки данных, ближайшим к тому, где был создан запрос.В случае сбоя центра обработки данных запрос может быть перенаправлен за пределы географии Azure.
Чтобы запрос обрабатывался в определенной географической зоне Azure, измените глобальную конечную точку в запросе API на желаемую географическую конечную точку:
Описание | Лазурная география | Базовый URL (географическая конечная точка) |
---|---|---|
Лазурный | Глобальный (нерегиональный) | api.cognitive.microsofttranslator.com |
Лазурный | США | api-nam.cognitive.microsofttranslator.com |
Лазурный | Европа | api-eur.cognitive.microsofttranslator.com |
Лазурный | Азиатско-Тихоокеанский регион | api-apc.cognitive.microsofttranslator.com |
1 Клиент с ресурсом, расположенным на севере Швейцарии или на западе Швейцарии, может гарантировать, что их запросы Text API обслуживаются в Швейцарии.Чтобы гарантировать, что запросы обрабатываются в Швейцарии, создайте ресурс переводчика в «регионе ресурсов» «Северная Швейцария» или «Западная Швейцария», а затем используйте настраиваемую конечную точку ресурса в своих запросах API. Например: если вы создаете ресурс переводчика на портале Azure с параметром «Регион ресурсов» как «Северная Швейцария», а имя вашего ресурса — «my-ch-n», тогда ваша настраиваемая конечная точка будет «https: // my-ch-n». ognitiveservices.azure.com ». Пример запроса на перевод:
// Передайте секретный ключ и регион, используя заголовки, в настраиваемую конечную точку
curl -X POST "my-ch-n.ognitiveservices.azure.com/translator/text/v3.0/translate?to=fr "\
-H "Ocp-Apim-Subscription-Key: xxx" \
-H "Ocp-Apim-Subscription-Region: север Швейцарии" \
-H "Content-Type: application / json" \
-d "[{'Текст': 'Привет'}]" -v
2 Пользовательский переводчик в настоящее время недоступен в Швейцарии.
Аутентификация
Подпишитесь на мультисервисные службы Translator или Cognitive Services в Azure Cognitive Services и используйте свой ключ подписки (доступный на портале Azure) для проверки подлинности.
Есть три заголовка, которые можно использовать для аутентификации подписки. В этой таблице описано, как каждый из них используется:
Заголовки | Описание |
---|---|
Ocp-Apim-Subscription-Key | Используйте с подпиской Cognitive Services, если вы передаете секретный ключ . Значение представляет собой секретный ключ Azure для вашей подписки на Translator. |
Авторизация | Используйте с подпиской Cognitive Services, если вы передаете токен аутентификации. Значением является токен на предъявителя: На предъявителя <токен> . |
Ocp-Apim-Subscription-Region | Использование с мультисервисным и региональным переводчиком Cognitive Services. Значение — это регион мультисервисного или регионального ресурса переводчика. Это значение является необязательным при использовании глобального ресурса переводчика. |
Секретный ключ
Первый вариант — аутентификация с использованием заголовка Ocp-Apim-Subscription-Key
.Добавьте в свой запрос заголовок Ocp-Apim-Subscription-Key:
.
Аутентификация на глобальном ресурсе
Когда вы используете глобальный ресурс переводчика, вам необходимо включить один заголовок для вызова транслятора.
Заголовки | Описание |
---|---|
Ocp-Apim-Subscription-Key | Значение представляет собой секретный ключ Azure для вашей подписки на Translator. |
Вот пример запроса на вызов переводчика с использованием глобального ресурса переводчика
// Передаем секретный ключ с помощью заголовков
curl -X POST "https: // api.когнитивный.microsofttranslator.com/translate?api-version=3.0&to=es "\
-H "Ocp-Apim-Subscription-Key: <ваш-ключ>" \
-H "Content-Type: application / json" \
-d "[{'Text': 'Здравствуйте, как вас зовут?'}]"
Аутентификация на региональном ресурсе
При использовании ресурса регионального переводчика. Есть 2 заголовка, которые нужно вызвать Переводчику.
Заголовки | Описание |
---|---|
Ocp-Apim-Subscription-Key | Значение представляет собой секретный ключ Azure для вашей подписки на Translator. |
Ocp-Apim-Subscription-Region | Значение — регион ресурса переводчика. |
Вот пример запроса на вызов переводчика с использованием регионального ресурса переводчика
// Передаем секретный ключ и регион с помощью заголовков
curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&to=es" \
-H "Ocp-Apim-Subscription-Key: <ваш-ключ>" \
-H "Ocp-Apim-Subscription-Region: <ваш-регион>" \
-H "Content-Type: application / json" \
-d "[{'Text': 'Здравствуйте, как вас зовут?'}]"
Аутентификация с мультисервисным ресурсом
Когда вы используете мультисервисный ресурс когнитивной службы.Это позволяет использовать один секретный ключ для аутентификации запросов для нескольких служб.
Когда вы используете мультисервисный секретный ключ, вы должны включить в свой запрос два заголовка аутентификации. Есть 2 заголовка, которые нужно вызвать Переводчику.
Заголовки | Описание |
---|---|
Ocp-Apim-Subscription-Key | Значение представляет собой секретный ключ Azure для вашего мультисервисного ресурса. |
Ocp-Apim-Subscription-Region | Значение — это регион мультисервисного ресурса. |
Регион требуется для подписки на мультисервисный текстовый API. Выбранный вами регион является единственным регионом, который можно использовать для перевода текста при использовании ключа мультисервисной подписки, и он должен быть тем же регионом, который вы выбрали при подписке на мультисервисную подписку через портал Azure.
Доступные регионы: австралия-восток
, бразильский юг
, канадский центральный
, центральная индия
, централус
, центральная юап
, восточная азия
, восточная часть
, восточная часть 9044,
япония
восточная часть 2
, koreacentral
, northcentralus
, northeurope
, southcentralus
, southeastasia
, uksouth
, westcentralus
, westeurope
и западная часть , westcentralus
, westurope , западная часть
, западная
Если вы передаете секретный ключ в строке запроса с параметром Subscription-Key
, то вы должны указать регион с параметром запроса Subscription-Region
.
Аутентификация с помощью токена доступа
В качестве альтернативы вы можете обменять свой секретный ключ на токен доступа. Этот токен включается в каждый запрос в виде заголовка Authorization
. Чтобы получить токен авторизации, отправьте запрос POST
по следующему URL-адресу:
Тип ресурса | URL службы аутентификации |
---|---|
Глобальный | https: // api.ognitive.microsoft.com/sts/v1.0/issueToken |
Региональный или мультисервисный | https: // <ваш-регион> .api.cognitive.microsoft.com / sts / v1.0 / issueToken |
Вот примеры запросов на получение токена по секретному ключу:
// Передаем секретный ключ, используя заголовок
curl --header 'Ocp-Apim-Subscription-Key: ' --data "" 'https://api.cognitive.microsoft.com/sts/v1.0/issueToken'
// Передаем секретный ключ с помощью параметра строки запроса
curl --data "" 'https: // api.ognitive.microsoft.com/sts/v1.0/issueToken?Subscription-Key= '
Успешный запрос возвращает закодированный маркер доступа в виде обычного текста в теле ответа. Действительный токен передается в службу переводчика как токен-носитель в авторизации.
Авторизация: предъявитель
Маркер аутентификации действителен в течение 10 минут. Токен следует использовать повторно при выполнении нескольких вызовов Переводчика. Однако, если ваша программа делает запросы к Переводчику в течение длительного периода времени, ваша программа должна запрашивать новый токен доступа через определенные промежутки времени (например, каждые 8 минут).
Поддержка виртуальной сети
Служба переводчика теперь доступна с возможностями виртуальной сети (VNET) во всех регионах общедоступного облака Azure. Чтобы включить виртуальную сеть, см. Раздел Настройка виртуальных сетей Azure Cognitive Services.
После включения этой возможности вы должны использовать настраиваемую конечную точку для вызова переводчика. Вы не можете использовать глобальную конечную точку переводчика («api.cognitive.microsofttranslator.com») и не можете пройти аутентификацию с помощью токена доступа.
Вы можете найти настраиваемую конечную точку после создания ресурса переводчика и разрешения доступа из выбранных сетей и частных конечных точек.
Заголовки | Описание |
---|---|
Ocp-Apim-Subscription-Key | Значение представляет собой секретный ключ Azure для вашей подписки на Translator. |
Ocp-Apim-Subscription-Region | Значение - регион ресурса переводчика. Это значение является необязательным, если ресурс - глобальный |
Вот пример запроса на вызов переводчика с использованием настраиваемой конечной точки
// Передаем секретный ключ и регион с помощью заголовков
curl -X POST "https: // <ваш-пользовательский-домен>.ognitiveservices.azure.com/translator/text/v3.0/translate?api-version=3.0&to=es "\
-H "Ocp-Apim-Subscription-Key: <ваш-ключ>" \
-H "Ocp-Apim-Subscription-Region: <ваш-регион>" \
-H "Content-Type: application / json" \
-d "[{'Text': 'Здравствуйте, как вас зовут?'}]"
ошибок
Стандартный ответ об ошибке - это объект JSON с парой имя / значение с именем error
. Значение также является объектом JSON со свойствами:
-
код
: код ошибки, определенный сервером. -
сообщение
: строка, дающая удобочитаемое представление ошибки.
Например, клиент с бесплатной пробной подпиской получит следующую ошибку после исчерпания бесплатной квоты:
{
"ошибка": {
«код»: 403001,
"message": "Операция не разрешена, потому что подписка превысила свою бесплатную квоту."
}
}
Код ошибки - это 6-значное число, объединяющее 3-значный код состояния HTTP, за которым следует 3-значное число для дальнейшей классификации ошибки.Коды общих ошибок:
Код | Описание |
---|---|
400000 | Один из входов запроса недействителен. |
400001 | Недопустимый параметр "scope". |
400002 | Недопустимый параметр "категория". |
400003 | Спецификатор языка отсутствует или недействителен. |
400004 | Спецификатор целевого сценария («Для сценария») отсутствует или недействителен. |
400005 | Введенный текст отсутствует или недействителен. |
400006 | Недопустимая комбинация языка и алфавита. |
400018 | Спецификатор исходного сценария («Из сценария») отсутствует или недействителен. |
400019 | Один из указанных языков не поддерживается. |
400020 | Недопустимый один из элементов массива входящего текста. |
400021 | Параметр версии API отсутствует или недействителен. |
400023 | Недопустимая одна из указанных языковых пар. |
400035 | Исходный язык (поле «От») недействителен. |
400036 | Целевой язык (поле «Кому») отсутствует или недействителен. |
400042 | Одна из указанных опций (поле «Опции») недействительна. |
400043 | Идентификатор трассировки клиента (поле ClientTraceId или заголовок X-ClientTranceId) отсутствует или недействителен. |
400050 | Введенный текст слишком длинный. Посмотреть лимиты запросов. |
400064 | Параметр «перевод» отсутствует или недействителен. |
400070 | Количество целевых скриптов (параметр ToScript) не соответствует количеству целевых языков (параметр To). |
400071 | Недопустимое значение для TextType. |
400072 | Массив входящего текста содержит слишком много элементов. |
400073 | Недопустимый параметр сценария. |
400074 | Текст запроса недействителен JSON. |
400075 | Недопустимая комбинация языковой пары и категории. |
400077 | Превышен максимальный размер запроса. Посмотреть лимиты запросов. |
400079 | Пользовательская система, запрошенная для перевода с языка и на язык, не существует. |
400080 | Транслитерация не поддерживается для языка или сценария. |
401000 | Запрос не авторизован, потому что учетные данные отсутствуют или недействительны. |
401015 | «Учетные данные предоставлены для Speech API. Для этого запроса требуются учетные данные для Text API. Используйте подписку на Translator.» |
403000 | Операция запрещена. |
403001 | Операция запрещена, поскольку подписка превысила бесплатную квоту. |
405000 | Метод запроса не поддерживается для запрошенного ресурса. |
408001 | Запрошенная система перевода находится в стадии подготовки. Повторите попытку через несколько минут. |
408002 | Истекло время ожидания запроса во входящем потоке. Клиент не отправил запрос в течение времени, которое сервер был готов ждать. Клиент может повторить запрос без изменений в любое время. |
415000 | Заголовок Content-Type отсутствует или недействителен. |
429000, 429001, 429002 | Сервер отклонил запрос, поскольку клиент превысил лимит запросов. |
500000 | Произошла непредвиденная ошибка. Если ошибка сохраняется, сообщите об этом с указанием даты / времени ошибки, идентификатора запроса из заголовка ответа X-RequestId и идентификатора клиента из заголовка запроса X-ClientTraceId. |
503000 | Сервис временно недоступен.Пожалуйста, попробуйте еще раз. Если ошибка сохраняется, сообщите об этом с указанием даты / времени ошибки, идентификатора запроса из заголовка ответа X-RequestId и идентификатора клиента из заголовка запроса X-ClientTraceId. |
Метрики
Метрикипозволяют просматривать информацию об использовании и доступности переводчика на портале Azure в разделе метрик, как показано на снимке экрана ниже. Дополнительные сведения см. В разделе «Данные и показатели платформы».
В этой таблице перечислены доступные метрики с описанием того, как они используются для отслеживания вызовов API перевода.
Метрики | Описание |
---|---|
Всего звонков | Общее количество вызовов API. |
TotalTokenCalls | Общее количество вызовов API через службу токенов с использованием токена аутентификации. |
SuccessfulCalls | Количество успешных звонков. |
TotalErrors | Количество вызовов с ошибкой ответа. |
Заблокированные вызовы | Количество вызовов, для которых превышен предел скорости или квоты. |
ServerErrors | Количество вызовов с внутренней ошибкой сервера (5XX). |
ClientErrors | Количество вызовов с ошибкой на стороне клиента (4XX). |
Задержка | Продолжительность выполнения запроса в миллисекундах. |
Персонажи переведены | Общее количество символов во входящем текстовом запросе. |
(Руководство пользователя MODS, версия 3, схема описания объекта метаданных, стандарты, Библиотека Конгресса)
Руководство по применению
Верх
Субэлемент:
Руководство по применению
Этот подэлемент определяет физический институциональный дом ресурса.
Информация об особых атрибутах
тип
Определение
Обозначает тип записанного местоположения.
Заявка
Используется для обозначения различных типов местоположений, если требуется более конкретная информация, например настоящее, открытие, бывшее, создание.
Верх
Субэлемент:
Определение | Отметка на полке или другое обозначение стеллажа, указывающее идентификатор местоположения копии. |
---|---|
Атрибуты | Общий: Связанные с языком: lang; xml: lang; сценарий; транслитерация Конкретные: Нет |
Субэлементы | Нет |
Руководство по эксплуатации
Если более подробная информация об авуарах дается на уровне элемента, используйте
Верх
Субэлемент:
Руководство по применению
Рекомендуется, чтобы все URL-адреса, используемые с элементом
Элемент
Использование атрибута доступа рекомендуется для всех экземпляров
Используйте атрибут примечание только тогда, когда другие атрибуты ( доступ , использование или displayLabel ) не подходят.
Информация об особых атрибутах
датаПоследний доступ
Определение
Предназначен для обозначения даты удаленного доступа к цифровому ресурсу.
Заявка
Этот атрибут может быть полезен пользователю из-за непостоянства веб-содержимого.Для использования с этим атрибутом не указана схема кодирования, однако рекомендуется структурированная дата.
примечание
Определение
Включает примечания, связанные со ссылкой, включенной в качестве значения элемента
Заявка
Этот атрибут обычно представляет собой произвольный текст.
доступ
Определение
Указывает тип ресурса, к которому пользователь получит доступ, перейдя по ссылке URL.
Заявка
Этот атрибут особенно полезен для обеспечения флага в контексте сбора метаданных поставщиками услуг OAI.Следующие значения могут использоваться с атрибутом доступа:
- предварительный просмотр - указывает ссылку на эскиз или фрагмент текста.
- необработанный объект - указывает прямую ссылку на описанный объект (например, документ jpg или pdf). Используется только тогда, когда объект представлен одним файлом.
- объект в контексте - указывает ссылку на объект в контексте его среды (со связанными метаданными, навигацией и т. Д.)
Верх
Субэлемент:
Определение | Дополнительная конкретная сводная информация об элементе. |
---|---|
Атрибуты | Нет |
Субэлементы | <копия информации> |
Руководство по эксплуатации
Информация Holdings состоит из информации о конкретном экземпляре ресурса, информации о конкретном местонахождении в учреждении, информации о версии и другой информации, характерной для данного учреждения.
Верх
Субэлемент:
Руководство по применению
Верх
Субэлемент:
<местонахождение>
[Пример связанных данных - со ссылкой на id.loc.gov]
<местонахождение>
[атрибут xlink - со ссылкой на веб-страницу учреждения, представленную значением]
<местонахождение>
<местонахождение>
<местонахождение>
<местонахождение>
<местонахождение>
<местонахождение>
<местонахождение>
<местонахождение>
<местонахождение>
<местонахождение>
<проведение xmlns: iso20775 = "info: ofi / fmt: xml: xsd: iso20775" xsi: schemaLocation = "info: ofi / fmt: xml: xsd: iso20775 http: // www.loc.gov/standards/iso20775/N130_ISOholdings_v6_1.xsd ">
<текст> http: // www.worldcat.org/wcpa/oclc/15550774? page = frame & url =% 3D% 3FUTF-
8% 3FB% FaHR0cDovL2NhdGFsb2cucGxzaW5mby5vcmcvc2VhcmNoL2kwMTk1MDM4NjMw% 3F% 3F% 3FUTF-
& title = приложение Menlo + Park + Public Library + Public Library% OCLC + Staff + использовать
<КопииСводка>
<местонахождение>
<местонахождение>
<местонахождение>
Верх
КАРТЫ
Картографирование в формате MARC (библиографическое)
См. Отображение MARC в MODS для элемента
Карта Дублинского ядра
См. MODS to Dublin Core Metadata Element Set Mapping .
Верх
Последнее обновление: 19 марта 2021 г.
Пример транслитерации с греческого на греческий. | Скачать научную диаграмму
Контекст 1
... Механизм транслитерации выполняет следующие шаги: a) Он заменяет однозначные символы слова соответствующими символами греческого алфавита. Например: «геники» (что означает «общий») полу-транслитерируется как «geνiκi». б) Выходные данные предыдущей операции обрабатываются по буквам в возрастающем порядке, образуя древовидную структуру (рисунок 2).Используя правила для неоднозначных символов, каждая буква представлена всеми возможными способами. c) На каждом уровне (букве) выполняется поиск в словаре. Если данная подстрока является префиксом слова, мы переходим на следующий уровень. В противном случае эта ветвь завершается и ...
Контекст 2
... Как только вышеуказанный процесс завершается, возвращаются выходные слова. В большинстве случаев возвращается только одно слово. Особый вопрос, который необходимо решить, - это транслитерация двух латинских букв в один греческий («ph» «φ») и обратный («ι» «οι»).В этом направлении мы используем аналогичную двухбуквенную обработку только в определенных позициях в зависимости от того, содержит ли слово такие символы. Очевидно, что использование описанного выше метода значительно снижает вычислительную нагрузку по сравнению с методами, которые требуют создания всех возможных транслитераций. На рисунке 2 схематично показан пример транслитерации, демонстрирующий значительное сокращение требуемых транслитераций со 150 до 7. Сложность зависит от длины входной строки и количества возможных транслитераций на каждом этапе.Кроме того, правила орфографии также применяются для извлечения ключевых слов с ошибками, например, попытки с двойными согласными. Например, грамматы (означающие буквы) также пробуются как грамматы, чтобы извлечь их правильную форму (γράμματα). Таким образом мы избегаем использования Speller. Более того, чтобы создать словарь с греческого языка на греческий, содержащий обычные ключевые слова URL, мы сохраняем локально каждое успешно односторонне транслитерированное слово. Таким образом, перед применением вышеуказанного метода выполняется поиск слова в словаре транслитерации, что дополнительно снижает вычислительную нагрузку.Представив функциональные возможности каждой подсистемы, которую интегрирует наш модуль идентификации ключевых слов URL, мы приступаем к описанию процесса идентификации ключевых слов. Система извлечения ключевых слов состоит из следующих этапов: a) URL-адрес делится на свои основные компоненты в соответствии с протоколом URI (схема: // host / path-elements / document. Extension). б) Часть хост-домен разделяется по появлению знаков препинания. c) Для каждого токена применяется транслитерация. Сначала выполняется поиск в созданном греко-русско-греческом словаре, и если слово не найдено, активируется машина транслитерации.г) Выполняется параллельная транслитерация, токенизация. Возвращается каждое точное совпадение, и процесс продолжается до следующего символа. На рисунке 3 схематично показан процесс идентификации ключевого слова URL. V. ЭКСПЕРИМЕНТАЛЬНАЯ ОЦЕНКА В этом разделе мы обрисовываем предварительное экспериментальное исследование, которое мы провели, чтобы оценить эффективность нашего метода в точном определении значимых ключевых слов в греческих URL-адресах. Чтобы оценить цель нашего исследования, мы применили предложенный нами метод к набору образцов URL-адресов.Этот набор данных был собран вручную и состоит из 1000 различных URL-адресов, которые принадлежат разным доменным именам и содержат греческие термины. С помощью универсального поискового робота мы загрузили каждую веб-страницу, соответствующую указанным выше URL-адресам, и извлекли ее заголовок и мета-ключевые слова, то есть ключевые слова, которые авторы веб-страниц определили для описания содержимого соответствующих страниц и находятся как значения в мета-теги html. Из исходного набора данных мы смогли загрузить только 958 веб-страниц, из которых только 942 имели связанный заголовок, 547 содержали метаслова и только 400 из них имели как связанный заголовок, так и мета-слова.В тех случаях, когда в заголовке страницы или мета-словах не хватало единственной информации, которая была в нашем распоряжении, помимо содержимого страницы, был URL-адрес страницы. Для наших экспериментов мы использовали только 400 URL-адресов, которые содержали как заголовок, так и мета-слова. Мы сравнили извлеченные заголовок и мета-слова с ключевыми словами, которые наш метод идентифицировал в соответствующих URL-адресах. Чтобы оценить эффективность нашего метода в обнаружении допустимых ключевых слов в греческих URL-адресах, мы провели два эксперимента: а) один с использованием токенизатора ключевых слов поверхности, и б) один с использованием токенизатора скрытых ключевых слов.Производим точную оценку соответствия; каждое извлеченное ключевое слово ищется в заголовке или мета-ключевых словах веб-страницы. Используя токенизатор ключевых слов поверхности, 49% извлеченных ключевых слов для каждого URL-адреса были обнаружены в заголовке URL-адреса, 43% - в мета-словах, 33% - в заголовке и мета-словах и 60% - в заголовке или мета-словах. При использовании токенизатора скрытых ключевых слов результаты значительно снизились из-за большого количества ключевых слов, извлекаемых для каждого URL-адреса. Основная слабость предлагаемой нами системы заключается в том, что когда именованные объекты содержатся в греческих URL-адресах, она не может распознать их как таковые и, следовательно, неэффективна при извлечении из них ключевых слов.Как следствие, полученные результаты могут вводить в заблуждение, особенно при работе с именованными объектами, не лексикализованными в словаре. Кроме того, некоторые веб-сайты содержат в своих заголовках или мета-ключевых словах такие термины, как «Домашняя страница», «Введение», сам домен или не греческие слова, вместо того, чтобы содержать ключевые слова темы. Более того, мы должны учитывать, что греческие слова сильно изменяются. Таким образом, поскольку каждое слово может иметь множество различных форм, точное соответствие не распознает сходство слов, и результаты могут вводить в заблуждение.В свете этого наблюдения в задачу сравнения следует включить греческий лемматизатор или стеммер. Тем не менее, несмотря на несколько вышеупомянутых ситуаций, подверженных ошибкам, результаты показывают, что в целом предлагаемый нами метод может эффективно захватить значительное количество действительных ключевых слов в URL-адресах. Это в сочетании с признанным отсутствием существующих методов обнаружения ключевых слов в греческих URL-адресах подтверждает полезность и потенциал предлагаемого нами метода для организации греческого веб-контента, полностью основанного на анализе их URL-адресов.VI. ЗАКЛЮЧЕНИЕ В этой статье мы представили метод извлечения ключевых слов с упором на греческие URL-адреса. Предлагаемый нами метод состоит из двух основных подсистем: механизма транслитерации и токенизатора. Механизм транслитерации производит возможные реконструкции греческих лексем с использованием словаря для их сокращения. После транслитерации, если токен состоит из более чем одного ключевого слова, токенизатор сегментирует греческие токены на значимые ключевые слова. Основываясь на наших экспериментальных результатах, этот документ показывает, что качественные экстракторы ключевых слов для греческих веб-страниц могут быть созданы на основе только URL-адресов.Новаторский аспект нашей работы заключается в том, что мы обрабатываем неанглийские URL-адреса, особенно URL-адреса, которые содержат ключевые слова, написанные на греческом языке с использованием латинских символов. Дальнейшая работа сосредоточена на следующих вопросах, но не ограничивается ими. Обработка сокращений - серьезная проблема при обработке URL-адресов. Для этого исследования мы использовали список общепринятых сокращений. Однако мы работаем над идентификатором сокращений на основе греческих URL-адресов. Кроме того, как и в предыдущих попытках, мы обработаем путь и часть запроса URL-адреса, добавив систему, которая распознает и декомпилирует процентное кодирование.Более того, мы планируем улучшить токенизатор скрытых ключевых слов, чтобы уменьшить количество извлекаемых ключевых слов, не связанных с URL-адресом. Мы также работаем над добавлением греческого стеммера к каждому извлеченному ключевому слову и получением синонимов ключевых слов с помощью Wordnet [16], чтобы получить улучшенное соответствие между ключевыми словами URL и мета- или заголовочными ключевыми словами. Наконец, эксперименты будут повторены с использованием большего набора данных и детектора языка, чтобы распознать английские ключевые слова, которые могут содержаться в греческом языке...
Контекст 3
... пример: «геники» (что означает «общий») полу-транслитерируется в «geνiκi». б) Выходные данные предыдущей операции обрабатываются по буквам в возрастающем порядке, образуя древовидную структуру (рисунок 2). Используя правила для неоднозначных символов, каждая буква представлена всеми возможными способами. ...
Context 4
... вышеупомянутый метод, очевидно, что вычислительная нагрузка значительно снижается по сравнению с методами, которые требуют производства всех возможных транслитераций.На рисунке 2 схематично показан пример транслитерации, демонстрирующий значительное сокращение требуемых транслитераций со 150 до 7. Сложность зависит от длины входной строки и количества возможных транслитераций на каждом шаге. ...
Локализация URL-адресов для сайтов на новых языках
Приближение к структурам URL-адресов для международных поисковых систем
Google не всегда является самой доминирующей поисковой системой в каждой стране, и даже когда это так, иногда есть другие поисковые системы с высоким рынком Поделиться.Здесь мы сосредоточимся на том, как структурировать URL-адреса при таргетинге на Baidu и Яндекс.
Baidu
Baidu - самая популярная поисковая система в Китае. Китайский язык может создавать проблемы с URL-адресами, поскольку китайские символы не рекомендуются для структур URL-адресов. Поисковые системы и браузеры поддерживают символы, но они часто могут отображаться как закодированные символы, очень похожие на буквы с диакритическими знаками.
Есть две альтернативы использованию китайских иероглифов. Вы можете использовать английские слова или пиньинь.Пиньинь - это стандартная китайская система правописания для написания мандаринского китайского с использованием латинского алфавита.
Мы рекомендуем нашим клиентам использовать пиньинь для большинства слов в китайских URL-адресах и разделять слова знаком «-» так же, как и для Google. Мы рекомендуем использовать английский для простых или общеупотребительных слов, которые были бы легко понятны китайской аудитории, например, «新闻» может быть написано как «новости».
Для структур URL-адресов рекомендуется:
- Использовать короткие URL-адреса
- По возможности избегать использования динамических параметров и вместо этого выбирать статические URL-адреса
- Не использовать параметры, не подлежащие сканированию, которые включают что-либо после символа «? в URL-адресе
Яндекс
Яндекс - популярная поисковая система в России, занимающая почти 53% рынка поисковых систем.
Источник: http: //gs.statcounter.com/search-engine-market-share/all/russian-federation/#monthly-201809-201809-bar
Согласно Яндекс, «URL должен дают представление о содержании страницы. 'URL-адреса могут быть написаны кириллицей (сценарий, на котором основан русский язык), закодированы или транслитерированы латинскими буквами, как Яндекс понимает и то, и другое.