Правильный способ ссылки на поддомен текущего URL в Drupal
Как правильно создать ссылку на поддомен текущего URL в Drupal 7?
Т.е. если я нахожусь на http://example.com/content123, ссылка будет указывать на http://subdomain.example.com/content123, таким образом, сохраняя текущий URL, только добавляя поддомен.
4 ответа
Здесь есть два подхода. Первый пример, который я показал, позволит вам получить доступ к корневому домену и добавить новый поддомен. Второй пример просто добавит новый поддомен к текущему хосту.
Добавить поддомен в корневой домен
<?php
$new_subdomain = 'subdomain';
$split_domain = explode('.',$_SERVER['HTTP_HOST']);
echo $new_subdomain.'.'.$split_domain[count($split_domain) - 2].'.'.$split_domain[count($split_domain) - 1];
?>
Добавить поддомен к текущему хосту
<?php
$new_subdomain = 'subdomain';
echo $new_subdomain.'.'.$_SERVER['HTTP_HOST'];
?>
Посмотрите на функцию url() в Drupal. Позволяет создать ссылку на путь на определенном языке.
"язык": необязательный объект языка. Если путь, по которому идет ссылка, является внутренним по отношению к сайту, $options['language'] используется для поиска псевдонима для URL. Если $ options ['language'] опущен, будет использован глобальный $language_url.
То, что вы ищете, - это какой-то.htaccess или похожий, так как использование PHP в этом вопросе не лучший способ.
Наиболее "правильный" способ обработки страниц на альтернативном языке - на стороне клиента, используя:
<link rel="alternate" hreflang="es" href="http://es.example.com/" />
Любой современный браузер должен справиться с остальным.
Я уверен, что Drupal вставит их для вас, если вы Google Hreflang Drupal.
Вот: