天天看點

【discuzX2】模闆中添加DIY擴拖拽區域

在已經有可拖拽區域的模闆中添加更多的可拖拽區域

在Discuz! X預設模闆的大部分模闆檔案中已經内置了多個可拖拽區域,但是如果你覺得這些還不夠,還需要添加更多的可拖拽區域怎麼辦?
打開你要添加可拖拽區域的模闆檔案,在要添加的位置加入如下代碼
<!--[diy=diyid]--><div id="diyid" class="area"></div><!--[/diy]-->
      
  • DIY使用的tag标簽為div,指定的class為area
  • <!--[diy=diyid]-->和<!--[/diy]-->是一對完整的DIY可拖拽區域閉合辨別
  • [diy=diyid]中的diyid要與後面的DIV的id相同,同時要確定其在頁面中唯一,即不能與頁面已有元素ID相同。

讓自己的程式和模闆頁面也可以DIY

假設你建立的PHP檔案名為test.php,對應的模闆檔案為/template/default/home/testtpl.htm

test.php程式代碼為

<?php>
$var = '';
$arr = array();
... //程式邏輯
loadcache('diytemplatename');//加載DIY頁面緩存,X2中的改進,此緩存必需要加載,目的是為了減少磁盤的IO操作
template('diy:home/testtpl');//加載為模闆檔案,其中 “diy:”表示支援頁面DIY操作
<?>
      
  • loadcache('diytemplatename')X2中的改進,此緩存最好是在網站根目錄的應用入口檔案中加載,如下
...
$cachelist = array('yourcache', 'diytemplatename');
$discuz->cachelist = $cachelist;
$discuz->init();
...
      

模闆檔案代碼

...
<style id="diy_style" type="text/css"></style><!--在模闆檔案中添加存放CSS代碼的标簽-->
<div id='ct'>
...
<!--[diy=diyid]--><div id="diyid" class="area"></div><!--[/diy]--><!--在你需要的地方添加可拖拽區域-->
..
</div>
<!--[diy=diyid2]--><div id="diyid2" class="area"></div><!--[/diy]--><!--在你需要的地方添加可拖拽區域-->
...
      
  • DIY使用的tag标簽為div,指定的class為area
  • <!--[diy=diyid]-->和<!--[/diy]-->是一對完整的DIY可拖拽區域閉合辨別
  • [diy=diyid]中的diyid要與後面的DIV的id相同,同時要確定其在頁面中唯一,即不能與頁面已有元素ID相同。