rabin 1 年之前
父节点
当前提交
24884caf58
共有 2 个文件被更改,包括 10 次插入5 次删除
  1. 1 1
      database/page_module.php
  2. 9 4
      lib/Data.php

+ 1 - 1
database/page_module.php

@@ -84,7 +84,7 @@ return array
 			),
 	        'type' => 'all',
 	        'order' => array('t_2.reorder' => 'desc', 't_2.id' => 'desc'),
-			'col' => 'id,t_2.id,t_2.name,t_2.key,t_2.pic,t_2.desc,t_2.content,t_2.num|key',
+			'col' => 'id,t_2.id,t_2.name,t_2.key,t_2.pic,t_2.desc,t_2.content,t_2.num,t_2.col|key',
 	    ),
 	)
 );

+ 9 - 4
lib/Data.php

@@ -86,7 +86,7 @@ class Data
 
                     if ($data['module'][$k]['data']) {
                         foreach ($data['module'][$k]['data'] as $k1 => $v1) {
-                            $data['module'][$k]['data'][$k1] = $this->getOne($v1, $cdate);
+                            $data['module'][$k]['data'][$k1] = $this->getOne($v1, $v, $cdate);
                         }
                     }
                 }
@@ -111,6 +111,7 @@ class Data
             $module['num'] = $total;
             $module['col'] = $col;
             $module['func'] = $func;
+            $module['page_id'] = 1;
             $module['id'] = Dever::db('page/module')->insert($module);
         }
 
@@ -138,7 +139,7 @@ class Data
 
                 if ($data) {
                     foreach ($data as $k => $v) {
-                        $data[$k] = $this->getOne($v, $cdate);
+                        $data[$k] = $this->getOne($v, $module, $cdate);
                     }
                 }
             } else {
@@ -150,11 +151,12 @@ class Data
     }
 
     # 获取某条推送位的数据
-    public function getOne($data, $cdate = 'Y-m-d H:i')
+    public function getOne($data, $module = false, $cdate = 'Y-m-d H:i')
     {
         $data = is_array($data) ? $data : Dever::db('page/data')->one($data);
         $source = array();
-        $module = array();
+        $module = $module ? $module : Dever::db('page/module')->one($data['module_id']);
+        $module['col'] = explode(',', $module['col']);
         $col = array();
         if ($data['type'] > 0) {
             $func = Dever::db('page/func')->one($data['type']);
@@ -187,6 +189,9 @@ class Data
             }
             if ($s) {
                 $id = str_replace($key, '', $k);
+                if (!in_array($id, $module['col'])) {
+                    continue;
+                }
                 $col_module = Dever::db('page/col')->one($id);
 
                 if (!$col_module) {