一、后台添加文章模板phpcms/modules/content/templates/content_add.tpl.php中94行增加”保存草稿“按钮:
二、后台添加文章控制器phpcms/modules/content/content.php文件add操作方法中
$this->db->add_content($_POST['info']);代码上方改成:
if(isset($_POST['dosubmit_draft'])) {
$_POST['info']['status'] = -2;
}else{
if($workflowid) {
//如果用户是超级管理员,那么则根据自己的设置来发布
$_POST['info']['status'] = $_SESSION['roleid']==1 ? intval($_POST['status']) : 1;
} else {
$_POST['info']['status'] = 99;
}
}
$this->db->add_content($_POST['info']);代码下方改成:
if(isset($_POST['dosubmit']) || isset($_POST['dosubmit_draft'])) {
showmessage(L('add_success').L('2s_close'),'blank','','','function set_time() {$("#secondid").html(1);}setTimeout("set_time()", 500);setTimeout("window.close()", 1200);');
} else {
showmessage(L('add_success'),HTTP_REFERER);
}
三、后台添加文章控制器phpcms/modules/content/content.php文件edit操作方法中
param::set_cookie('module', 'content');代码下方改成:
if(isset($_POST['dosubmit']) || isset($_POST['dosubmit_continue']) || isset($_POST['dosubmit_draft'])) {
$workflowid = $setting['workflowid'];代码下方改成:
if((isset($_POST['dosubmit']) || isset($_POST['dosubmit_continue'])) && ($_POST['info']['status']==-2)) {
if($workflowid) {
//如果用户是超级管理员,那么则根据自己的设置来发布
$_POST['info']['status'] = $_SESSION['roleid']==1 ? 99 : 1;
} else {
$_POST['info']['status'] = 99;
}
}
$this->db->edit_content($_POST['info'],$id);代码下方改成:
if(isset($_POST['dosubmit']) || isset($_POST['dosubmit_draft'])) {
四、后台添加文章控制器phpcms/modules/content/content.php文件public_preview操作方法中
$steps = intval($_GET['steps']);代码下方改成:
$supermenu = ($_SESSION['roleid']==1 && $steps<>-2) ? "".L('passed_checked')." | ".L('reject')." | ".L('delete')."" : "".L('delete')."";
五、后台添加文章控制器phpcms/modules/content/content.php文件中添加“草稿箱”操作方法
/**
* 草稿箱
*/
public function draft_list() {
$page = isset($_GET['page']) && intval($_GET['page']) ? intval($_GET['page']) : 1;
$show_header = '';
$admin_username = param::get_cookie('admin_username');
$datas = array();
$pagesize = 20;
$sql = '';
$status = -2;
$sql = "`status` = '$status' AND `siteid`=$this->siteid";
if($_SESSION['roleid']!=1){
$sql .= " AND `username` = '$admin_username'";//WY ADD AT 2023 除超级管理员外,只显示自己发布的文章
}
$this->content_check_db = pc_base::load_model('content_check_model');
$datas = $this->content_check_db->listinfo($sql,'inputtime DESC',$page);
$pages = $this->content_check_db->pages;
include $this->admin_tpl('draft_list');
}
六、添加“草稿箱”控制器对应的模板文件,phpcms/modules/content/templates/draft_list.tpl.php
admin_tpl('header','admin');?>