歡迎光臨, 訪客. 請先 登入註冊一個帳號.
三月 19, 2024, 01:14:22 下午
19595 文章 在 3865 主題 由 4580 會員
最新註冊會員: aa123aa1
LifeType 中文開發論壇  |  開發  |  外掛程式  |  [plugin]置頂文章外掛程式 « 上篇主題 下篇主題 »
頁: [1] 2 3 4
作者 主題: [plugin]置頂文章外掛程式  (閱讀 113035 次)
lss
我不是被~拉~~出來的,不要叫我大大!
總版主
超級會員
*****
文章: 1511



檢視個人資料 個人網站
« 於: 五月 16, 2005, 05:39:54 下午 »

經過十多天的努力,非常痛苦的 pLog MVC 架構煎熬,終於把文章置頂外掛 port 到 1.0 。

這個置頂文章外掛是根據 mark 的 pluginstickyposts for 0.32 加上我先前做的貼心小改版 port 到 1.0 的。目前還算是 beta 版,因為:

   1. 語系部份,除繁體中文外,其它我還沒試過,甚至 locale_es_ES.php 只是英文版的 copy 。我那會翻譯!
   2. 我實在不擅長模版,所以 readme.txt 裡的範例模版很糟糕,我的 blog 站正使用這個醜得要命的模版測試中,希望那位仁兄提供個漂亮的模版當範例。

第一次實作 1.0 的 plugin ,不免錯誤百出,請不吝回報,以茲改進。

我已經把目前的 beta 版放到 bugs.lifetype.net 的這裡了。要加入測試的人請自行下載。

Mark 說的沒錯,pLog 的 MVC 架構寫程式很方便,因為架構非常有彈性,所以像 plugin 這種外加功能很容易便可以整合進 pLog 。但是要寫的程式變多。最痛苦的是去瞭解隱藏在 pLog MVC 架構裡的物件系統。實在佩服 Oscar、Francisc、Mark 、Mistrel 以及其他開發團隊的成員,實在辛苦了。
已記錄

沒找過 常見問題集或不知道 如何在 LifeType 中文開發論壇發問的人,恕不回答問題
james
LifeType 中文發展團隊
超級會員
*****
文章: 823


哼!!你不說,誰會知道你做過那些修改呢!? (丟滑鼠~~)


檢視個人資料 個人網站
« 回覆文章 #1 於: 五月 16, 2005, 07:38:28 下午 »

真是辛苦了 ^^
不過至少你已經搞懂了plog的MCV架構了。
我可是連啥是MCV都看不懂呢 開懷大笑

先下載來試看看囉
再次說聲謝謝!!
已記錄

記得發問前,先使用搜尋功能找找看有沒相關的解答。
如果找不到,請依照如何在LifeType論壇發問來提問喔。
lss
我不是被~拉~~出來的,不要叫我大大!
總版主
超級會員
*****
文章: 1511



檢視個人資料 個人網站
« 回覆文章 #2 於: 五月 16, 2005, 11:21:04 下午 »

james 你太客氣了。

我可是非常羡慕你以及諸位提供好看又好用的模版的美工高手呢!

羡慕的不得了。
已記錄

沒找過 常見問題集或不知道 如何在 LifeType 中文開發論壇發問的人,恕不回答問題
markwu
系統管理員
超級會員
*****
文章: 3928


Mark Wu


檢視個人資料 個人網站
« 回覆文章 #3 於: 五月 17, 2005, 12:09:10 下午 »

引用自: james
真是辛苦了 ^^
不過至少你已經搞懂了plog的MCV架構了。
我可是連啥是MCV都看不懂呢 開懷大笑

先下載來試看看囉
再次說聲謝謝!!


James:

Porting template 是很厲害的。呵呵!我跟 LSS 都自嘆不如阿!

Mark
已記錄

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


Mark Wu


檢視個人資料 個人網站
« 回覆文章 #4 於: 五月 17, 2005, 12:10:31 下午 »

引用自: lss

Mark 說的沒錯,pLog 的 MVC 架構寫程式很方便,因為架構非常有彈性,所以像 plugin 這種外加功能很容易便可以整合進 pLog 。但是要寫的程式變多。最痛苦的是去瞭解隱藏在 pLog MVC 架構裡的物件系統。

Hi lss:

但是經過這一段時間,我終於瞭解之前我們公司 RD 所追求的事情。架構真的很重要,當你熟悉,其實寫起來是很暢快的。

Mark
已記錄

lss
我不是被~拉~~出來的,不要叫我大大!
總版主
超級會員
*****
文章: 1511



檢視個人資料 個人網站
« 回覆文章 #5 於: 五月 17, 2005, 12:39:36 下午 »

hi all:

我在 http://wiki.lifetype.org.tw/index.php/PLog_1.0/Plugins/stickyposts 把 StickyPosts Plugin 的中文說明補上了,
請享用,並請隨意將她修的更美好。 微笑
已記錄

沒找過 常見問題集或不知道 如何在 LifeType 中文開發論壇發問的人,恕不回答問題
fragileness
新手見習
*
文章: 33


檢視個人資料
« 回覆文章 #6 於: 五月 17, 2005, 02:11:43 下午 »

這個外掛有可能做到「置頂或公告的文章只會在首頁出現」嗎?
還是說有什麼變數可以讓我檢查現在是不是「正在顯示首頁」(如果有的話,就可以寫一個 if 把顯示置頂的code包起來)?

不知道這個問題會不會很白癡...orz
已記錄
lss
我不是被~拉~~出來的,不要叫我大大!
總版主
超級會員
*****
文章: 1511



檢視個人資料 個人網站
« 回覆文章 #7 於: 五月 17, 2005, 03:06:22 下午 »

引用自: fragileness
這個外掛有可能做到「置頂或公告的文章只會在首頁出現」嗎?
還是說有什麼變數可以讓我檢查現在是不是「正在顯示首頁」(如果有的話,就可以寫一個 if 把顯示置頂的code包起來)?

不知道這個問題會不會很白癡...orz

請問你使用過這個 plugin 了嗎?
我在樣版檔的範例裡(使用 blueish)只修改了 main.template 所以它只會出現在首頁沒錯。

這是要配合修改樣版使用的。
已記錄

沒找過 常見問題集或不知道 如何在 LifeType 中文開發論壇發問的人,恕不回答問題
fragileness
新手見習
*
文章: 33


檢視個人資料
« 回覆文章 #8 於: 五月 17, 2005, 03:15:17 下午 »

引用自: lss
引用自: fragileness
這個外掛有可能做到「置頂或公告的文章只會在首頁出現」嗎?
還是說有什麼變數可以讓我檢查現在是不是「正在顯示首頁」(如果有的話,就可以寫一個 if 把顯示置頂的code包起來)?

不知道這個問題會不會很白癡...orz

請問你使用過這個 plugin 了嗎?
我在樣版檔的範例裡(使用 blueish)只修改了 main.template 所以它只會出現在首頁沒錯。

這是要配合修改樣版使用的。


現在正在測試~

其實main.template並不只會影響首頁,也會影響「列出某個分類下所有文章」的頁面,至少我這邊是這樣的情況。
已記錄
lss
我不是被~拉~~出來的,不要叫我大大!
總版主
超級會員
*****
文章: 1511



檢視個人資料 個人網站
« 回覆文章 #9 於: 五月 17, 2005, 03:23:59 下午 »

啊!抱歉!太久沒有去點文章分類了 吐舌頭 不只文章分類,文章彙整也會。

因為它們是共用同一個樣版檔,這可能得請教樣版高手了。

你可以以考 reic 的這篇「pLog 0.3.2 正式版釋出了 與 試用心得」裡面新功能試用心得的第二點說明,配合 $showAll 變數處理應該可以做到。

若實做出來,請與大家分享哦!
已記錄

沒找過 常見問題集或不知道 如何在 LifeType 中文開發論壇發問的人,恕不回答問題
fragileness
新手見習
*
文章: 33


檢視個人資料
« 回覆文章 #10 於: 五月 17, 2005, 03:45:46 下午 »

引用自: lss
啊!抱歉!太久沒有去點文章分類了 吐舌頭 不只文章分類,文章彙整也會。

因為它們是共用同一個樣版檔,這可能得請教樣版高手了。

你可以以考 reic 的這篇「pLog 0.3.2 正式版釋出了 與 試用心得」裡面新功能試用心得的第二點說明,配合 $showAll 變數處理應該可以做到。

若實做出來,請與大家分享哦!


謝謝!我好像弄出來了 開懷大笑

我整理一下就把心得貼出來(因為其實我動的手腳不只是「置頂文章只在首頁出現」這一點...我這麼奇怪的作法大家可能不會有機會用到,不過我等一下還是會貼出來 吐舌頭
已記錄
fragileness
新手見習
*
文章: 33


檢視個人資料
« 回覆文章 #11 於: 五月 17, 2005, 04:00:51 下午 »

我先貼一下我測試這個外掛的blog網址:

http://music.ee.ntu.edu.tw/plog/jcmg

大家如果點進去看的話,會發現它比較像一個網站而非一個一般的個人網誌。

首頁上方有文章標題為「測試公告」,而下方有文章標題為「首頁」,乍看之下應該上面那一篇是藉由「設定為公告文章」做出來的,而下面那篇是設定在一個「會顯示在首頁的分類」裡的文章。

不過其實真實狀況剛好反過來。我這樣做的目的是讓系統產生的RSS,會針對那篇「測試公告」而非那篇「首頁」去產生(因為系統產生的RSS好像是抓首頁顯示的文章...我不知道要怎麼設定它去抓其他文章)。也就是實際的狀況是:上面那篇「測試公告」是一篇正常顯示在首頁的文章,而下面那篇標題為「首頁」的文章,實際上是被設定為「置頂文章」,不過我把置頂文章出現在main.template的位置換到下面去,所以看起來比較像「置底文章」... 戴太陽眼鏡

另外,我也用lss前面提到的$showAll變數,來實做「只有首頁顯示置頂文章」(在我這裡的case是置「底」文章...)。我自己弄好之後,看文章分類裡確實不會顯示置頂文章,不過我在panel.template裡把隨時間彙整的連結拿掉了,所以沒有檢查隨時間彙整的頁面是不是也看不到置頂文章。

下面是我的main.template(原本是從mtplog修改過來的,但是在加入外掛之前我已經改過別的東西,所以忘記它跟原本mtplog的main.template有什麼差別了...orz)

-----------------------------------------------------------------------------

{include file="$blogtemplate/header.template"}
<div id="content">
{foreach from=$posts item=post}
{include file="$blogtemplate/post.template"}
<div class="pagetop"><a class="aposted" href="#top">回頁首▲</a></div>
{/foreach}

{if $showAll}
{else}
{if $stickyposts->isEnabled()}
{assign var=stickys value=$stickyposts->getArticles('sticky')}
{foreach from=$stickys item=stickypost}
{assign var="stickysDate" value=$stickypost->getDateObject()}
{assign var="stickysOwner" value=$stickypost->getUserInfo()}

<div class="blog">
<h2 class="date">{$locale->formatDate($stickysDate,"%B %d, %Y, %H:%M")} </h2>
<div class="blogbody">
<h3 class="title">{$stickypost->getTopic()}</h3>
{$stickypost->getText()}
</div>
</div>
{/foreach}
<div class="pagetop"><a class="aposted" href="#top">回頁首▲</a></div>
{/if}
{/if}

<br/>
</div>
{include file="$blogtemplate/panel.template"}
{include file="$blogtemplate/footer.template"}

----------------------------------------------------------------------------------
已記錄
lss
我不是被~拉~~出來的,不要叫我大大!
總版主
超級會員
*****
文章: 1511



檢視個人資料 個人網站
« 回覆文章 #12 於: 五月 17, 2005, 04:14:50 下午 »

哇!fragileness:

能這麼玩,你也是個高手,欽佩!
已記錄

沒找過 常見問題集或不知道 如何在 LifeType 中文開發論壇發問的人,恕不回答問題
markwu
系統管理員
超級會員
*****
文章: 3928


Mark Wu


檢視個人資料 個人網站
« 回覆文章 #13 於: 五月 17, 2005, 10:48:20 下午 »

引用自: fragileness

{if $showAll}


 很棒

我才剛要跟你說可以用 $showAll 來判斷, $showAll 是在 彙整(日期或是文章分類)才會出現的物件。所以可以透過他來判斷現在是否在首頁。

另外,你可以用 empty() 來判斷這物件是否存在頁面。所以這一斷模版可以改寫成

程式碼:
{if empty($showAll)}
....
{/if}


這樣會比

程式碼:
{if $showAll}
{else}
...
{/if}


來的好瞭解!

Mark
已記錄

rainlan
初級會員
**
文章: 58


檢視個人資料
« 回覆文章 #14 於: 五月 18, 2005, 08:38:23 上午 »

我的想法是,在首頁上不同的區域分別呈現不同類別的文章,
所以我在main.template檔上,插入這樣的程式碼
引用

<div id="content">
{assign var=postCategory value=$post->getCategory()}
{assign var="postDate" value=$post->getDateObject()}
{assign var="postOwner" value=$post->getUserInfo()}
{assign var=stickys value=$stickyposts->getArticles(29)}
{assign var=stickyCategory value=$stickyposts->getCategory(29)}
  <h2>Sticky Posts</h2>
  {foreach from=$stickys item=post}
  <table border="0" width="400" id="table4" cellspacing="0" cellpadding="0">
   <tr>
      <td width="20"><img src="{$url->getTemplateFile("images/titlelist.gif")}"</td>
      <td width="180"><a href="{$url->postPermalink($post)}"><font size="2">{$post->getTopic()}</font></td>
      <td width="80" align="left">
      <a href="{$url->categoryLink($postCategory)}"><font size="2">| {$postCategory->getName()}</font></a></td>
      <td width="60" align="center">
      <img alt="迴響" src="{$url->getTemplateFile("bubble.gif")}" width="11" height="11" style="border: 0px" align="absbottom" /> <a href="{$url->postPermalink($post)}"><font size="2">|  ({$post->getTotalComments()})</font></a></td>
      <td width="60" align="center">
      <img alt="引用" src="{$url->getTemplateFile("trackback.gif")}" width="16" height="11" style="border: 0px" /> <a href="{$url->postTrackbackStatsLink($post)}"><font size="2">| ({$post->getNumTrackbacks()})</font></a></td>
   </tr>
  </table>
  {/foreach}
  <h4><a href="{$url->categoryLink($stickyCategory)}">more sticky posts</a></h4>
</div>

其中getArticles(29),是我的文章分類的代號,
但是會有以下的錯誤的訊息,
Fatal error: Call to a member function on a non-object in /var/www/html/ilan/tmp/21/%%737^%%737864322^main.template.php on line 71
但是很神奇的,
我如果把上面的程式碼放在一個檔案中,如title29.template
然後在main.template改為,
{foreach from=$posts item=post}
{include file="blueish/title29.template"}
{/foreach}
就可以將文章列出來耶
如圖
當然,這還不是我要的結果,
而且它會一直重複10次列出分類文章!
還不曉得是什麼原因說...[/quote]
已記錄

主機環境
Fedora Core 3
pLog 1.02
Apache版本2.0.50
MySQL版本3.23.58
頁: [1] 2 3 4
LifeType 中文開發論壇  |  開發  |  外掛程式  |  [plugin]置頂文章外掛程式 « 上篇主題 下篇主題 »
    前往: