Cakephp 如何在PHP中的所有菜单url中添加动态国家名称?

Cakephp 如何在PHP中的所有菜单url中添加动态国家名称?,cakephp,Cakephp,我想在所有菜单url中使用当前会话国家/地区名称,这仅用于在url中显示目的 假设当前国家是北科里亚 当前url为产品/业务垂直 我想加入 url为北科里亚/products/business\u垂直 而北科里亚仅用于显示,未用于页面 我在这个会话中有国家名称$\u会话[“csite”]。。。。我想将此会话值用于所有菜单url。Cakephp本机支持它所称的url前缀。它们被加载到routes.php配置文件中,然后可以在应用程序的其他位置使用。要像在您的示例中那样构造带有给定前缀的url,您可

我想在所有菜单url中使用当前会话国家/地区名称,这仅用于在url中显示目的

假设当前国家是北科里亚

当前url为产品/业务垂直

我想加入

url为北科里亚/products/business\u垂直

而北科里亚仅用于显示,未用于页面


我在这个会话中有国家名称$\u会话[“csite”]。。。。我想将此会话值用于所有菜单url。

Cakephp本机支持它所称的url前缀。它们被加载到routes.php配置文件中,然后可以在应用程序的其他位置使用。要像在您的示例中那样构造带有给定前缀的url,您可以执行以下操作

Try:
Add code on routes.php
$currentPath = Router::getPaths(true);
$currentUrl = '';
if (!empty($currentPath->query['url'])) {
    $currentUrl = trim($currentPath->query['url']);
} elseif (!empty($currentPath->url)) {
    $currentUrl = trim($currentPath->url);
}

if (!empty($currentUrl)) {
    $currentUrlArr = explode('/', trim($currentUrl, "/"));
    if ($currentUrlArr[0] == 'north-corea') {
        Router::connect('/*', array('controller' => $currentUrlArr[1], 'action' => $currentUrlArr[2]));
    }
}
[ 'controller' => 'products', 'action' => 'business-verticals', 'north-corea' => true ]

也许你是对的。。。但是我不太擅长蛋糕php。。。。我想告诉你这里是右上下。。。。我想把这些放在url里。。。