Абсолютный адрес ресурса в другом контексте
Доброго дня! Вроде избитая тема, но что то упускаю. Есть два контекста, web и eu, соответственно два домена, site.fi и site.eu
Для второго контекста (eu) в настройках link_tag_scheme abs (пробовал и full), http_host site.eu, base_url /, site_url site.eu
Соответственно,
Абсолютные адреса и в
Пробовал в чанке использовать Fenom
Т.е. вместо site.fi/uri site.eu/uri
Где я туплю?
UPD
Есть ли возможность вызывать ссылку на ресурс именно с тем доменом, который соответствует контексту ресурса? Т.е. если документ существует в контексте web то ссылка формируется с доменом контекста web
Вопрос закрыт. Собственно, суть: откуда же MODx будет знать об основном base_url в дефолтном контексте, если его не указать)
Для второго контекста (eu) в настройках link_tag_scheme abs (пробовал и full), http_host site.eu, base_url /, site_url site.eu
Соответственно,
<base href="[[++base_url]]" />
в шаблоне второго контекста отсутствует.Абсолютные адреса и в
[[!pdoMenu? &level=`2` &scheme=`abs` &parents=`0` &context=`web` … ]]
и в [[!pdoResources? &parents=`1,2.3` &context=`web`&scheme=`abs` &useFenom=`1` ....]]
из контекста web формируются с доменом текущего контекста euПробовал в чанке использовать Fenom
{$link = $modx->makeUrl($id, 'web', '', 'abs')}
вместо [[~[[+id]]]]
Но получаю все время ссылку начинающуюся с домена текущего контекста. Т.е. вместо site.fi/uri site.eu/uri
Где я туплю?
UPD
ссылка [[~123 &scheme=`full`]]
где 123- id ресурса в контексте web, вызыванная в контексте eu получает домен контекста eu. Это с абсолютным адресом, без base href в шаблоне. И, в конечном итоге, такая ссылка нерабочая. Есть ли возможность вызывать ссылку на ресурс именно с тем доменом, который соответствует контексту ресурса? Т.е. если документ существует в контексте web то ссылка формируется с доменом контекста web
Вопрос закрыт. Собственно, суть: откуда же MODx будет знать об основном base_url в дефолтном контексте, если его не указать)
Комментарии: 7
Именно так и делаю. Но когда меню вызываю в контексте EU (домен site.eu), а хочу вывести ссылки на контекст web (домен site.fi), то ссылки все равно формируются как site.eu/link, а site.fi/link ни как не получается. И link_tag_scheme для второго контекста пробокал как full, так и abs, безрезультатно.
Проблемы не с pdoMenu.
Может я хочу то, что не предусмотрено в pdoMenu.
Т.е. показывать строго абсолютные ссылки с именем того домена, который соответствует контексту.
А по факту, получается что в каком контексте вызываю, от того домена и строится ссылка. Причем абсолютная. В шаблоне /> убрал.
Т.е., я полагал, что
Может я хочу то, что не предусмотрено в pdoMenu.
Т.е. показывать строго абсолютные ссылки с именем того домена, который соответствует контексту.
А по факту, получается что в каком контексте вызываю, от того домена и строится ссылка. Причем абсолютная. В шаблоне /> убрал.
Т.е., я полагал, что
[[~123 &scheme=`full`]]
тоже должна формироваться от того домена, который соответствует контексту нахождения документа. Но ссылка получается с доменом именно текущего контекста.
Для контекста eu в настройках контекста переопределяйте основные переменные и все будет работать.
Если в контексте не определена переменная он ее берет из основных настроек, а основная настройка base_url у вас .fi
По идее где то тут или на bezumkin.ru была статья про многоязычность с поддоменами там все работало.
bezumkin.ru/sections/tips_and_tricks/2439/ вот она кажись
Если в контексте не определена переменная он ее берет из основных настроек, а основная настройка base_url у вас .fi
По идее где то тут или на bezumkin.ru была статья про многоязычность с поддоменами там все работало.
bezumkin.ru/sections/tips_and_tricks/2439/ вот она кажись
Да! site_url! не оставлять пустым в контексте web (контексте по умолчанию)
Все работает)) Выпрямление рук возможно!
Всем спасибо!
Все работает)) Выпрямление рук возможно!
Всем спасибо!
Последствие моей криворукости выявлены:
был не заполнен site_url в контексте по умолчанию (web)
был не заполнен site_url в контексте по умолчанию (web)
Помогите разобраться, у меня сайт в контексте — web, магазин в отдельном контексте — shop
site_url и base_url — прописаны для обоих контекстов
allow_forward_across_contexts — Да
формируется меню в контексте web
site_url и base_url — прописаны для обоих контекстов
allow_forward_across_contexts — Да
формируется меню в контексте web
{'!pdoMenu' | snippet : [
'parents' => '7',
'scheme' => 'full',
'context' => 'shop',
'includeTVs' => 'icon',
'outerClass' => 'navbar-nav flex-column mb-2',
'rowClass' => 'nav-item',
'tpl' => '@INLINE <li {$classes}><a href="{$link}" class="nav-link" {$attributes} data-toggle="tooltip" data-placement="right" data-original-title="{$menutitle}"><i class="{$icon} mr-1"></i><span>{$menutitle}</span></a>{$wrapper}</li>',
]}
и всё бы хорошо — меню выводится, но ссылки не отображаются, вообще пусто в href, где ошибка?
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.