Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Ссылки из меню

00 голосов
5
Добрый день.
На сайте по управлением bitrix есть левое меню, ссылки в котором относительные.
Появилась задача сделать ссылку в данном меню на другой сайт.
При попытке добавления абсолютной ссылки вида http://newsite.org ссылка превращается в нерабочую http://mysite.ru/page/http://newsite.org

Как добиться от bitrix добавления нормальной абсолютной ссылки на другой сайт?

Рисунок


Извините если тема уже обсуждалась, но в поиске ничего найти на этот счет не удалось.

Пожалуйста, помогите.
спросил 27 Окт, 13 от nfhfrfrfi (120 баллов)

5 Ответы

00 голосов
Вероятно, у вас в шаблоне комопнента меню добавлена подстановка домена http://mysite.ru
Уберите ее или добавьте проверку ссылок.
ответил 26 Ноя, 13 от Delp (7,220 баллов)
00 голосов
Подскажите, как производится добавление проверки ссылок?
Спасибо за помощь.
ответил 08 Март, 14 от nfhfrfrfi (120 баллов)
00 голосов
Покажите шаблон сайта, пожалуйста.
ответил 28 Июнь, 14 от Delp (7,220 баллов)
00 голосов
Код
<?if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>

<?if (!empty($arResult)):

$dir = $APPLICATION->GetCurDir();
$dir=substr($dir,0,strlen($dir)-1);
foreach($arResult as $arItem)
{
    echo "<a href='".$dir.$arItem["LINK"]."'>".$arItem["TEXT"]."</a>";    
//echo "<a href='".$arItem["LINK"]."'>".$arItem["TEXT"]."</a>";    
}    
endif;
?> 
ответил 28 Окт, 14 от nfhfrfrfi (120 баллов)
00 голосов
Решил проблему самостоятельно изменив шаблон следующим образом:
Код
<?if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>

<?if (!empty($arResult)):

$dir = $APPLICATION->GetCurDir();
$dir=substr($dir,0,strlen($dir)-1);
foreach($arResult as $arItem)
{
//    echo "<a href='".$dir.$arItem["LINK"]."'>".$arItem["TEXT"]."</a>";
////echo "<a href='".$arItem["LINK"]."'>".$arItem["TEXT"]."</a>";    
    $url = parse_url($arItem["LINK"]);
    if($url['scheme']=='http')
        echo "<a href='".$arItem["LINK"]."' target='_blank'>".$arItem["TEXT"]."</a>";
    else 
        echo "<a href='".$dir.$arItem["LINK"]."'>".$arItem["TEXT"]."</a>";
}    
endif;
?> 


Sergey Leshchenko, благодарю за помощь.
ответил 26 Фев, 15 от nfhfrfrfi (120 баллов)

Похожие вопросы

0 голосов
1 ответ
0 голосов
3 ответов
0 голосов
1 ответ
спросил 12 Сен, 13 от Cooper (260 баллов)
0 голосов
2 ответов
спросил 13 Янв, 13 от Gloriy (120 баллов)