OneThink1.0正式版插件URL生成位置修复

/**
 * 插件显示内容里生成访问插件的url
 * @param string $url url
 * @param array $param 参数
 * @author 麦当苗儿 <[email protected]>
 */
function addons_url($url, $param = array()){
    $url        = parse_url($url);
    $case       = C('URL_CASE_INSENSITIVE');
    $addons     = $case ? parse_name($url['scheme']) : $url['scheme'];
    $controller = $case ? parse_name($url['host']) : $url['host'];
    $action     = trim($case ? strtolower($url['path']) : $url['path'], '/');
 
    /* 解析URL带的参数 */
    if(isset($url['query'])){
        parse_str($url['query'], $query);
        $param = array_merge($query, $param);
    }
 
    /* 基础参数 */
    $params = array(
        '_addons'     => $addons,
        '_controller' => $controller,
        '_action'     => $action,
    );
    $params = array_merge($params, $param); //添加额外参数
    return U('Home/Addons/execute', $params);
}

OneThink的插件URL生成存在一点定位问题,在其他应用模块里调用这个插件生成URL需进行修正。

修正方式是在return的U函数内带上Home,强制定位到Home应用模块内。

你可能感兴趣的:(onethink,thinkox)