Возникла задача - разрешить русские алиасы для статей для использования кириллицы в URL. Многие сторонние компоненты , например SH404SEF позволяют это делать, однако при сохранении стандартного материала в Joomla 1.5 система не позволяет использовать кириллицу и подставляет вместо нее дату, в случае использования либо заменяет на "-".
Конечно, такая ситуация меня не устраивала, пришлось углубиться в код CMS.
Опущу тут методы, дам сразу результат - нам необходимо сделать правку в файле /libraries/joomla/database/table/content.php
Ищем нижеследующий кусок
$this->alias = JFilterOutput::stringURLSafe($this->alias);
if(trim(str_replace('-','',$this->alias)) == '') {
$datenow =& JFactory::getDate();
$this->alias = $datenow->toFormat("%Y-%m-%d-%H-%M-%S");
}
и просто комментируем его.
/* $this->alias = JFilterOutput::stringURLSafe($this->alias);
if(trim(str_replace('-','',$this->alias)) == '') {
$datenow =& JFactory::getDate();
$this->alias = $datenow->toFormat("%Y-%m-%d-%H-%M-%S");
}
*/
ВНИМАНИЕ!!! Закомментировав все эти строки мы также отключили проверку на не-HTML символы, поэтому если воспользуетесь советом, то ОБЯЗАТЕЛЬНО заполняйте алиас к статье, не использую пробелы и другие спецсимволы!!
Если Вы также хотите использовать кириллицу в алиасах в категориях и разделах необходимо сделать точно такие же правки в /libraries/joomla/database/table/section.php и /libraries/joomla/database/table/category.php
| &larr Избавляемся от дублирования контента на главной странице | Дорабатываем Custom Properties &rarr |
|---|





Комментарии
Если кому интересно, то для Joomla 1.7 добавить возможность написания в url-ах нижнее подчеркивание "_"(вместо дефиса или с ним) надо в файле /libraries/joomla/filter/filteroutput.php заменить строку в функции stringURLSafe (у меня строка 77):
$str = preg_replace(ar ray('/\s+/','/[^A-Za-z0-9\-]/'), array('-',''), $str);
на
$str = preg_replace(ar ray('/\s+/','/[^A-Za-z0-9\-_]/'), array('-',''), $str);
в перечне символов добавилось подчеркивание. И геморрой успешно вылечен. Цитировать
В файле libraries\joomla\filter\filteroutpu t.php.
Для yootheme zoo 1.0 также нужно править файлы \administrat or\components\com_zoo\tables\category.php …tables\item.php …tables\catalog.php …framewor k\filteroutpu t.php …controll ers\item.php …controll ers\category.php …controll er\catalog.php Цитировать
СПАСИБО ОГРОМНЕЙШЕЕ!!!! ! )))) Цитировать
Переименовать htaccess.txt в .htaccess и в настройках выставить использовать его (или режим mod_rewrite при использовании 404sef) Цитировать
JPAGE_CURRENT_O F_TOTAL - обнови язык
otbaldy.ru Цитировать
А с каких пор в ссылках можно ставить пробелы? Цитировать
Подскажите Цитировать
а как это в резукльтате должно выглядеть в коде? подскажите Цитировать
Как можно сделать в sh404sef, чтобы в админке когда переписываешь алисы на русские буквы, все отображалось или по-русски, или хотя бы по латински, но ровно? Потому что, когда прописываешь русские буквы, сохраняешь, смотришь, а всё кракозябрами непонятными и кривыми буквами. Потом не ясно где какой алиас и пункт меню, что к чему подписано, и каждый раз так не на подписываешься. После каждой очистки, очень затруднительно вспомнить.
В идеале отлично было бы, если бы установленный sh404SEF брал алиасы из алисов материалов, пунктов меню, либо разделов, или категорий. Т.е. в материале прописал русскими буквами и сколько раз не чисти, всегда русские и остались, пока на что-то другое не прописал. Очень удобно.
Буду очень благодарен тому кто подскажет как такой вариант реализовать!
Заранее спасибо! Цитировать
ЗЫ: сайт вот этот - www.clubtitan.ru - если вдруг кому нужна помощь с байком - вэлкам. Цитировать
RSS лента комментариев этой записи.