Php 如何找到第一次加载的页面?

Php 如何找到第一次加载的页面?,php,wordpress,Php,Wordpress,在php中第一次加载页面时,我需要在div上添加一个类。类是在jquery的窗口加载函数中添加的,当类添加时,页面上就会出现动画。但是我需要当用户第一次访问页面时,他才可以看到动画,之后页面不需要再次显示所有动画。php中是否有任何方法可以检查页面是否第一次加载。这是我在jquery中的代码 $(window).load(function(){ $('.header-div').addClass('animation'); )}; 但如果页面第一次在header-div上加载,

在php中第一次加载页面时,我需要在div上添加一个类。类是在jquery的窗口加载函数中添加的,当类添加时,页面上就会出现动画。但是我需要当用户第一次访问页面时,他才可以看到动画,之后页面不需要再次显示所有动画。php中是否有任何方法可以检查页面是否第一次加载。这是我在jquery中的代码

 $(window).load(function(){
     $('.header-div').addClass('animation');

 )};
但如果页面第一次在header-div上加载,我想在php中添加“animation”类。我正在尝试用session来完成它。但每次刷新页面时,会话id都会更改

    if($postid == 4)
     {
        session_start();
        $_SESSION['id'] = session_id();



     }

我假设您的意思是希望动画仅在唯一用户第一次访问页面时显示?在这种情况下,您需要在用户的计算机上保存一个cookie,并在将动画类添加到header div之前检查该cookie。

在客户端,您可以使用
会话存储
来确定页面是否已被访问。
sessionStorage
内置于大多数现代浏览器中,我可以轻松使用:

if (!sessionStorage.getItem('visited')) {
    $('.header-div').addClass('animation');
    sessionStorage.setItem('visited', true);
}
sessionStorage
对于您想要执行的操作是一个很好的选择,因为该值将存储在每个域中,并且在关闭选项卡时会自动删除


我有一段时间没有使用php,但我想您也可以在服务器端设置会话变量。

您不需要每次都设置会话id

试试这个:

<?php
session_start();
/*Check to see if $_SESSION['visited'] has already been set during this users visit.
Store the result of that check in to the variable $visited.
*/
$visited = isset($_SESSION['visited']);
/* Set $_SESSION['visited'] so that the above check will return true on future visits. */
$_SESSION['visited'] = true;
/* With the snippet inside the html tag, we're echoing "first-visit" 
as a class name if $visited is equal to false, and echoing 
nothing if it's equal to true. */
?>
<div class="header-div <?=$visited?'':'first-visit'?>">
...
</div>

对于您的具体情况,您可能需要添加更多的逻辑来检查$postid==4,就像您在问题中所做的那样。

第一次还是在会话期间?第一次当用户关闭浏览器窗口并再次访问网站时,他可以再次看到动画。我使用此jquery检查页面是否被访问$(document).ready(函数(){if($.cookie(“firsttime”)!=1){$.cookie(“firsttime”,“1”);//警报(“fghfghf”);}否则{//alert(“第二次”);};但是动画类已经用jquery加载了。所以,如果用户第一次访问页面,我需要在php中添加这个类。
$(document).ready(function(){
    $('.first-visit').addClass('animation');
});