Translate


訂閱服務...

線上使用者

目前共有 0 位註冊使用者4 位訪客 在線上。

新會員

  • Mfeeluse
  • chris
  • kendrickpittmaneq
  • pigpighhkk
  • lissa

書籍推薦

如何使用 Views 模組的參數 ( Arguments ) 功能 ?

Arthur Yu 的照片
Average: 4.5 (2 votes)

這一篇應該是已經欠很久了,從寫完 Views 1.x 的介紹與說明之後,就說要寫,也是有想要寫,但是.....總是韶光荏苒,拖著拖著就過一年去哩 ! 剛好阿舍最近有用到這個功能,所以,就順手來寫一寫囉 !! 什麼是 Arguments ? 就是參數的意思,也就是說,View 是可以讀數的,但是,怎麼怎麼傳呢 ??.....



View 的參數其實是透過網址來傳遞的,所以要用參數的功能就一定要先設定 View 的「網址」這個欄位,基本上,這個欄位的網址是頭尾都不可以加斜線 "/",如果沒有在這個網址列裡加入 $arg 的變數,那麼就表示要用網址列的最後倒數第一個斜線之後的字串當作參數。

這樣講好像有點複雜,與個例子來說好了,假設阿舍設定的網址是 /update,當阿舍用網址 http://drupal.soa.tw/update/arthuryu 時,那麼,最後的 arthuryu 就會被當作是參數傳給 View 來用,可是,View 接到這個參數之後要怎麼用呢 ?

這個時候,就來設定 View 的 Arguments 小節裡的欄位了,各位大德要在 Arguments 裡的 「Add Arguments」 選一個種參數來對應傳進的參數值,如果,阿舍在這裡選的是「User: User is Author」,那麼這個 arthuryu 就會被當作是一個使用者名稱,然後這個 Update 的 View 就會只顯示出作者是 "arthuryu" 的文章。

各位大德有沒有一種似曾相見的感覺哩 ! 和那個 Filter ( 過濾器 ) 的設定是不是有異曲同工之妙啊 ! 原則上,阿舍是認為可以把這個 Arguments 的功能當作是 "動態過濾器" 來用,也就是可以依據需要來設定使用者連接的網址來改變所看到的 View。

Arguments 不是只能設定一個,而是可以有很多個,所以各位大德可以看到可以一直按那個「Add arguments」 來增加參數的項目,例如,阿舍除了剛剛的 「User: User is Author」以外,再來加上一個 「Taxonomy: Term Name」的項目,那麼阿舍的網址就可以這樣打 http://drupal.soa.tw/update/arthuryu/模組 ( 是的,中文嘛 A 通 ),這時就會在 Update 的 View 裡,只出現作者為 arthuryu 而且分類 ( Taxonomy ) 為 "模組" 的文章,其還滿實用和好用的....呵呵 !!

另外,在前面有提到,「網址」欄位的下面也有舉例說明,說 Arguments 也是可以擺在網址的中間,例如, user/$arg/tracker,不過,在實務上,關於這個用法,阿舍倒是還沒想出可以用在那裡,所以.....就偷了別人的例子來用...請多見諒囉! ...^^!!。

由於 View 的 Arguments 功能,可以透過網址傳入變數,所以,如果想對於一些 Drupal 或模組內建的排列方式動手腳的話,就可以用 View 定一個和現有的網址一樣的 URL ,然後再配合 Arguments 的使用,便可輕易的取代掉現用的 View 或排列。

舉例來說,阿舍就定了一個網址為 image/tid 的 View,然後再將參數設定為 Taxonomy ID ,那麼阿舍出來的這個 View 就可以取代現有的 Image Gallery 的排列方式哩....!!^^

cainiao
User offline. Last seen 1 年 7 週 ago. Offline
Joined: 10/29/2008
终于等到了

hi, 阿舍兄:

终于等到这个教程了。呵呵 ,顶。

發表新回應

此欄位內容將保密,不會公開顯示出來。
  • 自動將網址與電子郵件位址轉變為連結。
  • 可使用的 HTML 標籤:<a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • 自動斷行和分段。

更多關於格式化選項的資訊

Mollom CAPTCHA (play audio CAPTCHA)
Type the characters you see in the picture above; if you can't read them, submit the form and a new image will be generated.

Google 廣告 Cookie 和隱私權政策
當您造訪我們的網站時,我們會透過第三方廣告公司來放送廣告。這些公司可能會使用您在本網站和其他網站上的相關瀏覽資訊 (不含姓名、地址、電子郵件地址和電話號碼),以便提供閣下感興趣之產品和服務的廣告。如果您想要瞭解此作法的詳情,以及如何選擇不讓前述公司使用您的資訊,請按這裡

Drupal 7 預計釋出日期

最早為 2010/08/30
最晚為 2010/10/14
目前版本 Drupal 7.0-alpha6
待處理的 "嚴重問題" 還有 41 個...

詳細內容請參考這裡

*註 : 以上日期是依據目前解決被列為 "嚴重問題" 的處理時間所做的線性和對數預測...,至於有那些問題,請參考這裡

BloggerAds

Drupal 新聞

阿舍的 Plurk

誰正在看什麼...