zdcms如何在后台发布内容时,匹配数据库是否有重复内容,弹窗提醒。
这里以News模块为例,在目录 /dayrui/App/News/ 下新建 Models/Content.php,如:/dayrui/App/News/Models/Content.php;然后插入以下代码。
<?php namespace Phpcmf\Model\News; // 模块内容模型类 class Content extends \Phpcmf\Model\Content { // 内容发布之前 public function _content_post_before($id, $data, $old) { if ($this->db->table($this->mytable)->where('id<>', (int)$id)->where('title', $data[1]['title'])->countAllResults()) { return dr_return_data(0, '已包含标题相同的内容'); } return $data; } }
以上是检测整个内容模块内的重复内容,如果是按栏目内内容来检测,可以按照下面的代码来。
<?php namespace Phpcmf\Model\News; // 模块内容模型类 class Content extends \Phpcmf\Model\Content { // 内容发布之前 public function _content_post_before($id, $data, $old) { if ($this->db->table($this->mytable)->where('id<>', (int)$id)->where('catid', $data[1]['catid'])->where('title', $data[1]['title'])->countAllResults()) { return dr_return_data(0, '已包含标题相同的内容'); } return $data; } }