from:
http://www.discuz.net/thread-740172-1-1.html
其實 minispace 是一個好東西,結構很好。也更加和
論壇結合更加緊密。因此只要適當的二次開發就可以解決很多
問題
我看沒有人來講解這一部分,我打算分幾部分來講解,minispace 的二次開發。講錯的,希望大家指正。
第一講,先說結構
先假設我要在 mini 添加一個頂帖列表,或者想讀取其他 cms,問題,人才,交易,商店等其他系統都可以用同樣的方法來做。
我們的目標就是把 minispace 做成一個個人資料的節點。
假設我要添加一個 dig 的模組在 cms 裡面。
演示地址
裡面的用戶頂帖的情況顯示到 minispace 上。
處理函數名為 myding
mini
空間修改步驟
1、./admin/settings.inc.
php 檔。後台增加設置項。
找到
複製內容到剪貼簿
代碼:
showsetting('settings_spacelimitmyblogs', 'settingsnew[spacedata][limitmyblogs]', $settings['spacedata']['limitmyblogs'], 'text');在下面添加需要增加的模組
複製內容到剪貼簿
代碼:
showsetting('settings_spacelimitmyding', 'settingsnew[spacedata][limitmyding]', $settings['spacedata']['limitmyding'], 'text');2、./templates/default/admincp.lang.php 檔。增加後台設置語言包項。
找到
複製內容到剪貼簿
代碼:
'settings_spacetextlength_comment'在上面添加需要增加的模組
複製內容到剪貼簿
代碼:
'settings_spacelimitmyding' => '頂貼模組顯示條目數:',
'settings_spacelimitmyding_comment' => '設置頂貼模組在個人空間首頁顯示的條目數,建議設置範圍 1~10,0 為關閉此模組',這裡主要可以設定之後的 mini 空間中的循環次數
3、./templates/default/space.lang.php 檔。增加模組名稱語言包項,
$spacelanguage 數組設定的 mini 空間模組名稱
4、在資料庫 cdb_settings 中插入 (variable, value) VALUES ('spacelimitmyding', 10) ,你可以參考其他記錄。
這裡主要是用戶 dz 的
模板解析,感覺是。
5、修改 mini 的主要函數檔案。./include/space.func.php
5.1:$modulesettings 數組( //'模組標識名稱' => array('不允許出現的位置', 預設位置, 隱藏更多連結)位置中數字 0 代表左側、1 代表中間、2 代表右側,不允許出現的位置如果不允許出現在 2 個位置,用逗號分割)。主要設定用戶在設定 mini 模組位置的時候,各個模組的位置的數組。
5.2:$listmodule 數組( //為包含列表內容模組的聲明數組,所有的包含列表內容的模組在此處聲明,含義為:'模組標識名稱' => 選單順序)主要設定模組列表頁的模組顯示順序,數組值為順序
5.3:function spacecaches 產生快取使用的函數,添加的模組要在該函數中間數組 $allmodules 中添加需要快取的數組節點。
5.4:function module_myding(&$parms)。添加需要執行的 sql,從資料庫取值。
6、修改 mini 顯示模板 ./templates/default/space_module.htm。
6.1:在第 5 點中的函數會在該檔案中解析產生
保證函數名稱和前面設定的模組名相同就可以了。
複製內容到剪貼簿
代碼:
function myding($moduledata) {
global $mod,$uid;
}-->
<div id="module_mythreads">
<iframe id="clud" name="clud" width="480px" height="410px" frameborder="0" scrolling="No" src="/know/member.php?command=collect&uid=$uid"></iframe>
</div>
<!--{eval
}步驟就是上述的了。明日如果有空詳細講解做一個 minispace 的相冊的製作過程
廣告一下演示網站
www.veip.cn
網站還沒有開發完成。只是測試,所以資料都是亂的。
主要使用 dede 為基礎,整合 ask,js4,dz6,而成。
關於 minisapce 的演示
minispace 二次開發詳解(二)
[ 本帖最後由 ftmouse 於 2007-9-13 11:15 編輯 ]