如何在使用DedeCMS发布未审核文章时自动更新为当前时间?

在dedecms中,发布未审核文章时自动将时间改为当前最新时间,可以通过修改系统设置或使用插件实现。

在织梦CMS(DedeCMS)中,发布未审核文章时自动将时间改为当前最新时间的功能可以通过修改系统文件和模板文件来实现,以下是详细的步骤和方法:

如何在使用DedeCMS发布未审核文章时自动更新为当前时间?

方法一:修改系统文件

1、找到并编辑archives_do.php文件

打开DedeCMS的安装目录,找到dede文件夹。

在该文件夹中找到archives_do.php文件,并使用文本编辑器打开它。

在文件中找到大约第252行的位置,将以下代码:

     $maintable = ( trim($row['maintable'])=='' ? '#@__archives' : trim($row['maintable']) );
     $dsql>ExecuteNoneQuery("UPDATE#@__arctiny SET arcrank='0' WHERE id='$aid' ");
     if($row['issystem']==1)
     {
     $dsql>ExecuteNoneQuery("UPDATE".trim($row['addtable'])." SET arcrank='0' WHERE aid='$aid' ");
     }
     else
     {
     $dsql>ExecuteNoneQuery("UPDATE$maintable SET arcrank='0', dutyadmin='".$cuserLogin>getUserID()."' WHERE id='$aid' ");
     }
     $dsql>ExecuteNoneQuery("UPDATE#@__taglist SET arcrank='0' WHERE aid='$aid' ");
     $pageurl = MakeArt($aid,false);

替换为以下代码:

     $maintable = ( trim($row['maintable'])=='' ? '#@__archives' : trim($row['maintable']) );
     $newdate = time();
     $dsql>ExecuteNoneQuery("UPDATE#@__arctiny SET sortrank='$newdate',senddate='$newdate',arcrank='0' WHERE id='$aid' ");
     if($row['issystem']==1)
     {
     $dsql>ExecuteNoneQuery("UPDATE".trim($row['addtable'])." SET pubdate='$newdate',sortrank='$newdate',senddate='$newdate',arcrank='0' WHERE aid='$aid' ");
     }
     else
     {
     $dsql>ExecuteNoneQuery("UPDATE$maintable SET pubdate='$newdate',sortrank='$newdate',senddate='$newdate',arcrank='0', dutyadmin='".$cuserLogin>getUserID()."' WHERE id='$aid' ");
     }
     $dsql>ExecuteNoneQuery("UPDATE#@__taglist SET arcrank='0' WHERE aid='$aid' ");
     $pageurl = MakeArt($aid,false);

这样,在更新文章时,系统会自动将发布时间、排序时间和发送时间设置为当前时间。

2、修改arc.listview.class.php文件(可选):

打开include/arc.listview.class.php文件。

查找以下代码(会查找到两个,两个都要改):

     if(preg_match('/index/i', $listitem)) $plist .= $indexpage; if(preg_match('/pre/i', $listitem)) $plist .= $prepage; if(pr...

将其替换为:

     if(preg_match('/index/i', $listitem)) $plist .= $indexpage; if(preg_match('/pre/i', $listitem)) $plist .= $prepage; if(preg_match('/last/i', $listitem)) $plist .= $lastpage; if(preg_match('/next/i', $listitem)) $plist .= $nextpage;

这一步是为了确保列表页能够正确显示分页信息。

如何在使用DedeCMS发布未审核文章时自动更新为当前时间?

方法二:修改模板文件

1、找到并编辑article_edit.htm文件

打开dede/templets/article_edit.htm文件。

找到以下代码:

     $nowtime = GetDateTimeMk($arcRow["pubdate"]);
     echo "<input name="pubdate" value="$nowtime" type="text" id="pubdate" style="width:200">";

并将其替换为:

     if($arcRow["arcrank"]!=1){
     $nowtime = GetDateTimeMk($arcRow["pubdate"]);
     echo "<input name="pubdate" value="$nowtime" type="text" id="pubdate" style="width:200">";
     }else{
     $nowtime =date('Ymd H:i:s');
     echo "<input name="pubdate" value="$nowtime" type="text" id="pubdate" style="width:200">";
     };

这样,在编辑未审核的文章时,发布时间框里将自动显示当前系统时间。

2、增加当前时间按钮(可选)

在上述代码后面增加一个按钮,用于点击后更新时间为当前时间,代码如下:

     <input TYPE="button" value="当前时间" OnClick="document.form1.pubdate.value='<?php echo $showtime=date("Ymd H:i:s");?>'" style="border:1px solid #ddd;background:#fff;" />

这种方法提供了更多的灵活性,允许用户在需要时手动更新时间。

FAQs

问题1:如何在DedeCMS中设置文章发布后自动生成HTML?

答:在DedeCMS中,要设置文章发布后自动生成HTML,可以按照以下步骤操作:

如何在使用DedeCMS发布未审核文章时自动更新为当前时间?

1、进入DedeCMS后台管理界面。

2、在左侧菜单栏中,依次点击“系统” > “系统基本参数”。

3、在打开的页面中,切换到“性能选项”标签页。

4、在“发布文章后直接生成HTML”选项中,选择“是”。

5、保存设置即可,这样,在发布文章时,DedeCMS会自动生成对应的HTML文件。

问题2:如何批量将未审核稿件改为已审核状态?

答:要批量将未审核稿件改为已审核状态,可以通过执行SQL语句来实现,具体操作如下:

1、登录到数据库管理工具(如phpMyAdmin或命令行)。

2、选择DedeCMS使用的数据库。

3、执行以下SQL语句:

   UPDATE dede_archive SET arcrank='0';
   UPDATE dede_arctiny SET arcrank='0';

这两条语句分别更新了dede_archive表和dede_arctiny表中的arcrank字段为0,表示文章已审核,在执行这些操作之前,请确保已经备份好数据库,以防万一出现问题可以恢复数据。

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1219150.html

(0)
未希的头像未希新媒体运营
上一篇 2024-10-16 19:36
下一篇 2024-10-16 19:44

相关推荐

  • 如何实现DedeCMS与digg Ajax之间的跨域交互?

    要实现DedeCMS digg Ajax跨域,可以使用JSONP或者CORS。具体操作如下:,,1. JSONP:在前端页面中,将请求的src属性设置为后端接口地址,并添加一个回调函数参数。后端接口根据这个回调函数参数返回相应的数据。,,2. CORS:在后端设置响应头,允许跨域访问。前端发起请求时,浏览器会自动添加一些验证信息,后端需要对这些信息进行验证。

    2024-08-04
    018
  • DedeCms如何助力网站SEO优化?探索全面攻略的秘诀!

    利用DedeCMS进行SEO优化,可以提升网站在搜索引擎中的排名和流量。

    2024-10-03
    04
  • 如何在DedeCMS中同时显示当前栏目及其上级栏目的名称?

    你可以使用以下代码来调用当前栏目名和上级栏目名:,,“php,$type = $GLOBALS[‘dt’][‘type’]; // 当前栏目ID,$channelid = $GLOBALS[‘dt’][‘channelid’]; // 当前栏目的上级栏目ID,,// 获取当前栏目名,$query = “SELECT typedir FROM dede_arctype WHERE id=’$type'”;,$dsql˃Execute($query);,$current_column_name = $dsql˃GetOne(‘typedir’);,,// 获取上级栏目名,$query = “SELECT typedir FROM dede_arctype WHERE id=’$channelid'”;,$dsql˃Execute($query);,$parent_column_name = $dsql˃GetOne(‘typedir’);,,echo “当前栏目名:” . $current_column_name . “”;,echo “上级栏目名:” . $parent_column_name;,“,,这段代码会从数据库中查询当前栏目名和上级栏目名,并输出结果。请确保在运行此代码之前已经连接到了正确的数据库,并且具有相应的权限。

    2024-10-10
    02
  • 如何调整织梦DeDeCms系统中的会员登录及退出功能,使其跳转至不同页面而非首页?

    织梦DeDeCms会员登录或退出跳转到首页的修改方法1. 修改会员登录跳转织梦DeDeCms默认的会员登录后跳转地址通常是在会员中心模块的配置中设置的,以下是修改登录后跳转到首页的方法:步骤:1、登录织梦DeDeCms后台管理,2、在后台左侧菜单中找到并点击“会员中心”,3、在会员中心页面,找到“登录后跳转设置……

    2024-10-07
    06

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

免费注册
电话联系

400-880-8834

产品咨询
产品咨询
分享本页
返回顶部
云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购  >>点击进入