我已经构建了一个 PHP 插件,它在站点加载时创建两个 cookie(如果 cookie 不存在)。
cookie 的本质是存储在站点内使用的屏幕宽度和密度,这就是为什么有必要在加载站点内容之前创建它们。
问题是我看到网站加载有相当大的延迟,因为 cookie 的创建阻止了网站加载......
谁能看到有人优化我的功能以加快流程?或任何替代想法?
public function cookie()
{
if(!isset($_COOKIE['screenwidth']))
{
return "<script>
document.cookie='screenwidth='+document.documentElement.clientWidth+'; path=/';location.reload(true);
</script>";
}
if(!isset($_COOKIE['retina']))
{
return "<script>
var mediaQuery = '(-webkit-min-device-pixel-ratio: 1.5),\
(min--moz-device-pixel-ratio: 1.5),\
(-o-min-device-pixel-ratio: 3/2),\
(min-resolution: 1.5dppx)';
if (window.devicePixelRatio > 1 || window.matchMedia && window.matchMedia(mediaQuery).matches) {
document.cookie='retina=yes; path=/';location.reload(true);
} else {
document.cookie='retina=no; path=/';location.reload(true);
}
</script>";
}
}