零基础建站培训介绍

当前位置:

wordpress网站显示用户的浏览记录

网站显示用户的浏览记录功能在商城网站建设中经常见到,可以记录已浏览的商品的列表。使用wordpress建网站,同样也可以制作这样的显示用户的浏览记录功能。

方法/步骤

  1. 创建一个history.js文件,文件编码为UTF-8无BOM格式编码,保存在当前主题的images文件夹下;
  2. 在history.js文件里粘贴以下的JS代码,然后保存。
    
    
    ViewHistory = function() {
     
        this.config = {
            limit: 10,
            storageKey: 'viewHistory',
            primaryKey: 'url'
        };
     
        this.cache = {
            localStorage:  null,
            userData:  null,
            attr:  null
        };
    };
     
    ViewHistory.prototype = {
     
        init: function(config) {
            this.config = config || this.config;
            var _self = this;
     
            // define localStorage
            if (!window.localStorage && (this.cache.userData = document.body) && this.cache.userData.addBehavior && this.cache.userData.addBehavior('#default#userdata')) {
                this.cache.userData.load((this.cache.attr = 'localStorage'));
     
                this.cache.localStorage = {
                    'getItem': function(key) {
                        return _self.cache.userData.getAttribute(key);
                    },
                    'setItem': function(key, value) {
                        _self.cache.userData.setAttribute(key, value);
                        _self.cache.userData.save(_self.cache.attr);
                    }
                };
     
            } else {
                this.cache.localStorage = window.localStorage;
            }
        },
     
        addHistory: function(item) {
            var items = this.getHistories();
            for(var i=0, len=items.length; i<len; i++) {
                if(item[this.config.primaryKey] && items[i][this.config.primaryKey] && item[this.config.primaryKey] === items[i][this.config.primaryKey]) {
                    items.splice(i, 1);
                    break;
                }
            }
     
            items.push(item);
     
            if(this.config.limit > 0 && items.length > this.config.limit) {
                items.splice(0, 1);
            }
     
            var json = JSON.stringify(items);
            this.cache.localStorage.setItem(this.config.storageKey, json);
        },
     
        getHistories: function() {
            var history = this.cache.localStorage.getItem(this.config.storageKey);
            if(history) {
                return JSON.parse(history);
            }
            return [];
        }
    };
     
    if(typeof localStorage !== 'undefined' && typeof JSON !== 'undefined') {
        var viewHistory = new ViewHistory();
        viewHistory.init({
            limit: 5,
            storageKey: 'viewHistory',
            primaryKey: 'url'
        });
    }
     
    var wrap = document.getElementById('recently_viewed');
    // 如果 ViewHistory 的实例存在,则可以将页面信息写入。
    if(viewHistory) {
        var page = {
            "title": document.getElementsByTagName('title')[0].innerHTML,
            "url": location.href // 这是 primaryKey
            // "time": new Date()
            // "author": ...
            // 这里可以写入更多相关内容作为浏览记录中的信息
        };
        viewHistory.addHistory(page);
    }
    // 如果 ViewHistory 的实例存在,并且外层节点存在,则可显示历史浏览记录
    if(viewHistory && wrap) {
        // 获取浏览记录
        var histories = viewHistory.getHistories();
     
        // 组装列表
        var list = document.createElement('ul');
        if(histories && histories.length > 0) {
            for(var i=histories.length-1; i>=0; i--) {
                var historyItem = histories[i];
     
                var item = document.createElement('li');
                var itemLink = document.createElement('a');
                itemLink.href = historyItem.url;
                itemLink.innerHTML = historyItem.title;
     
                item.appendChild(itemLink);
                list.appendChild(item);
            }
     
            // 插入页面特定位置
            wrap.appendChild(list);
        }
    }
  3. 用Dreamweaver cs6软件打开当前模板的头部模板header.php,放上以下的JS引入代码:
    
    
    <script type="text/javascript" src="<?php bloginfo('template_url'); ?>/images/history.js"></script>
  4. 在需要显示用户浏览记录的位置放上以下的DIV代码,即可显示用户的浏览记录了。
    
    
    <div id="recently_viewed"></div>
上一课: 下一课:

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

相关教程

  • 我们修改网站时,经常会遇到这样的问题,就是当我们修改了某个文件后,打开网站却仍然是旧的内容,这就是由于浏览器缓存造成的。通常的方法就是去清除
  • 不论是到用搜索引擎搜索“建网站”这类的词,或者是搜索“建站公司哪家靠谱”这类的问题,大部分内容都是用类似“简单”“快速”“便宜”“省心”类似的词来自我标
  • https相比于http更加安全,现已被越来越多的网站和搜索引擎青睐,但是https的SSL证书使用费用高昂,且每年都要续费,因此很多中小企业的网站就只能望
  • 做网站基本费用大概需要多少钱?网站的基本费用主要包括网站域名、网站主机、网站代码三个部分 ?如果你对网站没有特别的设计要求,利用一些开源建站
  • 我们自己建立网站,网站上线之后,如果想查看并统计网站的日访问量,应该如何操作呢?一般统计网站访问量,可以添加第三方网站统计代码,可以去百度
  • 做网站服务器选什么系统更好呢?是windows还是linux操作系统呢?其实不同的系统之间的差距并不是很大,但是不同的系统对于不同的建站语言的友好程序是
  • 现在仍然有很多人想做淘宝客,做淘宝客之前需要自己建一个淘宝客网站,那么怎么做一个淘宝客网站呢?下面介绍一下淘宝客网站制作方法。首先,注册一
  • 很多企业甚至个人想进入互联网行业,因为看到网络盈利太简单了,那么进入互联网的首要门槛就是做个网站,很多人认为做个网站肯定非常昂贵,那么做网站
  • 使用WordPress做网站,我们时常会引用外站图片,经常会遇到这样的问题,刚开始图片是正常的,但一段时间后,引用的外部图片不显示了,这是怎么回事呢
  • 独立ip和共享ip对于做网站有什么不同呢?我们自己做网站时,是要选择独立IP还是共享IP呢?下面来分析一下独立ip和共享ip它们的优缺点。1、独立的ip好