本帖最后由 hikelive 于 2010-5-29 10:00 编辑
第一步,我们需要改变分类的显示方法,默认是只显示当前频道的系统分类
a.将admin/admin_spaces.php文件中- $clistarr = getcategory($type);
- $categorylistarr = array('0'=>array('pre'=>'', 'name'=>'------'));
- foreach ($clistarr as $key => $value) {
- $categorylistarr[$key] = $value;
- }
复制代码 替换成- //CATEGORIES
- $categorylistarr= getcategory('', '|----', $_SGET['catid']);
复制代码 b.将admin/tpl/spacenews.htm文件中- <select name="catid" id="catid">
- <!--{loop $categorylistarr $value}-->
- <option value="$value[catid]"<!--{if $thevalue[catid]==$value[catid]}--> selected<!--{/if}-->>{$value[pre]}$value[name]</option>
- <!--{/loop}-->
- </select>
复制代码 替换成- <select name="catid" id="catid">
- <!--{loop $categorylistarr $key $cvalue}-->
- <!--{if $channels['types'][$key]['name']}-->
- <optgroup label="{$channels['types'][$key]['name']}">
- <!--{loop $cvalue $value}-->
- <option value="{$key}_{$value[catid]}" <!--{if $thevalue[catid]==$value[catid]}--> selected<!--{/if}-->>$value[pre]{$value[name]}</option>
- <!--{/loop}-->
- </optgroup>
- <!--{/if}-->
- <!--{/loop}-->
- </select>
复制代码 到这个时候,大家会发现系统分类显示的内容已经改变了,可以显示出你现有的所有文章模块的分类了;
第二步,我们需要做的是怎么将修改过的文章分类更新到数据库
默认系统是只读取分类的ID,我们需要修改为同时读取当前选择分类的类型和分类ID
a.将admin/admin_spacenews.php中- //输入检查
- $_POST['catid'] = intval($_POST['catid']);
复制代码 替换成- //输入检查
- $catarr = explode('_', $_POST['catid']);
- $_POST['catid'] = intval($catarr[1]);
- $_POST['type']=empty($catarr[0]) ? 'news' : trim($catarr[0]);
复制代码 b.在admin/admin_spacenews.php中的构建数据中添加一条记录- //构建数据
- $setsqlarr = array(
- 'catid' => $_POST['catid'],
- 'type'=>$_POST['type'], //添加的数据行
- 'subject' => scensor($_POST['subject'], 1),
- 'hash' => $_POST['hash'],
- 'picid' => $_POST['picid']
- );
复制代码 资讯信息记录到现在我们就已经更新完成了。
我们还需要对资讯对应的附件类型进行修改- //附件
- if($setsqlarr['haveattach']) {
- $_SGLOBAL['db']->query('UPDATE '.tname('attachments').' SET isavailable=1, type=\''.$type.'\', itemid='.$itemid.', catid=\''.$_POST['catid'].'\' WHERE hash=\''.$_POST['hash'].'\'');
- }
复制代码 改为:- //附件
- if($setsqlarr['haveattach']) {
- $_SGLOBAL['db']->query('UPDATE '.tname('attachments').' SET isavailable=1, type=\''.$_POST['type'].'\', itemid='.$itemid.', catid=\''.$_POST['catid'].'\' WHERE hash=\''.$_POST['hash'].'\'');
- }
复制代码 小弟第一次研究supesite的源代码。
各位老大们路过如有发现不对之处,请指出,谢谢。
admin.rar
(16.17 KB, 下载次数: 272)
|