在CPT页面上,我检查用户是否登录;如果是,我会检查他们是否有一个元条目\'session-\'
+ 当前页的存根。如果他们这样做,我将值增加1。
我认为这一切都很好,但我刚刚注意到它实际上增加了两个单独的user\\u元字段。目前,我有三个CPT页面(我们叫它们伯特、厄尼和拉尔夫);如果我刷新页面Burt, 它增加了我的user\\u元字段(session-burt
) 由1,这是伟大的;但是,它也会增加session-ralph
通过1。
我没有Ralph 页面打开后,我重复着我能想到的一切,试图找出错误的代码行,但我看不出它为什么这样做。这真是令人讨厌。
这是我的密码。希望我只是对一些非常明显的东西视而不见,而不是WP bug。
$stub = $post->post_name;
$sessionKey = \'session-\' . $stub;
$viewedKey = $stub . \'-lastviewed\';
$sessionViewsArray = get_user_meta($current_user->ID, $sessionKey);
$sessionViews = (int)$sessionViewsArray[0];
echo \'<pre>\';
print_r($sessionViewsArray);
echo \'</pre>\';
echo \'<h1>I think there are \' . $sessionViews . \' views</h1>\';
$lastViewedArray = get_user_meta($current_user->ID, $viewedKey);
$lastViewedTime = $lastViewedArray[0];
if ($lastViewedTime) {
$lastViewed = date(\'l jS F Y, g:ia\', $lastViewedTime);
} else {
$lastViewed = \'First time - good luck!\';
}
$newSessionViews = $sessionViews + 1;
update_user_meta($current_user->ID, $sessionKey, $newSessionViews);
update_user_meta($current_user->ID, $viewedKey, time());
echo \'<h1>I think I just updated \' . $sessionKey . \'</h1>\';
///
// Now let\'s update the page views
///
$pageViewsArray = get_post_meta($post->ID, \'totalviews\');
$pageViews = (int)$pageViewsArray[0];
$pageViews += 1;
update_post_meta($post->ID, \'totalviews\', $pageViews);
值得注意的是,它似乎只是
session-ralph
受影响的进入;这个
ralph-lastviewed
如果刷新Burt页面,则不会更新条目。
任何帮助都将不胜感激!
更新:
根据下面@dalbaeb的回答,我的解决方案是使用以下挂钩:
remove_action(\'wp_head\', \'adjacent_posts_rel_link_wp_head\', 10, 0);
...删除了
<link rel=\'next\'...
和
<link rel=\'prev\'...
标签,并立即解决了问题。