WordPress 主题技巧:给文章页增加“谁来过”模块。

模块功能:

我个人目前在做一个电影类的网站,在开发文章页的模版时候,突然觉得给文章页增加一个“谁对本电影感兴趣”的功能模块可能会比较有趣,这个功能有点类似于‘足迹’的感觉,用户可以通过这个功能,发现与他兴趣相投的人。

我把代码分享出来,不知道有没有朋友对此功能感兴趣呢?

代码实现:

<?php  
global $post;
// 本代码用于记录当前用户访问本文的时间和用户信息。
$current_user_id = get_current_user_id();
$visits = get_post_meta($post->ID, '_user_visit_count', true);
$visits = $visits ? $visits : array();					
if ($current_user_id && array_key_exists($current_user_id, $visits)) {
    $visits[$current_user_id]['time'] = current_time('mysql');
} elseif ($current_user_id) {
    $visits[$current_user_id] = array(
        'nickname' => wp_get_current_user()->nickname,	
        'avatar'=>get_avatar($current_user_id, 96),				        
        'time' => current_time('mysql')
    );
}
update_post_meta($post->ID, '_user_visit_count', $visits);

// 获取所有访问过本页的用户记录
$unique_visitors = array();
foreach ($visits as $user_id => $visit) {
    if (user_can($user_id, 'read')) {
        $unique_visitors[$user_id] = $visit;
    }
}
// 输出访问记录
$loopcount = 0; // 用于控制循环
$countPost = $options['single_whocare_count']; // 形如:$options['album1_rank_qua']   *用于获取后台设置的循环次数, 这里需要在后台增加变量进行控制。
if ($unique_visitors) {
    echo '<ul class=who_visited>';					    
    foreach ($unique_visitors as $user_id => $visit) {
    	if($loopcount >= $countPost) break;
        echo '<li><div class=user_avatar>' .$visit['avatar'] . '</div> <div class=user_nickname>'. $visit['nickname'] . '</div> <div class=visit_time>' . $visit['time'] . '&nbsp;来过~</div></li>';
        $loopcount++; //自增,循环计次 
    }
    echo '</ul>';
} else {
    echo '目前还没有访问者。';
}
?>

如果你的网站同时开发了用户中心和关注功能,你还可以在这里给 访问者 加上链接跳转到用户中心,或增加关注,提高用户交互。

CSS样式很简单,我就不发了。毕竟,主题不同,样式还是要自己写的。

相关推荐

  1. WordPress主题底部纯文本文章列表

    2024-07-14 22:18:01       16 阅读
  2. 使用Cloudflarewordpress网站图片自动压缩加速

    2024-07-14 22:18:01       32 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-14 22:18:01       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-14 22:18:01       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-14 22:18:01       57 阅读
  4. Python语言-面向对象

    2024-07-14 22:18:01       68 阅读

热门阅读

  1. 日记

    2024-07-14 22:18:01       21 阅读
  2. mmc-utils 的 MMC 测试工具

    2024-07-14 22:18:01       19 阅读
  3. docker

    docker

    2024-07-14 22:18:01      22 阅读
  4. python的自省机制(改bug有用)

    2024-07-14 22:18:01       19 阅读
  5. 面试官:如何在SpringBoot启动时执行特定代码

    2024-07-14 22:18:01       20 阅读
  6. 一劳永逸:彻底解决PyCharm中gcc编译器错误

    2024-07-14 22:18:01       17 阅读
  7. TestNG测试框架入门与实践

    2024-07-14 22:18:01       18 阅读
  8. OJ-0710

    2024-07-14 22:18:01       16 阅读