phpcms v9实现内容定时发布功能二次开发教程,cms教程注意本功能不适用于生成静态的网站。
首先把栏目的工作流设置成“一级审核”
然后,在phpcms/modules/content/ 文件夹里新建一个文件命名:my_index.php
内容如下:
本帖隐藏的内容需要回复才可以浏览
defined('in_phpcms') or exit('no permission resources.');
//模型缓存路径
class my_index extends index {
private $db;
function __construct() {
$this->db = pc_base::load_model('content_model');
parent::__construct();
$this->dingshi();
}
//定时发布
public function dingshi() {
$this->content_check_db = pc_base::load_model('content_check_model');
$ids = $this->content_check_db->select('status=1 and username=phpcms8 and inputtime<='.sys_time,'checkid');
foreach($ids as $k)
{
$k1 = explode('-',$k['checkid']);
$this->db->set_model($k1[2]);
$this->db->status($k1[1]);
}
}
}
?>
这样,当有用户通过动态地址访问你的content模快时,如果定时到了,文章就会自动审核发布。
注意:
1、生成静态的网站要用的话,可以把网站默认文档设置成index.php优先于index.html,这样当访问首页时也有效果。
2、设置栏目为“一级审核”,发布定时文章时,除了选择发布时间外,还要把状态设置为“审核”。
3、定时发布的文章很多时建议使用“fsockopen”伪异步处理,否则出发定时发布的会员会很卡。
4、修改username=phpcms8中的phpcms8为你的管理员用户名。
ok,phpcms v9内容定时发布功能实现。