dedecms 織夢自動審核會員發(fā)表的文章

字號:


    本文介紹通過修改源碼讓DEDECMS實現(xiàn)自動審核會員發(fā)布的文章,方便有時站長不在電腦前,并且能夠自動更新網(wǎng)站的解決方法。
    分析了一下,DEDE的文章有沒有審核發(fā)布主要是arcrank這個參數(shù)的值決定的。所以要把DEDE自動審核發(fā)布文章也很容易實現(xiàn)了。
    <?php
    //自動生成HTML版
    if(isset($_GET['pub'])){
    require_once (dirname(__FILE__) . "/include/common.inc.php");
    require_once DEDEINC."/arc.partview.class.php";
    //發(fā)布審核稿件
    require_once(DEDEINC."/arc.archives.class.php");
    for ($i=1; $i<=1; $i++) {
    $row = $dsql->GetOne("select * from 'dede_arctiny' where arcrank = -1 order by id limit 1");
    $id = $row['id'];
    $iquery = "update 'dede_arctiny' set arcrank = 0 where id='$id'";
    $dsql->ExecuteNoneQuery($iquery);
    $iquery2 = "update 'dede_archives' set arcrank = 0, ismake = 1 where id='$id'";
    $dsql->ExecuteNoneQuery($iquery2);
    $dsql->ExecuteNoneQuery("Update 'dede_taglist' set 'arcrank' = 0 where aid='$id'");
    $ac = new Archives($id);
    $rurl = $ac->MakeHtml();
    }
    //更新首頁
    $GLOBALS['_arclistEnv'] = 'index';
    $row = $dsql->GetOne("Select * From 'dede_homepageset'");
    $row['templet'] = MfTemplet($row['templet']);
    $pv = new PartView();
    $pv->SetTemplet($cfg_basedir . $cfg_templets_dir . "/" . $row['templet']);
    $pv->SaveToHtml(dirname(__FILE__).'/index.html');
    include(dirname(__FILE__).'/index.html');
    exit();
    }else{
    header('HTTP/1.1 301 Moved Permanently');
    header('Location:index.html');
    }
    ?>
    上面的代碼主要就是更新arcrank的值,沒有發(fā)布的文章arcrank=-1,而發(fā)布的文章arcrank=0,所以自審核的文章就是把arcrank為-1的文章找出來,把文章的arcrank屬性變?yōu)?。
    找出文件:
    $row = $dsql->GetOne("select * from 'dede_arctiny' where arcrank = -1 order by id limit 1″);
    改變屬性:
    $iquery2 = "update 'dede_archives' set arcrank = 0, ismake = 1 where id='$id'";
    $dsql->ExecuteNoneQuery($iquery2);
    相關表的更新:
    $dsql->ExecuteNoneQuery($iquery2);
    $dsql->ExecuteNoneQuery("Update 'dede_taglist' set 'arcrank' = 0 where aid='$id'");
    經(jīng)常上面的修改,再重新生成頁面。就能自動審核"未審核稿件"。全部都自動化了。當然還可以設置欄目,限定自動審核的范圍,這就看具體的需求了。