2011-11-17 61 views
1

我有這些URLZend框架 - 複製在轉變的URL

cz/kontroler/akce 

en/controller/action 

是用來transatable路線和它的作品像魅力。但問題是,當你會寫

cz/controller/akce 

它也適用。

在通常當你有

cz/something-in-czech 
en/something-in-english 

該路線someController,將作品仍然

cz/some 
en/some 

,因爲它是真正的名字控制器。

如何解決這個重複性的內容問題?

回答

0

您可以創建使用preDispatch方法的plugin。執行請求之前,您可以分析請求的url並檢查請求的語言是否與url中的params語言相匹配(我的意思是控制器和操作)。如果沒有,您可以將用戶重定向到與給定語言一致的url(基本上,您會翻譯控制器和操作,然後將用戶重定向到正確的url)。

+0

我做了類似的方式。令我驚訝的是,它在路線中並沒有控制內部,在文件中沒有任何關於它的內容。當我沒有意外發現我可能會受到谷歌的懲罰。 – tomasr

+0

@tomasr您始終可以使用rel =「canonical」來告訴Google您希望成爲哪個網址的首選網址。 –