我正在使用设置 cookie 的弹出插件。
我已经将内容限制为那些在 single.php 中有 cookie 的内容,如下所示:
<?php if(isset($_COOKIE['pum-88881'])){
the_content();
}
else {
echo apply_filters( 'the_content', wp_trim_words( strip_tags( $post->post_content ), 55 ) ) . '<p>The full article is only available to subscribers to our newsletter.<a class="opensub">Subscribe to our Newsletter to Continue Reading</a></p>';
}
?>
此代码有效。当有值为pum-88881的cookie时,显示完整内容。唯一的问题是,它需要刷新。
因此,为了尝试解决这个问题,我一直在尝试用 Javascript 编写一个监听器:
function getCookie(c_name) {
var c_value = document.cookie,
c_start = c_value.indexOf(" " + c_name + "=");
if (c_start == -1) c_start = c_value.indexOf(c_name + "=");
if (c_start == -1) {
c_value = null;
} else {
c_start = c_value.indexOf("=", c_start) + 1;
var c_end = c_value.indexOf(";", c_start);
if (c_end == -1) {
c_end = c_value.length;
}
c_value = unescape(c_value.substring(c_start, c_end));
}
return c_value;
}
setTimeout(function(){
var username = getCookie("pum-88881");
if (username != "") {
}
else{
location.reload()
}
}, 1000);
它不起作用。控制台中没有消息。
你说呢?
最佳答案
由于这与 Popup Maker 有关,我将在此处发布。假设您将 cookie 设置为关闭,您将使用类似这样的东西。
jQuery('#pum-88881').on('pumAfterClose', function () {
window.location.reload(true);
});
关于javascript - 监听 Cookie,设置后刷新页面 - Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50737367/