在Zblog有文章ID连续的插件,而Emlog没有,所以就需要手动修改,使得删除文章断掉的ID可以自动增补。
路径在include/model/log_model.php,EMLOG的原始代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
| /\*\* \* 添加文章、页面 \* \* @param array $logData \* @return int \*/ function addlog($logData) { $kItem = array(); $dItem = array(); foreach ($logData as $key => $data) { $kItem\[\] = $key; $dItem\[\] = $data; } $field = implode(',', $kItem); $values = "'" . implode("','", $dItem) . "'"; $this->db->query("INSERT INTO " . DB\_PREFIX . "blog ($field) VALUES ($values)"); $logid = $this->db->insert\_id(); return $logid; }
把他修改为以下代码:
function addlog($logData) { $kItem = array(); $dItem = array(); foreach ($logData as $key => $data) { $kItem\[\] = $key; $dItem\[\] = $data; } $field = implode(',', $kItem); $values = "'" . implode("','", $dItem) . "'"; $gidarr\[0\]='0'; $res = $this->db->query("SELECT gid From " . DB\_PREFIX . "blog ORDER BY gid ASC"); while ($row = $this->db->fetch\_array($res)) { $gidarr\[\] = $row\['gid'\]; } foreach($gidarr as $key=>$val){ if($key!=$val){ $field = 'gid,'.$field; $values = "'".$key."',".$values; break; } } $this->db->query("INSERT INTO " . DB\_PREFIX . "blog ($field) VALUES ($values)"); $logid = $this->db->insert\_id(); return $logid; }
|
这样就可以完美解决EMLOG文章断ID的问题了!