Проблема: при интеграции мостом от joomlahacks версии 2.0.2 или 2.0.2.1 (пропатчена для работы с j! 1.0.13), если использовать "Wrapped Integration Mode" (визуальная интеграция форума в шаблон сайта на место mosMainBody()), то ссылка на главную страницу форума (не из меню, а на самом форуме) отображается с лишней & в конце. Пример: "_http//yoursite.ru/index.php?option=com_smf&Itemid=99&" Не серьезно, но некрасиво. Пример: см. аттач. Решение: идем в smf.class.php (../components/com_smf/), ищем там в районе 700 строки (для 2.0.2.1) код: Код (CODE): if (strpos($url, $mosConfig_live_site) === FALSE) { $url = $mosConfig_live_site . '/' . $url; } unset($tmpurl, $has_anchor, $has_quick_mod); return $url; } /** * Using isValidUser this method forwards a login request to the correct methods * и после строки "unset($tmpurl, $has_anchor, $has_quick_mod);" добавляем: Код (CODE): $itid = str_replace($mosConfig_live_site."/index.php?option=com_smf&Itemid=", "", $url); $itid = str_replace("&", "", $itid); if ($url == $mosConfig_live_site."/index.php?option=com_smf&Itemid=".$itid."&") { $url = $mosConfig_live_site."/index.php?option=com_smf&Itemid=".$itid; } чтобы получилось: Код (CODE): unset($tmpurl, $has_anchor, $has_quick_mod); $itid = str_replace($mosConfig_live_site."/index.php?option=com_smf&Itemid=", "", $url); $itid = str_replace("&", "", $itid); if ($url == $mosConfig_live_site."/index.php?option=com_smf&Itemid=".$itid."&") { $url = $mosConfig_live_site."/index.php?option=com_smf&Itemid=".$itid; } return $url; } /** * Using isValidUser this method forwards a login request to the correct methods *
Ответ: Хак: убираем лишнюю & в ссылках при интеграции Исправлен первый пост: сделан универсальный код (т.е. без всяких "ваш сайт", "ваш itemid"). Т.к. мои знания php весьма поверхностны, получилось слегка громоздко...