Всем привет.
я вот уже вторую неделю штурмую OpenCart
замеил, что не смотря на ее плюсы, в ней есть маленькие недочеты.
и один из наиболее важных недочетов - это создание нормальных ссылок.
не. есть вариант конечно платно, либо ручками все писать, но зачем?
я тут подумал и забабахал маленький хак.
суть такова:
если поле seo url пустое, то оно создается из названия.
одним словом нужно поправить adminmodelcatalogcategory.php (!!это можно и для продуктов сделать!)
в функции public function addCategory($data)
находим
if ($data['keyword']) {
$this->db->query("INSERT INTO " . DB_PREFIX . "url_alias SET query = 'category_id=" . (int)$category_id . "', keyword = '" . $this->db->escape($data['keyword']) . "'");
}
и сразу поле вставляем
else
{
$alex_non_seo_url = $this->db->escape($value['name']);
$tr = array("А"=>"A","Б"=>"B","В"=>"V","Г"=>"G","Д"=>"D","Е"=>"E","Ж"=>"J","З"=>"Z","И"=>"I","Й"=>"Y","К"=>"K","Л"=>"L","М"=>"M","Н"=>"N","О"=>"O","П"=>"P","Р"=>"R","С"=>"S","Т"=>"T","У"=>"U","Ф"=>"F","Х"=>"H","Ц"=>"TS","Ч"=>"CH","Ш"=>"SH","Щ"=>"SCH","Ъ"=>"","Ы"=>"YI","Ь"=>"","Э"=>"E","Ю"=>"YU","Я"=>"YA","а"=>"a","б"=>"b","в"=>"v","г"=>"g","д"=>"d","е"=>"e","ж"=>"j","з"=>"z","и"=>"i","й"=>"y","к"=>"k","л"=>"l","м"=>"m","н"=>"n","о"=>"o","п"=>"p","р"=>"r","с"=>"s","т"=>"t","у"=>"u","ф"=>"f","х"=>"h","ц"=>"ts","ч"=>"ch","ш"=>"sh","щ"=>"sch","ъ"=>"y","ы"=>"yi","ь"=>"'","э"=>"e","ю"=>"yu","я"=>"ya","."=>"-"," "=>"-","?"=>"-","/"=>"-",""=>"-","*"=>"-",":"=>"-","*"=>"-","""=>"-","<"=>"-",">"=>"-","|"=>"-","'"=>"");
$alex_seo_url = strtr($alex_non_seo_url,$tr);
$this->db->query("INSERT INTO " . DB_PREFIX . "url_alias SET query = 'category_id=" . (int)$category_id . "', keyword = '" . strtolower($alex_seo_url) . "'");
}
ну вот как-то так =)
жду ваших ФЕ по поводу этого хака