歡迎光臨, 訪客. 請先 登入註冊一個帳號.
十一月 22, 2024, 08:51:48 下午
19595 文章 在 3865 主題 由 4579 會員
最新註冊會員: aa123aa1
LifeType 中文開發論壇  |  開發  |  外掛程式  |  [外掛] 自己寫的多媒體播放器外掛 EmbedMedia v1.0 « 上篇主題 下篇主題 »
頁: [1]
作者 主題: [外掛] 自己寫的多媒體播放器外掛 EmbedMedia v1.0  (閱讀 23098 次)
marcoyan
新手見習
*
文章: 8


檢視個人資料
« 於: 三月 28, 2007, 07:07:28 下午 »

我是從無名搬家搬來的

也是沒音樂會屎的倫,啊如果每次換歌都要改template的話,我大概會瘋掉吧

所以寫了一隻這樣的plugins,source是拿tommy大大的google adsense來改的,

想說照人家的方式做,應該比較不會有錯吧。


Embed Media Plugin v1.0(20070328)

開發人員:Marco Yan (丟細哇)

開發日期:2007.3.28

說明
這個外掛程式提供管理介面中設定多媒體播放器的相關參數.

安裝
將下載的外掛程式 zip 檔解壓縮到 lifetype 的 plugins 目錄下, 然後在管理介面的外掛程式中心重新整理網頁,
便可看到 Embed Media 外掛已經安裝了.

設定
1.進入管理介面 -> 個人網誌設定 -> 多媒體播放器
2.啟用外掛程式,並且輸入你的媒體檔案等相關設定.

限制條件
1.寬度、高度限制在3個字元
2.顯示名稱限制在40個字元
3.聲音大小限制在2個字元


修改樣版
{if $embedmedia && $embedmedia->isEnabled()}
<h2> = Music </h2><p>
<div>{if $embedmedia->getMusicName()}{$embedmedia->getMusicName()}{/if}
<div>
<embed src="{$embedmedia->getSRC()}" height="{$embedmedia->getHeight()}" width="{$embedmedia->getWidth()}" autoStart="{if $embedmedia->getAuto()}{$embedmedia->getAuto()}{else}false{/if}" loop="{if $embedmedia->getLoop()}{$embedmedia->getLoop()}{else}false{/if}" enableContextMenu="0" playcount="65535" volume="{$embedmedia->getVol()}" ShowPositionControls="0" Hidden="{$embedmedia->getHidden()}"></embed>

</div>
</div>
{/if}

 

外掛中心畫面



設定畫面




第一次寫這種外掛,如果有錯還請多包函。

有需要的人點下列網址下載取用。

http://marcoyan.no-ip.org/blog/index.php?op=ViewResource&blogId=1&resource=lifetype_1.2_embedmedia.zip



 

« 最後編輯時間: 四月 08, 2007, 12:52:49 上午 由 marcoyan » 已記錄

相信,用心就能夠看見
http://marcoyan.no-ip.org
markwu
系統管理員
超級會員
*****
文章: 3928


Mark Wu


檢視個人資料 個人網站
« 回覆文章 #1 於: 三月 29, 2007, 12:55:27 下午 »

已經 commit 到 SVN rev. 5125 中,謝謝。 開懷大笑

http://devel.lifetype.net/svn/plog/plugins/branches/lifetype-1.2/embedmedia/

如果沒有任何問題,會隨著 LifeType 1.2.1 一起釋出。

Mark
已記錄

marcoyan
新手見習
*
文章: 8


檢視個人資料
« 回覆文章 #2 於: 三月 29, 2007, 03:55:38 下午 »

抱歉今天試的時後發現一個小錯誤,已經更換壓縮檔了

2007-3-29 Fix

有下載的人如果點個人「網誌設定→設定」,上端有出現程式碼錯誤的話,

請用記事本或編輯器開啟 \embedmedia\locale\locale_en_UK.php

$messages['embedmedia_Width'] = '(width),ex:150.';
$messages['embedmedia_Height'] = '(height),ex:45.';

將這兩行全型的「,」符號改成「,」就可以了,或是重新下載。

奇怪en_UK不吃全型字...@@".....
已記錄

相信,用心就能夠看見
http://marcoyan.no-ip.org
markwu
系統管理員
超級會員
*****
文章: 3928


Mark Wu


檢視個人資料 個人網站
« 回覆文章 #3 於: 三月 29, 2007, 04:01:40 下午 »

因為他是 iso8859-1,當然不吃 utf-8 的字。我會把他 patch 上去的。

Mark
已記錄

markwu
系統管理員
超級會員
*****
文章: 3928


Mark Wu


檢視個人資料 個人網站
« 回覆文章 #4 於: 三月 29, 2007, 04:03:37 下午 »

已經 patch 上去了, svn rev 5218.

Mark
已記錄

lonestone
新手見習
*
文章: 9


檢視個人資料
« 回覆文章 #5 於: 三月 30, 2007, 11:01:35 下午 »

不支持l.l.6么,我装了,修改了lt_inclue为require_once,插件中心可以看到,但是没有管理设定的项目
已記錄
lovehint37
新手見習
*
文章: 15


檢視個人資料
« 回覆文章 #6 於: 三月 31, 2007, 08:42:42 下午 »

這個不錯~~收下了~感謝!!!
但如果還能多首音樂輪播就更完美了^^
已記錄

歡迎看看我的部落格~
http://mitnik.mine.nu/blog
panying
新手見習
*
文章: 39


檢視個人資料
« 回覆文章 #7 於: 四月 07, 2007, 12:45:27 上午 »

如果能把模版的輸出再改簡單些,會效果更好。

比如
引用
{if $embedmedia && $embedmedia->isEnabled()}
<h2> = Music </h2><p>
<div>{if $embedmedia->getMusicName()}{$embedmedia->getMusicName()}{/if}
<div>
<embed src="{$embedmedia->getSRC()}" height="{$embedmedia->getHeight()}" width="{$embedmedia->getWidth()}" autoStart="{if $embedmedia->getAuto()}{$embedmedia->getAuto()}{else}false{/if}" loop="{if $embedmedia->getLoop()}{$embedmedia->getLoop()}{else}false{/if}" enableContextMenu="0" playcount="65535" volume="{$embedmedia->getVol()}" ShowPositionControls="0" Hidden="{$embedmedia->getHidden()}"></embed>

</div>
</div>
{/if}

用一個函數輸出,這樣能減少實施難度。
已記錄

marcoyan
新手見習
*
文章: 8


檢視個人資料
« 回覆文章 #8 於: 四月 08, 2007, 12:52:19 上午 »

不支持l.l.6么,我装了,修改了lt_inclue为require_once,插件中心可以看到,但是没有管理设定的项目

由於1.1系列的好像沒有管理者的權限分別,所以我改了一下程式
點下面連結下載,這是for 1.1版的,我在 1.1.6 試過了,正常。
http://marcoyan.no-ip.org/blog/index.php?op=ViewResource&blogId=1&resource=lifetype_1.1_embedmedia.zip

修正部份:
除了it_inclue改成include_once之外,pluginembedmedia.class.php這隻檔案做下列修改(紅字部份)

 function PluginEmbedMedia()
    {
        $this->PluginBase();
        $this->id = 'embedmedia';
        $this->author = 'Marco Yan';
        $this->desc = "This plugin offers features to support Media Embed.";
        $this->version = '1.0';
        $this->locales = array('en_UK', 'zh_TW');
        $this->initAdmin();
    }

    function initAdmin()
    {
        $this->registerAdminAction('embedmedia', 'PluginEmbedMediaConfigAction');
        $this->registerAdminAction('updateembedmedia', 'PluginEmbedMediaUpdateConfigAction');
        include_once( PLOG_CLASS_PATH."class/template/menu/menu.class.php" );
       
        $menu =& Menu::getMenu();
        $this->addMenuEntry('/menu/controlCenter/manageSettings', 'EmbedMedia', '?op=embedmedia');           
    }
« 最後編輯時間: 四月 08, 2007, 12:55:47 上午 由 marcoyan » 已記錄

相信,用心就能夠看見
http://marcoyan.no-ip.org
marcoyan
新手見習
*
文章: 8


檢視個人資料
« 回覆文章 #9 於: 四月 08, 2007, 12:58:09 上午 »

如果能把模版的輸出再改簡單些,會效果更好。

比如
引用
{if $embedmedia && $embedmedia->isEnabled()}
<h2> = Music </h2><p>
<div>{if $embedmedia->getMusicName()}{$embedmedia->getMusicName()}{/if}
<div>
<embed src="{$embedmedia->getSRC()}" height="{$embedmedia->getHeight()}" width="{$embedmedia->getWidth()}" autoStart="{if $embedmedia->getAuto()}{$embedmedia->getAuto()}{else}false{/if}" loop="{if $embedmedia->getLoop()}{$embedmedia->getLoop()}{else}false{/if}" enableContextMenu="0" playcount="65535" volume="{$embedmedia->getVol()}" ShowPositionControls="0" Hidden="{$embedmedia->getHidden()}"></embed>

</div>
</div>
{/if}

用一個函數輸出,這樣能減少實施難度。

謝謝您的建議,不過..."媽搭媽搭"...功力還未夠班...XD...
我後來發現用embed也有好處,就是不止可以放音樂,也可以放影片...
已記錄

相信,用心就能夠看見
http://marcoyan.no-ip.org
lonestone
新手見習
*
文章: 9


檢視個人資料
« 回覆文章 #10 於: 四月 11, 2007, 07:25:14 下午 »

改了,不错,运行正常!谢谢,谢谢你的pm
已記錄
頁: [1]
LifeType 中文開發論壇  |  開發  |  外掛程式  |  [外掛] 自己寫的多媒體播放器外掛 EmbedMedia v1.0 « 上篇主題 下篇主題 »
    前往: