Joomla Start и языковые перенаправления

У меня есть два вопроса с моей Joomla! Проект:

  • Я хочу иметь стандартное перенаправление для своего домена, поэтому, когда пользователь вводит домен domain.com, он будет перенаправлен на domain.com/my-joomla-menu-item. Это невозможно сделать с помощью стандартного пункта «Главное меню», потому что мои настройки этого не позволяют.
  • Мой второй вопрос: можно ли перенаправить стандартный язык на языке браузера пользователя, например, если он немец и заходит на domain.com/menu-item, он перенаправляется на domain.com/de/menu-item и это на каждой странице он входит в мой проект.

Я был бы очень рад, если бы кто-нибудь мог мне помочь. Большое спасибо заранее и хорошего дня,

Магнус

Технические характеристики:

  1. Версия Joomla: Joomla! 3.8.10 Стабильный
  2. Версия PHP: 7.0.30-0 + deb9u1

0

Решение

Хорошо, я нашел решение сам. Я разместил код ниже, так что если кто-то ищет что-то подобное, он может взглянуть на него.

Для начала перенаправления:

<?php
$currentLink = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
if ($currentLink == "https://example.com") {
header("Location: https://example.com/cool-submenu");
}
if ($currentLink == "https://example.com/") {
header("Location: https://example.com/cool-submenu");
}
?>

Для языкового перенаправления:

<?php
$url = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
$lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
$path = parse_url($url, PHP_URL_PATH);
$pathFragments = explode('/', $path);
$end = end($pathFragments);
if ($lang == "de") {
header("Location: https://example.com/de/{$end}");
}
?>

Надеюсь, это поможет, если кому-то это нужно.

Привет, Магнус

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]