Joomla 开始和语言重定向
Joomla Start and Language Redirections
我有两个关于 Joomla 的问题!项目:
- 我想为我的域设置标准重定向,因此当用户键入 domain.com 时,他将被重定向到域。com/my-joomla-menu-item。这不能通过标准主菜单项完成,因为我的设置不允许这样做。
- 我的第二个问题是,是否可以使用用户浏览器语言进行标准语言重定向,例如,如果他是德语并输入域。com/menu-item,他将被重定向到域。com/de/menu-item,在他进入我的项目的每一页上都是如此。
如果有人能帮助我,我会很高兴。非常感谢,祝您有愉快的一天,
马格努斯
技术规格:
- Joomla 版本:Joomla! 3.8.10 稳定
- PHP版本:7.0.30-0+deb9u1
好的,我自己找到了解决办法。我 post 下面的代码,所以如果有人正在搜索这样的东西,他可以看看它。
开始重定向:
<?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}");
}
?>
希望对需要的人有所帮助。
你好,马格纳斯
我有两个关于 Joomla 的问题!项目:
- 我想为我的域设置标准重定向,因此当用户键入 domain.com 时,他将被重定向到域。com/my-joomla-menu-item。这不能通过标准主菜单项完成,因为我的设置不允许这样做。
- 我的第二个问题是,是否可以使用用户浏览器语言进行标准语言重定向,例如,如果他是德语并输入域。com/menu-item,他将被重定向到域。com/de/menu-item,在他进入我的项目的每一页上都是如此。
如果有人能帮助我,我会很高兴。非常感谢,祝您有愉快的一天,
马格努斯
技术规格:
- Joomla 版本:Joomla! 3.8.10 稳定
- PHP版本:7.0.30-0+deb9u1
好的,我自己找到了解决办法。我 post 下面的代码,所以如果有人正在搜索这样的东西,他可以看看它。
开始重定向:
<?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}");
}
?>
希望对需要的人有所帮助。
你好,马格纳斯