1、编辑模板文件
打开模板文件:找到并打开/admin/templates/article_info.htm
文件,这个文件是用于显示文章信息的后台模板。
调用日历JS代码:在文件的第三行下面加入以下代码,以引入日历插件和样式表。
<script type="text/javascript" src="../js/calendar.php?lang={$cfg_lang}"></script> <link href="../js/calendar/calendar.css" rel="stylesheet" type="text/css" />
添加日期输入框:在现有代码中,找到显示作者信息的部分,在其下方添加一个新的表格行,用于显示和选择添加时间的字段。
<!--新加日期修改--> <tr> <td class="narrow-label">{$lang.add_time}</td> <td><input name="add_time" type="text" id="add_time" size="20" value='{$article.add_time}' readonly="readonly" /><input name="selbtn1" type="button" id="selbtn1" onclick="return showCalendar('add_time', '%Y-%m-%d %H:%M', '24', false, 'selbtn1');" value="{$lang.btn_select}" class="button"/></td> </tr> <!--新加日期修改结束-->
2、修改PHP文件
初始化文章数据:打开/admin/article.php
文件,找到初始化文章数据的代码段,并在其中添加add_time
字段的初始化。
$article = array(); $article['is_open'] = 1; $article['add_time'] = local_date('Y-m-d H:i');
获取文章数据:在获取文章数据的SQL语句之后,更新$article['add_time']
的值。
$sql = "SELECT * FROM " .$ecs->table('article'). " WHERE article_id='$_REQUEST[id]'"; $article = $db->GetRow($sql); $article['add_time'] = local_date('Y-m-d H:i',$article['add_time']);
插入数据:在插入数据部分,将gmtime()
替换为从表单中获取的add_time
值,并进行本地化处理。
$add_time = gmtime(); if (empty($_POST['cat_id'])) { $_POST['cat_id'] = 0; } $add_time = local_strtotime($_POST['add_time']); $sql = "INSERT INTO ".$ecs->table('article')."(title, cat_id, article_type, is_open, author, author_email, keywords, content, add_time, file_url, open_type, link) ". "VALUES ('$_POST[title]', '$_POST[article_cat]', '$_POST[article_type]', '$_POST[is_open]', ". "'$_POST[author]', '$_POST[author_email]', '$_POST[keywords]', '$_POST[FCKeditor1]', ". "'$add_time', '$file_url', '$open_type', '$_POST[link_url]')"; $db->query($sql);
通过以上步骤,可以在ECShop后台成功添加或修改文章的发布日期和时间,这些操作不仅增强了系统的灵活性,还提高了用户体验和管理效率。