在使用 Dedecms CMS 构建网站时,文章页面的信息展示中,官方提供的调用文章浏览次数的标签是:
{dede:field.click/}
这个标签调用的是静态浏览次数,即生成文章时随机生成的数值。无论用户如何刷新页面,浏览次数都不会增加,这会严重影响用户体验。 为了解决这一问题,网络上提供了一种方法,即将调用标签替换为动态加载的 JavaScript 代码:
这种方法可以实现每次刷新页面时浏览次数动态增加的效果。然而,实际使用后发现一个问题:每次页面加载到该位置时都会出现短暂卡顿。这是因为 JavaScript 每次都需要向服务器请求数据,而这种即时加载的方式会导致页面在此处暂停,影响加载速度。 为了优化用户体验,我们可以通过以下步骤实现一种更高效的解决方案: 1. 在文章页面的浏览次数显示位置,先定义一个默认值(如 0)。例如:
0
2. 修改 Dedecms 的核心函数文件 `plus/count.php`,找到如下代码:
echo "document.write('".$row['click']."');";
将其替换为:
echo 'document.getElementById("countnum").innerHTML='.$row['click'];
3. 在网页底部添加以下 JavaScript 代码以异步加载真实的浏览次数:
通过以上步骤,我们可以确保页面加载时不会因浏览次数的动态调用而卡顿。具体来说,页面初始加载时会显示预设的默认值(如 0),随后通过 JavaScript 异步加载真实的浏览次数并更新到页面上。这种方式不仅提升了页面加载速度,还显著改善了用户体验。 总结来说,通过自定义 HTML 元素、修改核心函数以及将 JavaScript 放置在页面底部加载,我们可以实现文章页浏览次数的动态调用,同时避免加载过程中的卡顿问题。这种方法既简单又高效,非常适合 Dedecms 用户采用。