最新公告
  • 欢迎光临酷网站-KUWZ.CN 本站专注极品源码亲测发布 不做垃圾搬运 只发极品!立即加入我们
  • 帝国CMS新闻模型怎么转文章模型【教程】

    帝国CMS新闻模型怎么转文章模型?帝国CMS把新闻模型文章转成文章模型的方法!

    刚开始接触帝国cms的时候,用新闻模型建了一个文章阅读站,最近网站转型,想发一些长篇文章,需要将新闻模型转为文章模型,搜了一下论坛和互联网,都没有能用于7.2的相关插件或工具,只好自己动手写一个。这里把代码和步骤分享出来,希望能帮助到其它人。

    1、老数据备份

    非常重要。万一在转换过程中出现意外,确保老数据安全部丢失。

    2、数据库转换

    将以下代码保存为一个php文件,文件编码格式与你网站编码相同,代码中的参数设置部分按照实际情况来填写。

    假设你为此新建了一个名为 zh.php 的文件,那么将此文件放到 e/update/ 文件夹中。那么你这时在浏览器中执行以下网址:

    http://你的网址/e/update/zh.php?tochange=1

    此程序会分组转换数据。

    请注意:

    (1)不能重复转换,否则数据丢失。

    (2)转换完之后请立即在服务器上删除此文件。

    (3)此程序适用于帝国cms7.0及后续版本。

    <?php
    error_reporting(E_ERROR | E_WARNING | E_PARSE);
    
    @set_time_limit(1000);
    
    //********************* 参数设置开始 *********************
    
    $newstb="gushi"; //需要转换的数据表
    $cf='newstext';//需要转换的字段名
    $fa=1;//字段位置,0为主表,1为副表
    $changeline=50; //每组转换数
    
    
    //********************* 参数设置结束 *********************
    
    if($_GET['tochange']==1)
    {
    	include("../class/connect.php");
    	include("../class/db_sql.php");
    	include("../class/functions.php");
    	$link=db_connect();
    	$empire=new mysqlquery();
    	dp_ChangeNewsToArticle($_GET['start']);
    }
    
    //开始转换
    function dp_ChangeNewsToArticle($start=0){
    	global $empire,$newstb,$cf,$fa,$changeline,$dbtbpre;
    	$start=(int)$start;
    	if($start==0){
    		$ckist=$empire->fetch1("select fid,savetxt from {$dbtbpre}enewsf where tbname='$newstb' and f='$cf' limit 1");
    		if(!$ckist['fid']){
    			exit("参数设置错误");
    		}
    		if(!$ckist['savetxt']){
    			//字段表
    			$empire->query("update {$dbtbpre}enewsf set savetxt=1 where tbname='$newstb' and f='$cf' limit 1");
    			//组合存文本
    			TogSaveTxtF(1);
    			//更新缓存
    			GetConfig(1);
    		}
    	}
    	$b=0;
    	$tbname=$fa?$newstb."_data_1":$newstb;
    	$sql=$empire->query("select id,classid,".$cf." from {$dbtbpre}ecms_".$tbname." where id>$start order by id limit ".$changeline);
    	while($r=$empire->fetch($sql)){
    		$b=1;
    		$newid=$r['id'];
    		$newstext=dp_ReturnChangeNewstextUrl($r[$cf],$r['id']);
    		$empire->query("update {$dbtbpre}ecms_".$tbname." set ".$cf."='$newstext' where id='$newid' limit 1");
    	}
    	if($b==0)
    	{
    		echo"恭喜您!转换完毕。";
    		exit();
    	}
    	echo"一组数据转换完毕,正进入下一组 (<font color=red><b>".$newid."</b></font>)......<script>self.location.href='index.php?tochange=1&start=$newid';</script>";
    	exit();
    }
    
    //返回内容地址
    function dp_ReturnChangeNewstextUrl($value,$id){
    	global $public_r,$newstb,$cf;
    	//存放文本
    	if(strstr($public_r['savetxtf'],",".$newstb.".".$cf.","))
    	{
    		$truetime=time();
    		//建立目录
    		$thetxtfile=GetFileMd5().$id;
    		$truevalue=MkDirTxtFile(date("Y/md",$truetime),$thetxtfile);
    		//写放文件
    		EditTxtFieldText($truevalue,$value);
    		$value=$truevalue;
    	}
    	else{
    		exit("参数设置错误");
    	}
    	return $value;
    }
    ?>
    <html>
    <head>
    <title>新闻模型转文章模型程序</title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <style>
    a:link     { COLOR: #000000; TEXT-DECORATION: none }
    a:visited   { COLOR: #000000 ; TEXT-DECORATION: none }
    a:active   { COLOR: #000000 ; TEXT-DECORATION: underline }
    a:hover    { COLOR: #000000 ; TEXT-DECORATION:underline }
    .home_top { border-top:2px solid #4798ED; }
    .home_path { background:#4798ED; padding-right:10px; color:#F0F0F0; font-size: 11px; }
    td, th, caption { font-family:  "宋体"; font-size: 12px; color:#000000;  LINE-HEIGHT: 165%; }
    .hrLine{MARGIN: 0px 0px; BORDER-BOTTOM: #807d76 1px dotted;}
    </style>
    </head>
    <body>
      <p><br>
      <br>
      </p>
      <form method="get" action="index.php" onsubmit="return confirm('确认要执行?');">
      <table width="500" border="0" align="center" cellpadding="3" cellspacing="1" bgcolor="#0472BC">
        <tr> 
          <td height="25"><div align="center"><font color="#FFFFFF" size="3"><strong>新闻模型转文章模型程序</strong></font></div></td>
        </tr>
        <tr bgcolor="#FFFFFF"> 
          <td height="50"> 
            <div align="center"> 
              <input type=submit name=ok value="点击开始转换">
              <input type=hidden name="tochange" value=1>
            </div></td>
        </tr>
      </table>
    </form>
    </body>
    </html>

    3、模板修改

    如果你在之前模板中用php代码调用过被转换的字段,则此时需要用函数 GetTxtFieldText 来读取。

    例如,在之前你调用newstext用代码:

    <?=$navinfor['newstext']?>

    newstext转换成存文本之后必调用代码是:

    <?=GetTxtFieldText($navinfor['newstext'])?>

    4、补充说明:新闻模型与文章模型的区别

    新闻系统模型的内容(newstext)是存放数据库的;而文章系统模型的内容(newstext)是存放于文本文件。对于数据量比较大的,推荐使用文章系统模型。

    新闻系统模型支持内容(newstext)搜索;而文章系统模型不支持内容(newstext)搜索。

    OK,到这里就完成了,大家快去试试吧!

     

    1. 本站所有资源均来源于用户上传和网络,如有侵权请邮件联系站长!kuwz@foxmail.com (注明来意)
    2. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!
    3. 如果你也有好源码或者教程,可以到审核区发布,分享有金币奖励和额外收入!
    4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
    5. 如有链接无法下载、失效或广告,请联系管理员处理!
    6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
    7. 本站不保证所提供下载的资源的准确性、安全性和完整性,源码仅供下载学习之用!
    8. 如用于商业或者非法用途,与本站无关,一切后果请用户自负!
    9. 如遇到加密压缩包,默认解压密码为"www.kuwz.cn",如遇到无法解压的请联系管理员!
    酷网站 » 帝国CMS新闻模型怎么转文章模型【教程】

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    酷网站与独木源码网啥关系?
    (⊙o⊙)…简单来说,同一家的!

    发表评论

    • 3059会员总数(位)
    • 1400资源总数(个)
    • 1本周发布(个)
    • 0 今日发布(个)
    • 1215勤劳运行(天)

    提供最优质的站长资源集合

    升级SVIP 极品资源
    升级SVIP尊享更多特权立即升级