【问题标题】:How can I remove lang from url for default language如何从 url 中删除默认语言的 lang
【发布时间】:2017-01-04 18:24:41
【问题描述】:

现在我有网址,例如

/en/page
/cs/stranka

假设 EN 是我的默认语言。

有什么办法可以得到下面的吗?

/page // without en in url for EN
/cs/stranka

任何建议表示赞赏。

【问题讨论】:

    标签: octobercms


    【解决方案1】:

    你可以使用这个formatUrl(yourUrl, yourLanguageToRemove)函数:

    function formatUrl(url, language){
    	var result = url;
    	var indexOfLanguage = url.indexOf(language);
    	if(indexOfLanguage> -1){
    		result = url.substring(0, indexOfLanguage);
    		if( url[indexOfLanguage+language.length] === "/" ){
    			result += url.substring(indexOfLanguage+language.length+1, url.length);
    		}else{
    			result += url.substring(indexOfLanguage+language.length, url.length);
    		}
    	}
    	return result;
    }
    			
    var expl1 = formatUrl("http://domain.com/en/page1", "en");
    console.log(expl1);
    //outputs: http://domain.com/page1
    			
    var expl2 = formatUrl("http://domain.com/category6/en/page2", "en");
    console.log(expl2);
    //outputs: http://domain.com/category6/page2
    			
    var expl3 = formatUrl("http://domain.com/category6/en", "en");
    console.log(expl3);
    //outputs: http://domain.com/category6/
    			
    var expl4 = formatUrl("http://domain.com/category6/cs/stranka", "en");
    console.log(expl4);
    //outputs: http://domain.com/category6/cs/stranka	

    【讨论】:

    • 这就是你想要的吗?
    • 那么路由器呢?抱歉,也许这很明显,但我是 octobercms 新手。
    • 您能给我一个 URL 示例以及您期望的结果吗?
    • 你给我的只是一部分。那么我应该以某种方式修改路由器以能够使用修改后的网址?
    猜你喜欢
    • 2015-10-24
    • 2019-07-13
    • 2018-03-03
    • 2022-01-10
    • 2015-09-23
    • 1970-01-01
    • 2018-07-18
    • 2015-07-10
    • 1970-01-01
    相关资源
    最近更新 更多