分类归档

网站开发

FWQ
CMS教程
dedecms搜索页面不能使用arclist等标签怎么办
搜索页面不能使用arclist等标签怎么办? 本文实例讲述了dedecms搜索页面不能使用arclist等标签的解决方法。分享给大家供大家参考。具体方法如下: 这里讲述dedecms模板搜索页search.php支持arclist和channelartlist标签调用的方法,步骤如下: 打开include/arc.searchview.class.php. 查找:   代码如下: require_once(DEDEINC."/taglib/hotwords.lib.php");  require_once(DEDEINC."/taglib/channel.lib.php"); 登录后复制    下面插入   代码如下: require_once(DEDEINC."/taglib/arclist.lib.php");  require_once(DEDEINC."/taglib/channelartlist.lib.php"); 登录后复制 查找   代码如下: else if($tagname=="hotwords")  {  $this->dtp->Assign($tagid,lib_hotwords($ctag,$this));  } 登录后复制    下面插入   代码如下: else if($tagname=="arclist")  {  $this->dtp->Assign($tagid,lib_arclist($ctag,$this)); …
2024-11-25 阅读全文 →
FWQ
CMS教程
织梦DEDECMS如何防图片被盗链
织梦dedecms如何防图片被盗链? 修改.htaccess 首先这种方法适合于用Apache来搭建服务器的用户,如果你使用IIS来搭建,这种方法不适用。  推荐学习: 先解释一下图片防盗链和转向:  图片防盗链有什么用?  防止其它网站盗用你的图片,浪费你宝贵的流量。  图片转向有什么用?  如果你的网站以图片为主,哪天发现月底没到流量就快用光了,那就可以利用图片转向,在不修改网页的前提下,把图片下载请求转向到其它空间(比如试用主机),临时过渡。  下面开始讲解,比如你的图片都在img目录下,那就在该目录下放一个名为 .htaccess 的文件,内容如下:  RewriteEngine on   RewriteCond %{HTTP_REFERER} !^$ [NC]   RewriteCond %{HTTP_REFERER} !dedemao.com [NC]   RewriteCond %{HTTP_REFERER} !google.com [NC]   RewriteCond %{HTTP_REFERER} !baidu.com [NC]    RewriteRule .(jpg|gif|png|bmp|swf|jpeg) /image/replace.gif [R,NC,L]   RewriteRule ^(.*)$ http://www.dedemao.com/image/$1 [L] 登录后复制 大概解释下:    RewriteCond %{HTTP_REFERER} !^$ [NC]  RewriteCond %{HTTP_REFERER} !dedemao.com [NC]  RewriteCond %{HTTP_REFERER} !google.com [NC]  RewriteCond %{HTTP_REFERER} !baidu.com [NC] 登录后复制  …
2024-11-25 阅读全文 →
FWQ
小程序
让微信小程序开发如鱼得水的方法
  关于微信小程序开发一直想写一篇相关的文章总结和记录下,结果拖延症犯了迟迟没有下笔;这不最近天气不错,于是找一个空闲的下午将这篇文章输出下(好像跟天气没啥关系),那我们就开始吧! 注意:本文默认开发者对微信小程序开发有一定语法基础。小程序开发文档 相关免费学习推荐: 微信小程序小结   在接触的微信小程序开发过程中,不难发现微信小程序为了方便开发人员入手对很多底层api进行了很好的封装,比如针对接口请求的wx.request(),针对路由跳转和页面导航的wx.switchTab、wx.navigateTo···等。虽然在一定程度上简化了开发,但是对于项目工程的系统化构建还是不够的,因此本人在对比以前基于Vue开发项目的经验和自身的开发习惯,总结出如下3点可供参考: 1、全局变量和配置信息统一管理; 2、封装路由守卫相关api:vue-router的router.beforeEach()和router.afterEach()真的香; 3、接口请求公共信息进一步提取封装; 4、封装接口的请求和响应拦截api:axios的axios.interceptors.request.use()和axios.interceptors.response.use()用过的都说好; 从上述四点出发,对微信小程序初始化工程进行规范优化,能够很大程度提高开发效率和进行项目维护管理。封装的好处不只体现在调用的方便上,也体现在管理的方便上,同时,公共操作集中处理,很大程度减少繁杂重复代码。 一、项目初始化    新建微信小程序项目,在项目下新建如下目录和文件: config文件夹:统一管理可配置的信息和变量; erroList.js:接口报错错误码匹配列表文件; globalData.js:全局变量统一管理文件(相当于vuex); keys.js:可配置系统信息管理文件(全局常量命名等); pages文件夹:小程序页面文件管理文件夹(每个页面一个子文件夹目录); router文件夹:路由管理文件件; router.js:对微信小程序5种路由导航api的封装; routerConfig.js:页面路由名称和路径匹配配置文件; routerFilter.js:路由前置拦截封装; servers文件件:接口请求服务管理文件夹; apis文件夹:request请求封装管理和接口api配置管理文件夹; request.js:对wx.request的Promise封装; xxx.js:对应模块的接口管理文件; requestFilter.js:接口请求和响应拦截封装文件; 其他都是初始化默认文件; 二、路由跳转和路由守卫封装…
2024-11-25 阅读全文 →
FWQ
小程序
app.json是什么样的文件
我们使用app.json文件来对微信小程序进行全局配置,决定页面文件的路径、窗口表现、设置网络超时时间、设置多 tab 等。 app.json文件是全局配置文件之一: {   "pages":[           //这个里边都是用来配置所需要用到的界面所在的文件路径,配置为第一行的是默认显示的页面。     "pages/index/index",     "pages/--------/--------”,     "pages/--------/--------",     "pages/--------/-------"//记住最后一行不要加逗号        ],   "window":{      //这个属性是用来配置界面的上边的标题栏的,     "backgroundTextStyle":"light",//这个用来设置文本的风格。     "navigationBarBackgroundColor": "#0066CC",//这个是背景颜色,记住用这种颜色格式的,不要用七种颜色的英文单词(red,blue)等,不然不起效果     "navigationBarTitleText": "--------",//这个就是文字内容     "navigationBarTextStyle":"white"//这个是文字的颜色。   },   "tabBar": {//这个的话就是配置下边的菜单栏。     "color": "#0066CC",//这个是配置文字的颜色     "selectedColor": "#FF0033",//这个是配置选中某个菜单时文字的颜色。     "borderStyle": "#336699",     "backgroundColor": "#99CC00",//这个是整个菜单栏的背景颜色     "list": [//这个是列表,就是具体设置菜单栏       {       "text": "-----",//文字       "pagePath": "pages/index/index",//就是对应到那个页面       "iconPath": "image/--------",//默认的图片…
2024-11-25 阅读全文 →
FWQ
CMS教程
织梦CMS模块管理空白怎么办
有时候会出现模块管理空白的情况,原因为获取织梦远程的模块失败导致的。 解决办法: 修改dedemodule_main.php,注释掉第91和95行: if($action=='') {     $types = array('soft'=>'模块','templets'=>'模板','plus'=>'小插件','patch'=>'补丁');     $dm = new DedeModule($mdir);     if(empty($moduletype)) $moduletype = ''; //$modules_remote = $dm->GetModuleUrlList($moduletype,$mdurl); $modules = array(); $modules = $dm->GetModuleList($moduletype); is_array($modules) || $modules = array(); //$modules = array_merge($modules,$modules_remote);     require_once(dirname(__FILE__)."/templets/module_main.htm");     $dm->Clear();     exit(); } 登录后复制 这样,如果远程的织梦模块信息获取失败时,则只显示本地的模块列表,这样就不会空白了。 推荐学习: 以上就是织梦CMS模块管理空白怎么办的详细内容,更多请关注米云其它相关文章!
2024-11-25 阅读全文 →
FWQ
小程序
了解小程序无痕埋点
今天栏目为大家介绍小程序无痕埋点。 背景 微信小程序发布以来,已经从小巧和用完即走的定位,变成了包含复杂功能和完整业务的移动应用。 随之而来的是,生产运营会出现更多难以定位和无法简单复现的bug,尤其本人从事银行业务开发,稳定性要求极高,不然很容易造成客诉甚至资金损失。 另外,为了做了用户研究,需要了解用户如何使用我们的小程序,如路由时序、点击流等。 以上都需要有完整可用的日志来发现和定位生产问题,跟踪用户行为。 日志种类 翻查api文档,小程序打印日志方式有三种,简单描述如下: 控制台日志(console):开发测试阶段用于调试 实时日志(wx.getRealtimeLogManager):实时记录用户操作,官方提供了很好的过滤筛选,可以精准定位到具体日志;日限500w条,不过多个打印会合并成一条上报;最多保留7天。传送门 本地日志( wx.getLogManage):客户端本地日志,用户点击“反馈与投诉”或者点击页面中的反馈组件可以同步到管理台;最大5m。传送门 集合上报和数据脱敏 对于具体的问题可能需要通过不同的日志来定位,或者结合起来相互印证用户的行为。 所以我们需要同时上报几种日志,但对于某些业务敏感数据可能不适合上报到外系统(微信服务器)或保存在客户端本地,我们可以在封装的集合上报函数中先对数据进行脱敏处理。 做法很简单,遍历日志对象,通过正则匹配,把敏感数据打码。 脱敏后的实时日志如下: 可以参考我们封装的日志插件 @wxa/log 无痕埋点 事件捕获 一般来说,前端日志至少包括:路由切换信息,脚本错误日志,接口请求数据,用户交互信息 在小程序中,前三可以通过官方监听接口和封装函数的方法来抓取数据并且上报。 唯独用户交互信息,因为小程序的双线程架构,导致没办法像h5那样直接在document对象中抓取用户事件。只能在每个wxml模版最外层绑定事件来监听用户行为。 但是对于非冒泡事件(如catchtap)和组件事件(如getuserinfo),还是没办法捕获。 再者,也没办法捕获所有事件,组件事件是不会冒泡的。 劫持事件 另辟蹊径,能不能劫持小程序中所有事件函数来实现事件捕获?可以。…
2024-11-25 阅读全文 →
FWQ
CMS教程
织梦DedeCMS如何调用文章内容页的评论数
织梦如何调用文章内容页的评论数? 织梦DedeCMS调用文章内容页的评论数 推荐学习: 第一步:首先在plus目录下,建立一个文件名为:feedcount.php,代码如下: document.write("共有<?php require_once(dirname(__FILE__)."/../include/common.inc.php"); $row = $db->GetOne("select count(*) as fc from dede_feedback where aid='{$aid}'"); if(!is_array($row)){ echo "0"; }else { echo $row['fc']; } ?&gt;位用户了发表评论"); 登录后复制 第二步:然后在你的模板中需要显示评论总数的地方,加入以下JS代码:  <script></script> 登录后复制 以上就是织梦DedeCMS如何调用文章内容页的评论数的详细内容,更多请关注米云其它相关文章!
2024-11-25 阅读全文 →
FWQ
小程序
微信公众号开发,实现倒计时的一个功能(纯代码)
以下是我自己编写的一个代码,功能是在微信公众号开发过程中实现倒计时的。效果如下,订单已提交,请在2分57秒内完成支付。纯代码解析。 开始的思路没有考虑页面在后台运行以及锁屏等情况。代码如下: let interval = setInterval(() =&gt; {             let {staticTime} = this.state;             staticTime = staticTime - 1;             if (staticTime  {             let {backGroundTime, staticTime} = this.state;             this.setState({                 backGroundTime:0             });             staticTime = staticTime - backGroundTime - 1;              if (staticTime <p>listenPageShowHideHandle = () =&gt;{</p><pre class="brush:js;toolbar:false;">let {backGroundTime} = this.state; let start, end; let self = this; document.addEventListener("visibilitychange", function() {     if(document.visibilityState == 'hidden'){         start = new Date().getTime();     }else if(document.visibilityState == 'visible'){         end = new Date().getTime();         backGroundTime = Math.floor((end - start)/1000);         self.setState({backGroundTime});         console.log('时间差:', backGroundTime);     }     console.log( document.visibilityState );…
2024-11-25 阅读全文 →
FWQ
CMS教程
DEDECMS V5.5 怎么正向整合 Discuz 6.0
v5.5 怎么正向整合 discuz 6.0? DEDECMS V5.5 正向整合 Discuz 6.0 (无Ucenter ) 推荐学习: 今日有客户提出整合 DEDECMS 5.5 和 老版本的 Discuz 6.0 ,都是GBK编码, DEDECMS V5.5 是当前最新的DEDE版本, Discuz V6.0 就相对时间久远了些    实现效果: …
2024-11-25 阅读全文 →
FWQ
CMS教程
帝国cms自动刷新插件是什么意思
帝国cms自动刷新插件是一种附加组件,允许管理员在指定时间间隔内自动刷新网站页面,从而及时更新内容、提升加载速度和改善用户体验。工作原理:插件在网页中插入javascript代码,在指定时间间隔内触发请求,从服务器获取更新后的内容,如果有更新,则加载到页面中。适用于新闻网站、博客、股票市场等需要不断更新或定期显示动态内容的网站。 帝国CMS自动刷新插件 帝国CMS自动刷新插件是一个附加组件,允许网站管理员在指定的时间间隔内自动刷新网站页面。 作用 自动刷新插件的主要作用是: 在不刷新浏览器的情况下及时更新网站内容。 提高页面加载速度,因为服务器已经缓存了更新后的内容。 改善用户体验,让用户可以实时查看最新信息。 工作原理 自动刷新插件利用以下机制工作: 在网页中插入JavaScript代码。 该代码在指定的时间间隔内触发一个请求,从服务器获取更新后的内容。 如果有更新,则将新内容加载到页面中,而无需刷新浏览器。 使用场景 自动刷新插件适用于需要不断更新或定期显示动态内容的网站,例如: 新闻网站、博客或论坛 股票或汇率市场更新 体育比赛或实时事件更新 部署 要使用自动刷新插件,需要执行以下步骤: 下载并安装插件。 在帝国CMS控制台中启用插件。 配置插件设置,包括刷新间隔、要刷新的页面和其他选项。 将插件代码插入到要自动刷新的网页中。 注意事项 自动刷新插件可能会对服务器性能产生影响,特别是对于访问量大的网站。 对于不需要频繁更新的内容,避免使用自动刷新,因为它可能会影响用户体验。 确保插件与帝国CMS的版本兼容。…
2024-11-25 阅读全文 →