启用缓存时,语言不会切换

时间:2020-04-21 作者:Sahasrar

在我的网站上,当通过ajax write会话变量按下PHP脚本以更改语言并重新加载页面时,我有一个按钮。但每次启用缓存时都会加载默认语言。禁用缓存后,一切正常。

大页面如何使用缓存进行翻译?

1 个回复
SO网友:dkeeling

如果您在使用Wordpress、IMHO的站点上启用了任何类型的缓存,那么最好使用Cookie而不是会话变量,因为启用了缓存后,用户对页面的请求可能根本不会命中服务器,因此会话变量甚至不会被读取。

我通常会使用cookie,通过ajax在前端设置和读取cookie。您可以通过这种方式动态加载新的语言内容。

–-–-–-–-

继续回答第二个问题。如果你看一个像WPML或类似的插件,在很多情况下,它们实际上是在创建重复的内容。所以一个网站可能mydomain.com/en 英语和mydomain.com/es 西班牙语。每个端点都单独缓存。可能也设置了一些cookie,但当您使用WMPL切换语言时,实际上会重定向到不同的页面,而不是具有不同语言内容的同一页面。。。这有意义吗?