从数据库中我们可以看到,栏目ID的子栏目ID包含 本栏目ID和所有级别的子栏目ID,顺序分别为 本栏目ID=>一级子栏目ID=>二级子栏目ID,以此类推,其次是新增加的ID排在前面。...栏目ID的父栏目ID原理相同。...第二行代码开始判断,如果存在第二个值,则根栏目ID则取它,不存在则取当前栏目ID,说明当前ID已经是根栏目ID了。...下面是我总结的获取栏目ID大全 当前栏目ID {$catid} 顶级栏目ID {$top_parentid} {$CATEGORYS[$top_parentid][catid]} 终极栏目ID 父栏目ID {$parentid} {$CATEGORYS[$parentid][catid]} 子栏目ID(不包含本身) {$arrchildid} 子栏目ID(包含本身) {$CATEGORYS
$data $r} {$r[catname]} {/loop} {/pc} 调用哪一级别的栏目列表,主要取决于参数catid的值。...一级栏目列表 catid="0" 同级栏目列表 catid="$parentid" 比较复杂的情况 如果我们的栏目有很多级,希望取到最小栏目的父栏目列表该怎么办? 这串代码的意思是,取出当前栏目的所有子栏目ID,观察下数据库会发现,位于最右边的则是当前栏目的最小子栏目ID,所以取出最后一个栏目的ID,最后就用$CATEGORYS得出最小栏目ID的父栏目ID。...最后,我们只需要用下面代码即可调用出最小栏目的父栏目列表 {pc:content action="category" catid="$school" num="10" siteid="$siteid"...CSS给这个类增加样式即可实现当前栏目高亮功能。
HPCMS当父栏目和子栏目都为静态时,当给子栏目增加一篇文章时,会自动更新相关栏目,此时子栏目的分页url规则将会覆盖父栏目的url规则,也就是说父栏目的url分页规则失效。...以上这种情况在动态页面不受影响,手动生成栏目页也不会受影响。 目前没有完美的解决方案,可能PHPCMS官方开发人员的思路是栏目分页的格式无论是父栏目和子栏目理当相同才对。...暂时能用到的解决方案:取消自动生成相关栏目的功能 在 /phpcms/modules/content/classes/html.class.php 末尾可以找到,注释掉自动生成父栏目的相关代码即可。
在我们填写了栏目描述,怎么调用出来。...调用文章位置导航 {catpos($catid)} 调用当前栏目链接 {$CATEGORYS[$catid][url]} 调用当前栏目名称 {$CATEGORYS[$catid][catname]}...调用当前栏目的描述调用出来 {$CATEGORYS[$catid][description]}
phpcms调用子栏目名称相对比较简单一些,也是用{pc:content}来调用,只是把action设置为category,catid如果为0的话是调用所有一级栏目,如果是其他数字的话,则调用相应栏目的子栏目...,比如以下的案例,catid="13"是调用栏目id为13的所有子栏目。...loop $data $r} {$r[catname]} {/loop} {/pc} phpcms...调用子栏目文章列表:再嵌套一个{pc:content}调用 {pc:content action="category" catid="13" num="10" siteid="$siteid"order
1、用途CATEGORYS 是一个二维数组,主要用来保存当前频道或者模块所以栏目的基本配置信息。2、如何设置您可以登录后台进入模块或者频道的栏目管理,然后在线修改任何一个栏目设置即可改变参数值。...修改栏目参数设置系统会更新phpcms_category里相应记录的值,同时把各栏目基本信息数组缓存到 ..../data/cache/category_频道ID.php ,每次访问有栏目的模块或频道时系统会自动加载其栏目基本配置信息。...常用的有 CATEGORYS[catid][catid] 栏目id CATEGORYS[catid][module] 栏目所在的模块 CATEGORYS[catid][type] 栏目类型 CATEGORYS...[child] 是否有子栏目 CATEGORYS[catid][arrchildid] 栏目的所有子栏目id CATEGORYS[catid][items] 栏目信息数 CATEGORYS[
直接上调用的标签 {$CATEGORYS[$catid][image]} 上个实例在 最后将顶级栏目下子栏目循环显示代码贴出来方便大家学习: {if $top_parentid} {pc:content
在PHPCMS中只能调用直接分类下的文章,也就是说如果指定一个分类ID存在子分类,那么将无法调出文章。...{loop $data $v} {$v[title]} {/loop} {/pc} 这里我选了3个指定的分类id,其中23,24没有子栏目...,19有很多子栏目。...subcatid = implode(',', $subcatid);} 然后在读取SQL的条件中这样写 WHERE catid in(finalcatid)其实个人觉得这种做法纯属鸡肋,要获取一个指定栏目下的所有子栏目
{php $listrv = string2array($v[video_thumbulr]);} {loop $listrv $rv} {if $n<=3}<...
PHPCMS调用指定频道|栏目地址URL和名称 1.调用phpcms频道|栏目URL代码: {$CATEGORYS[id]['url']} 例如:调用catid=41的栏目地址: {$CATEGORYS...[41]['url']} 2..调用phpcms频道|栏目URL代码 {$CATEGORYS[id]['catname']} 例如:调用catid=41的栏目名称,调用代码就用 {$CATEGORYS[...41]['catname']} 注: {$CATEGORYS[id]['url']} 和{$CATEGORYS[id]['catname']} 中的id替换成你的频道栏目ID。
PHPCMS使用方便 每更新一篇文章会自动更新首页以及文章所在栏目页,不像其他CMS每次更新完毕后,还要点击生成首页,生成栏目页,多麻烦啊。...即使文章中包含了'我很爱你'这个词,但是却已跟其他词组合成了锚文本,那么就不会再替换,如'爱你','其实我很爱你' PHPCMS扩展性强 使用PHPCMS扩展性能非常强,进行二次开发相比其他程序更加的容易...phpcms有哪些缺点 任何一款CMS都不是完美的,phpcms同样如此。...无法查看所有文章,只能进入栏目后查看栏目下的文章 无法复制栏目配置,不过官方论坛已经有人提供了该插件 必须主机支持fsockopen函数,然绝大多数虚拟空间都会禁用该函数,只能手动修改程序来避免这个问题...这也正是PHPCMS的魅力所在。
今天在搞Phpcms做站时,需要在列表页、首页调用文章列表调用文章的点击量和评论排行,那么怎么才能做到在Phpcms v9首页、频道页、列表页、推荐位等页面获取文章浏览量和评论统计呢?...原因起于phpcms官方默认的模版没有在列表页面调用过文章点击量和评论数量,而且文章的内页调用浏览量hit的方法不适用于列表页。 下面是具体的代码,分享在此。...一、Phpcms列表页面取得文章点击量及评论数量: {pc:content action="lists" catid="$catid" num="25" order="id DESC" page="$page...$r[title]} 点击:{$views} 评论数:{if $comment_total}{$comment_total}{else}0{/if} {/loop} {$pages} {/pc} 二、Phpcms...modelid));} {$v[title]} 点击:{$views} 评论数:{if $comment_total}{$comment_total}{else}0{/if} {/loop} {/pc} 三、Phpcms
使用织梦dedecms系统中的批量创建栏目时,发现,无法选择隶属栏目为自己定义的独立模型的栏目。...DedeCMS批量创建栏目时隶属栏目无法选择自定义的独立模型问题解决办法:找到:dede/catalog_add.php (dede后台管理目录下)第51行:$typeOptions= $tl->GetOptionArray
程序中图片是动态显示的原先把打算把图片保存在服务器端然后显示可是由于ie的缓存问题导致图片无法实时更网络 程序中图片是动态显示的...原先把打算把图片保存在服务器端然后显示 可是由于ie的缓存问题导致图片无法实时更新显示 所以改为把图片存在session中然后再显示 需要保存的时候再保存到本地 //--------------chart.ashx.cs...ashx 为扩展名的文件是HTTP handlers ,SimpleHandlerFactory 事件工厂知道如何编译该文件,并实例化IHttpHandler 接口,不需要配置web.config也不需要更新
新接的一位客户说要把旧phpcms网站迁移到新的服务器并更换新域名,这对ytkah是小菜一碟,但往往事与愿违,忽略了一些细节会很惨的。...进入新站后台怎么都无法生成内容,提示Table 'led_com.lz_' doesn't exist,找了半天都没搞定,重新导入数据库了也无济于事,最后去看了文件夹的权限,果然有问题,caches所有者是...root,试着把它改为www,再次更新内容就ok了。...6、更新系统缓存。点击后台右上角的“更新缓存”按钮。 7、进入内容-》附件管理-》附件地址替换。把附件地址批量的替换为新的地址。 8、内容-》批量更新URL 。...把所有的文章的地址都更新一下。 9、下面就是把全站都生成一次了。 ok,就写这些步骤了,祝你好运!
phpcms v9文章页调用栏目链接调用成首页 解决办法: url写入失败,所以需要手动写入栏目文件夹名称 文章的设置需注意选择内容页模板 然后批量更新栏目页,url,内容页就可以了
在用PC V9建站的时候,很多朋友会想到Phpcms V9判定当前栏目,让当前栏目高亮的功能,在这里分享判断当前栏目、当前栏目高亮的代码,同时在此要分享if语句判断分类信息是否过期,CMSYOU给力。...Phpcms V9判定当前栏目,让当前栏目高亮 如果是在栏目列表(非单独页面)下,Phpcms V9判定当前栏目让当前栏目高亮代码可以用下面的调用代码: {pc:content action="category...,定义了class为current的类,于是可以在css中定义current的样式,实现phpcms中当前栏目的名称样式显示不一样!...Phpcms V9分类信息if语句判断是否过期 分类信息内容页if语句判断分类信息是否过期: {if date('Y-m-d')>="$r[endtime]"}已经过期...{else}截止{$r[endtime]}{/if} 实际上,Phpcms V9判断当前栏目高亮、判断分类信息是否过期都是采用了采用
PHPCMS的首页默认只会生成一个页面,要实现分页功能,要么把首页动态化,要么新建一个分类在url规则管理路径生成到首页。...动态页面 由于PHPCMS默认每更新一篇文章都会自动更新首页和栏目页,为了实现动态首页,我们需要在服务器中把index.php的优先级高于index.html 动态页面的分页,必须用$_GET[page...告诉你,因为PHPCMS的默认首页就是index.html,别到时候随便更新一篇文章,自动更新首页时把我们设定的给替换掉了。...衍生问题当新增一篇文章时会自动更新父栏目,这是父栏目的分页格式会跟子栏目相同,见 PHPCMS父栏目分页格式错误当我们把PHPCMS当作博客用时,一级栏目只有一个,只要用PHP替换法则可解决问题。...div class="pages"> {str_replace("/blog/", "", str_replace("/index.htm","/",$pages))} {/if} 这里父栏目的目录为
, $array, $path = '') //写缓存 function cache_delete($file, $path = '') //删除缓存文件 function string2array..., $width = 100, $height = 100 ,$autocut = 1) //生成缩略图 function get_sql_catid($catid) //取得$catid的所有子栏目..., $path = '') //写缓存 function cache_delete($file, $path = '') //删除缓存文件 function string2array($data) //...imgurl, $width = 100, $height = 100 ,$autocut = 1) //生成缩略图 function get_sql_catid($catid) //取得$catid的所有子栏目...3、执行一条更新操作 $db->update($tablename, $array, $where);// $tablename 表名, $array 字段名与值的对应 数组, $where 更新条件
看到好些人在写更新缓存数据代码时,先删除缓存,然后再更新数据库,而后续的操作会把数据再装载的缓存中。然而,这个是逻辑是错误的。...试想,两个并发操作,一个是更新操作,另一个是查询操作,更新操作删除缓存后,查询操作没有命中缓存,先把老数据读出来后放到缓存中,然后更新操作更新了数据库。...这里,我们先不讨论更新缓存和更新数据这两个事是一个事务的事,或是会有失败的可能,我们先假设更新数据库和更新缓存都可以成功的情况(我们先把成功的代码逻辑先写对)。...为什么不是写完数据库后更新缓存?...Write Back套路,一句说就是,在更新数据的时候,只更新缓存,不更新数据库,而我们的缓存会异步地批量更新数据库。
领取专属 10元无门槛券
手把手带您无忧上云