列印

minispace 二次開發詳解(一)

minispace 二次開發詳解(一)

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 編輯 ]
Hack 安裝錯誤, 80% 來自粗心, 請專心安裝
Linux0911 打造您的個性論壇

本人現在忙於研究所, 沒多的時間管論壇, 有問題別發 pm 給我, 謝謝~
Linux0911 Forum © 2004-2009 All Rights Reserved.

TOP



論壇聲明
  • 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
    如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
    請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!
最佳瀏覽解析度:不低於 1024 (最佳 1280 以上).(支援 IE 7, Mozilla Firefox, Safari, Chrome)
The Best Surfing Resolution: No Lower than 1024 (Best: above 1280).(IE 7, Mozilla Firefox, Safari, Chrome Supported)