织梦DEDECMS 独立模型支持副栏目修改

织梦EDECMS 只有文章内容模型支持副栏目功能,独立模型则不支持。
 
要修改的地方:1,后台发布,编辑 2,dede:list 标签调用显示结果。
 
下面是详细操作:清如许工作室首发,原创转载请注明出处
1,升级数据库 
    ALTER TABLE `dede_addon_duli` ADD `typeid2` VARCHAR( 90 ) NOT NULL 
    在生成的独立模型表上添加一个 typeid2 的字段。
    
2,后台管理修改
    1)
    archives_sg_add.htm 164行加入
    <!– 独立模型副栏目 最模板精品织梦源码 www.zuimoban.com –>
            <?php
            if($cfg_need_typeid2==’Y’)
            {
                echo “<a href=’javascript:AddTypeid2();’>【<u>选择副栏目</u>】</a>”;
            }
            ?>
    <!–//独立模型副栏目 –>
    2)
    archives_sg_edit.htm  156行加入
    <!– 独立模型副栏目 –>
    <?php
if($cfg_need_typeid2==’Y’) {  
?>
    <tr>
      <td height=”24″ class=”bline”>
          <table width=”800″ border=”0″ cellspacing=”0″ cellpadding=”0″>
          <tr>
            <td width=”90″>&nbsp;文档副栏目:</td>
            <td>
           <span id=’typeid2ct’></span>
           <input type=’text’ name=’typeid2′ id=’typeid2′ value='<?php echo ($addRow[‘typeid2′]==’0’ ? ” : $addRow[‘typeid2′]); ?>’ style=’width:200px;’ />
           <img src=’images/menusearch2.gif’ style=’cursor:pointer;’ onClick=”ShowCatMap(event, this, <?php echo $channelid; ?>, ‘typeid2’, ‘<?php echo $addRow[‘typeid2′]; ?>’)” alt=’选择副栏目’ title=’选择副栏目’ />
                 </td>
          </tr>
        </table>
      </td>
    </tr> <?php } ?>
    <!–//独立模型副栏目 –>
    3)archives_sg_add.php 147行
    //独立模型使用副栏目 最模板精品织梦源码 www.zuimoban.com
        if(!empty($typeid2)) //当选择副栏目时自动添加  typeid2 字段 如果独立模型不需要副栏目请不要选择
        {
            $inadd_f .= ‘,typeid2’;
            $inadd_v .= ” ,'”.$typeid2.”‘ “;
        }
        //end
    4)archives_sg_edit.php 133行
    //独立模型使用副栏目 最模板精品织梦源码 www.zuimoban.com
        if(!empty($typeid2)) //当选择副栏目时自动添加  typeid2 字段 如果独立模型不需要副栏目请不要选择
        {
            $inadd_f .= “,`typeid2` = ‘”.$typeid2.”‘”;
        }
        //end
3,LIST 显示系统函数修改 arc.sglistview.class.php 46 行添加一个函数
    1)
    //独立模型副栏目附加条件
    
    function q_mode($typeid,&$query,$type=’count’)
    {
        if(‘dede_addon_duli’==$this->AddTable) // 限定表名 独立模型生成的表名称
        {
            //最终栏目才显示
            $sql = “select count(id) count from  q_arctype where reid = $typeid”;
            $row = $this->dsql->GetOne($sql);
            if(0 == $row[‘count’])
            {
                if(‘count’==$type)
                {
                    $query.=” OR typeid2 like ‘%$typeid%'”; 
                }
                else
                {
                    $query.=” OR (arc.typeid2 like ‘%$typeid%’)”; 
                }
            }
        }
    }
    2) 记录数SQL  修改 239行
    
    3)获得列表SQl 修改723行