Русские категории для phpprobid

25.07.2011
ReTweet

У сайтов на phpprobid есть одна особенность – при русификации и оформлении русских категорий в панели и на главной и других страницах сайта, русский язык не транслируется, а как бы просто убирается. Если в английской версии ссылка имеет вид сайт/Century-Antiques,category,216 , то категории на русском выводятся уже в виде сайт/–,category,230. Недоразумение вроде бы и не критичное,  но совсем не красиво в форме отображения.

Решение для преобразования есть и ниже опишем необходимые действия. Предлагаем внести изменения в файл /includes/functions_date.php. Заменить в нем всю функцию function show_date на следующее:

function sanitize_var($value){
$translation = array(
"А"=>"A","Б"=>"B","В"=>"V","Г"=>"G","Д"=>"D",
"Е"=>"E","Ё"=>"JO","Ж"=>"ZH",
"З"=>"Z","И"=>"I","Й"=>"JJ","К"=>"K","Л"=>"L",
"М"=>"M","Н"=>"N","О"=>"O","П"=>"P","Р"=>"R",
"С"=>"S","Т"=>"T","У"=>"U","Ф"=>"F","Х"=>"KH",
"Ц"=>"C","Ч"=>"CH","Ш"=>"SH","Щ"=>"SHH","Ъ"=>"'",
"Ы"=>"Y","Ь"=>"","Э"=>"EH","Ю"=>"YU","Я"=>"YA",
"а"=>"a","б"=>"b","в"=>"v","г"=>"g","д"=>"d",
"е"=>"e","ё"=>"jo","ж"=>"zh",
"з"=>"z","и"=>"i","й"=>"jj","к"=>"k","л"=>"l",
"м"=>"m","н"=>"n","о"=>"o","п"=>"p","р"=>"r",
"с"=>"s","т"=>"t","у"=>"u","ф"=>"f","х"=>"kh",
"ц"=>"c","ч"=>"ch","ш"=>"sh","щ"=>"shh","ъ"=>"",
"ы"=>"y","ь"=>"","э"=>"eh","ю"=>"yu","я"=>"ya"
);
$value = strtr($value,$translation);
if (!is_numeric($value)){
$value = ereg_replace("[^A-Za-z0-9_ ]", "", $value);
$value = str_replace('amp','and',$value);
$value = str_replace('quot','',$value);
$value = str_replace('039','',$value);
$value = str_replace(' ','-',$value);
}
return $value;
}

Тем самым русские буквы категорий в ссылке заменяются на свои аналоги и очищаются от нежелательных включений. Результат работы измененой функции представлены на шорт картинке

или вы можете посмотреть воочию на демо сайте. На демо сайте используются только несколько категорий, но даже на этих коротких примерах вполне видна корректность преобразования русских букв в урлах на сайте.

Тест на демо сайте показывает, что вносимые изменения практически не приводят к увеличению времени развертывания страницы и какому либо сильному увеличению нагрузки на сервер.

Возможно, это и не столь необходимое изменение. Кого-то вполне устроит и тот вид ссылок, который выдает сам аукцион. Предлагаемые изменения чисто косметические, более наглядны для глаз, более логичны для вывода информации.

Если у вас есть другой путь решения, то неплохо бы было поделиться с сообществом и вашими наработками.

Прошла непреднамеренная ошибка и статья была разделена на две части. Вторую часть по изменению файлов для верного отображения дат на аукционе читайте позднее. Причина проблемы в обновлении синтаксхайлайтера (подсветка кода) и глюк css в IE с наползанием текстов и развертки. Пришлось затратить время на исправления.

Коротко о сайте.

Блог meganfoxstar.ru поможет вам в Установке и настройке cms Vamshop, PHPProBid, Esyndicat, закрепит и расширит имеющиеся знания. Создание сайтов, продвижение сайтов, оптимизация информации. Теория и практика seo. CSS-верстка, веб-мастеринг, интернет-технологии, манимейкинги – все это и намного больше вы сможете найти на страницах нашего проекта!.

Основной        Дополнит         Twitter
RSS фид основной    RSS фид дополнительный    Всего Фолловеров блога
1006
RSSПодписка на обновления по RSS

Обновления блога по почтеОбновления блога на почтовый ящик