0

我正在尝试根据访问当前页面的请求(也就是以前的 URL)通过条件运行 Javascript 文件。例如,如果用户被重定向到登录页面,登录,然后返回到前一页面,这将触发 JavaScript(而简单地访问该页面不会)。

WordPressPHP是否有办法检查请求源?

更新:

WOOOOAAAH,我们已经成功了!

根据user1091949的建议,我继续添加代码以根据cookie的存在运行我的 JavaScript 文件:

if ( !isset( $_COOKIE['mmmcookies'] ) ) {
    setcookie( 'mmmcookies', 1, 5 );
}

function media_kit_script() {
    $page_id = get_queried_object_id();
    if ( isset( $_COOKIE['mmmcookies'] ) ) {
            if ($page_id === 1947) {
                wp_enqueue_script( 'media-kit-init' );
            }
    }
}

add_action( 'wp_enqueue_scripts', 'media_kit_script' );

该脚本已在之前的函数中注册,一切正常!现在,这是我的下一个问题:我需要setcookie()根据用户来自登录的事实来实现,即:

if ( user_came_from_login() ) {
    if ( !isset( $_COOKIE['mmmcookies'] ) ) {
    setcookie( 'mmmcookies', 1, 5 );
    }

等等。我该怎么做?

4

2 回答 2

1

你可以使用cookie。起始页:

if (!isset($_COOKIE['iwashere'])) {
    setcookie('iwashere', 1, time()+315360000);
}

如果用户来自上述页面,则需要 Javascript 的页面:

if (isset($_COOKIE['iwashere'])) {
    echo '<script src="someJavascript.js"></script>';
}

当然,您可能需要更改 cookie 的过期时间。

于 2013-06-03T23:19:02.787 回答
0

那将是推荐人(而且它不是很可靠):

$_SERVER['HTTP_REFERER'];

Wordpress 有它自己的版本

wp_get_referer()

$_REQUEST['_wp_http_referer'])内部访问

于 2013-06-03T23:13:34.587 回答