Модуль TranslitAlias

Обсуждение CMS Made Simple в России.

Moderator: iturbay

Post Reply
User avatar
wdwp
New Member
New Member
Posts: 7
Joined: Tue Dec 18, 2012 10:29 am
Location: Moscow, Russia

Модуль TranslitAlias

Post by wdwp »

В предыдущих версиях cmsms 1.9, 1.12 алиас страницы автоматически записывался латинскими буквами, соответственно адрес страницы состоял только из латинских букв. Это было удобно. В версии 2.х данный функционал был удалён. В результате приходится заполнять алиас вручную, иначе адрес страницы будет состоять из кириллицы.
Данный модуль возвращает прежний функционал. Он не вносит каких либо изменений в код движка. Скачать можно здесь:
http://dev.cmsmadesimple.org/projects/translitalias

Также форкнул и доработал несколько старых модулей, чтобы они могли работать с cmsms 2.x: MysqlDump2, FileBackup2, IPLock2.
Если есть идеи, какие ещё модули имеет смысл реанимировать, напишите здесь.
По поводу работ по cmsms пишите wdwp@ya.ru
User avatar
iturbay
Forum Members
Forum Members
Posts: 81
Joined: Mon Sep 29, 2014 5:38 am

Re: Модуль TranslitAlias

Post by iturbay »

Реально ли оживить FEU_Auth_LDAP?
User avatar
wdwp
New Member
New Member
Posts: 7
Joined: Tue Dec 18, 2012 10:29 am
Location: Moscow, Russia

Re: Модуль TranslitAlias

Post by wdwp »

Пока доделываю Ajax Made Simple и Polls Made Simple. Потом взгляну на этот.
btAdminer ещё восстановил и обновил до последней версии.
По поводу работ по cmsms пишите wdwp@ya.ru
User avatar
wdwp
New Member
New Member
Posts: 7
Joined: Tue Dec 18, 2012 10:29 am
Location: Moscow, Russia

Re: Модуль TranslitAlias

Post by wdwp »

Чтобы сделать транслит адресов для новостей, создайте такой UDT:

Code: Select all

$mod = cms_utils::get_module('TranslitAlias');
$db  = cmsms()->GetDb();
if ( !isset($params['news_url']) || $params['news_url'] == '' ) {
  $news_url = $params['news_id'] . '/' . $mod->Translit($params['title']);
  $query = 'UPDATE ' . cms_db_prefix() . 'module_news SET news_url = ? WHERE news_id = ?';
  $db->Execute($query, array($news_url, $params['news_id']));
}
И добавте его в События NewsArticleAdded и NewsArticleEdited
По поводу работ по cmsms пишите wdwp@ya.ru
User avatar
wdwp
New Member
New Member
Posts: 7
Joined: Tue Dec 18, 2012 10:29 am
Location: Moscow, Russia

Re: Модуль TranslitAlias

Post by wdwp »

Забыл добавить новые адреса в таблицу роутинга.
Исправленный UDT будет выглядеть так:

Code: Select all

$mod = cms_utils::get_module('TranslitAlias');
$db  = cmsms()->GetDb();
if ( !isset($params['news_url']) || $params['news_url'] == '' ) {
  $news_url = 'news/'.$params['news_id'].'/'.$mod->Translit($params['title']);
  $query = 'UPDATE ' . cms_db_prefix() . 'module_news SET news_url = ? WHERE news_id = ?';
  $db->Execute($query, array($news_url, $params['news_id']));
  news_admin_ops::delete_static_route($params['news_id']);
  news_admin_ops::register_static_route($news_url, $params['news_id']);
}
По поводу работ по cmsms пишите wdwp@ya.ru
Post Reply

Return to “Russian - русский”