есть статья со ссылкой /stati/geologija/russia.html — на русском. Если меняю язык на английский, ссылка остается такая же /stati/geologija/russia.html, происходит смена только контента.
Сама идея такова: при добавлении статьи левая колонка разбита табами на разные языки, есть возможность добавлять контент в редактор. Снизу поле для генерации для каждого языка ключей, справа на первом языке все как в стандарте (вкладки и т.п.), на остальных — задается только сеолинк и сеоданные с вкладки SEO (или это лишнее с вкладкой, пока не знаю).
Проблема заключается в том, какой файл редактировать для генерации ссылок на другие языки (по заголовку, как при добавлении статьи на обычном русском), файл для сеолинка я так полагаю этот components/content/model.php. Но он связан напрямую, получается, с категориями для статей. Потому необходимо по идеи редактировать еще и файл, который отвечает за категории статей.
В общем, подскажите, в каких файлах стоит "копаться".
З.Ы. может есть путь проще, как-то подключить к добавлению статьи такого рода функционал. Буду признателен за идеи.
З.Ы.з.ы. интересуют только статьи.
Вопрос актуален. Со статьями и категориями разобрался. Не могу найти, который файл отвечает за вывод ссылки в строке браузера. Подскажите, пожалуйста.
router не?
Вот вся кухня мультиязычности статей.
public function addArticle($article){ $article = cmsCore::callEvent('ADD_ARTICLE', $article); if ($article['url']) { $article['url'] = cmsCore::strToURL($article['url'], $this->config['is_url_cyrillic']); } // получаем значение порядка последней статьи $last_ordering = (int)$this->inDB->get_field('cms_content', "category_id = '{$article['category_id']}' ORDER BY ordering DESC", 'ordering'); $article['ordering'] = $last_ordering+1; $article['id'] = $this->inDB->insert('cms_content', $article); if ($article['id']){ $article['seolink'] = $this->getSeoLink($article); $this->inDB->query("UPDATE cms_content SET seolink='{$article['seolink']}' WHERE id = '{$article['id']}'"); cmsInsertTags($article['tags'], 'content', $article['id']); if ($article['published']) { cmsCore::callEvent('ADD_ARTICLE_DONE', $article); } } return $article['id'] ? $article['id'] : false; }
if ($article['url']) { $article['url'] = cmsCore::strToURL($article['url'], $this->config['is_url_cyrillic']); }
и второй момент это генерация seolink по title статьи
$article['seolink'] = $this->getSeoLink($article);