PHPCMS替换内容

发表于2015-09-14 17:06:22来源于创想网页设计工作室

次点击[] [] [] [打印] [关闭窗口] [评论]

欢迎大家加入创想工作室QQ群 网络瘫痪上不了网?电脑出故障?找破解软件?加入创想工作室QQ群,向大神求助,一步解决问题!QQ群号码:326338868[点此获取更多QQ群]
我们在用PHPCMS建站时会遇到网站部分内容需要替换的问题,比如我们采集别人的网站,花了大半天才采集完,然后发现把别人的网站信息(联系电话、网站名字等)也原封不动的抄过来了,这时是相当的郁闷,删除掉重新采集吧,有点浪费时间。
 
一般我们可以有2种方法来解决,一是直接在数据库里面批量替换;二是在模板里面替换。今天我们来分享的是后面种办法,毕竟第一种办法有点简单粗暴,稍微操作不慎可能把数据库也弄坏而造成网站瘫痪了。
 

适应于以下情况

  • 栏目URL不出现index.html等后缀
  • 用了伪静态结构发生了变化
  • 网站信息由变得(如公司地址搬迁了、联系方式变了)
  • ……
 
在PHPCMS官网论坛搜了一下,没有找到自带的替换函数,只看到有个字符串截取的str_cut,用法:{str_cut($r[content],60)},如果要去掉html代码的话那就是:{str_cut(strip_tags($r[content]),60)}
 
没有现成的标签可以用,那就只能用PHP的这2个函数了:str_replacepreg_replace。(据说str_replace效率比较高)
 
把文章内容中的“我爱你”变成“我爱中国”
<?php $content=str_replace('我爱你','我爱中国',$content); echo $content;?>
 
把文章内容中的“我爱你”、“我饿了”对应变成“我爱中国”、“我吃饱了”
<?php $content=str_replace(array('我爱你','我饿了'),array('我爱中国','我吃饱了'),$content); echo $content;?>
 
我们知道{catpos($catid)}这个标签是显示当前位置的,要是我想把网址中的html去掉又改怎么弄呢?很多朋友说那还不简单!代码是这样呗:
{catpos(str_replace('/html','',$catid))}
 
<?php $url=str_replace('/html','',$catid); echo catpos($url);?>
 
结果测试,上面的代码都是不行的!正确的代码是这样的:
{php $c_url = catpos($catid);}
<?php $url=str_replace('/html','',$c_url); echo $url;?>

© copyright 2002-2024, 22BA.COM All Rights Reserved

网站备案号:粤ICP备19114910号

ChuangXiang Design Studio - WebDesign & Internet Marketing

关于我们业务范围联系我们开心一刻网站地图

QQ群一:326338868QQ群二:78712271

QQ群三:193078177

邮箱:news@22ba.com

地址:深圳市福田区金田路现代国际大厦2606