久久精品水蜜桃av综合天堂,久久精品丝袜高跟鞋,精品国产肉丝袜久久,国产一区二区三区色噜噜,黑人video粗暴亚裔

Joomla/MosIf的使用

來自站長(zhǎng)百科
Jiaomh討論 | 貢獻(xiàn)2011年3月4日 (五) 16:15的版本 →?參考來源
(差異) ←上一版本 | 最后版本 (差異) | 下一版本→ (差異)
跳轉(zhuǎn)至: 導(dǎo)航、? 搜索

Joomla | Joomla使用手冊(cè)

MosIf是一個(gè)Joomla!觸發(fā)器(mambot)的名稱。所謂觸發(fā)器,就是當(dāng) Joomla! 的頁面被瀏覽器打開時(shí),就立即執(zhí)行的“機(jī)器人代碼”。通常來說,“頁面被打開”就是觸發(fā)器運(yùn)行的唯一“觸發(fā)”條件。但是,MosIf 是一個(gè)特例。

MosIf 特殊在,在某些特定條件下才能看到它執(zhí)行的結(jié)果。例如,有一段文字指定只給“熊貓燒香”這個(gè)會(huì)員看,那么其他訪客或會(huì)員打開該頁面時(shí)就看不到這段話,而“熊貓燒香”會(huì)員卻在登錄后能在同一個(gè)頁面上看到這段文字。嚴(yán)格來講,看不到結(jié)果的時(shí)候,MosIf 也是運(yùn)行了的,只不過沒有“顯示”出來。給人的感覺似乎并沒有執(zhí)行。

為什么要用MosIf[ ]

首先舉一個(gè)簡(jiǎn)單的例子來說明:我們都知道Joomla!后臺(tái)可以對(duì)某個(gè)模塊或某篇文章設(shè)置其訪問權(quán)限,比方說只讓注冊(cè)會(huì)員看到,而未注冊(cè)訪客看不到。這樣做的好處是可以誘惑訪客注冊(cè)為會(huì)員。但是,如果反過來:我們希望某些文字只展示給未注冊(cè)訪客(含未登錄的會(huì)員),而注冊(cè)會(huì)員在登錄后就看不到—— 這一點(diǎn)Joomla!就做不到!因?yàn)殚_發(fā)人員認(rèn)為很可笑:憑什么未注冊(cè)訪客都能看到的東西,站內(nèi)注冊(cè)會(huì)員卻看不到?他們認(rèn)為不公平!

但是,這種需求與公平無關(guān)。例如,我想在一篇名為《歡迎訪問我的網(wǎng)上家園》的文章中,分別對(duì)未注冊(cè)訪客和會(huì)員問候一下,而且我希望未注冊(cè)訪客看到的文章內(nèi)容是“親愛的訪客朋友…… 點(diǎn)擊此處立即注冊(cè)…… 如果您已經(jīng)注冊(cè),請(qǐng)點(diǎn)擊此處登錄”,而已注冊(cè)會(huì)員在登錄后看到的是“親愛的會(huì)員…… 感謝您在本站注冊(cè)”。也就是說,會(huì)員在登錄后完全看不到給訪客顯示的文字。遺憾的是,Joomla! 本身不具備這個(gè)能力——除非你準(zhǔn)備兩篇內(nèi)容不同的文章,但是這樣就背離了我們的初衷:文章的數(shù)量增加了,而且URL也不同。

如果啟用了 MosIf 就很容易做到:這個(gè)觸發(fā)器可以基于用戶類型(訪客、會(huì)員、管理員等等)而顯示指定的文字。例如,用mosif 來完成上面的任務(wù),其代碼就是:

{mosif usertype=registered}親愛的會(huì)員{else}親愛的訪客朋友{endif}:

上面一段代碼執(zhí)行后的結(jié)果就是會(huì)員和訪客看到不同內(nèi)容的問候語。

用MosIf能干什么[ ]

這個(gè)條件觸發(fā)器(Conditional Mambot)支持的條件可不止一種,條件還可以是:用戶名、文章作者、瀏覽器版本、日期、時(shí)間、星期、瀏覽器語言、IP 地址,甚至是 cookie !

例如,我們顯示一段文字,只允許會(huì)員 batman 看到:

{mosif username=batman}親愛的batman{else}陌生人{(lán)endif},您好?。?

至于其他條件的應(yīng)用,大家參看安裝包中的 readme_cn.txt 文件。

在最新的 1.11 版本中,軟件作者 Martin Larsen 還增加了“嵌套”功能。即,在MosIf 語句中可以嵌套另一個(gè) MosIf 條件,而且嵌套曾數(shù)不限。唯一要注意的是:為了避免代碼混淆,每一層必須設(shè)定一個(gè)識(shí)別標(biāo)志。

舉例來說,我們剛才問候了 batman ,這次我們搞復(fù)雜一點(diǎn):我們判斷時(shí)間是否已過23:00 ,如果過了就提醒他休息,如果沒過,就說點(diǎn)別的;同時(shí)對(duì)于陌生人也作出提醒:

{mosif username=batman}親愛的batman 時(shí)間 {mosif.a time gt 23}很晚了{(lán)else.a}還不算晚{endif.a}{else}陌生人{(lán)endif},您還在網(wǎng)上流浪嗎?

可以看出,這是嵌套了兩層 MosIf,內(nèi)層的增加了一個(gè) .a 的識(shí)別標(biāo)志。那么 gt 又是什么?這表示 Greater Than,即“大于”(>)。這是 MosIf 允許的“運(yùn)算符”。

MosIf用法[ ]

MosIf 的語法是:

{mosif <參數(shù)><運(yùn)算符><列表>}some content{else}other content{endif}

<參數(shù)> 包括:username | usergroup | usertype | ip | language | cookie_<name> | author | browser | date | time | datetime | weekday

<運(yùn)算符> 包括:> | < | = | != (分別代表“大于”、“小于”“等于”和“不等于”),其中前兩個(gè)還可以寫作 gt (greater than)和 lt (less than)。

<列表> 表示參數(shù)值可以是多個(gè),互相用英文逗號(hào)分隔。例如,我們希望 batman 、spider 和 superman 三個(gè)會(huì)員看到同樣一段文字,而其他人看不到,就可以寫成:

{mosif username=batman, spider, superman}bla bla bla {else} heyihayo {endif}

另外,MosIf 還支持使用通配符(Wildcard),同樣的,? 表示任意一個(gè)字符,* 表示任意數(shù)量的任意字符。例如,username=john* 就表示以 john 開頭的所有會(huì)員。

通配符可以用來描述IP地址段。例如,我們只允許特定IP范圍的訪客看到某些內(nèi)容:

{mosif ip=10.0.0.?}這段文字僅對(duì)網(wǎng)絡(luò)地址范圍 10.0.0.0-10.0.0.9 的用戶可見{endif}

由于?表示任意一個(gè)字符,因此只能是 0 至 9;假如使用*,則表示 0 至 255。

幾點(diǎn)注意事項(xiàng):

  • MosIf 標(biāo)記可以跨越多行。
  • 條件及名稱是區(qū)分大小寫的。
  • 您可以在逗號(hào)(commas)及等于號(hào)(equal sign)之前或之后添加空格以便于識(shí)別。

最后,提醒一下:當(dāng)網(wǎng)站啟用了 PDF 按鈕,顯示文章的 PDF 格式時(shí),MosIf 觸發(fā)器不能生效。如果您希望 mosIf 在 PDF 視圖下生效,你必須上傳 Martin 修改過的 pdf.php 文件(此文件在安裝包內(nèi))到服務(wù)器上,放置到 /includes 目錄,覆蓋Joomla! 原有的同名文件。

參考來源[ ]

http://www.joomlagate.com/article/joomla10-tutorial/mosif-execute-joomla-command-on-conditions/

Joomla 1.0使用手冊(cè)導(dǎo)航

Joomla安裝

Joomla!的安裝

Joomla 1.0教程

讓網(wǎng)站自動(dòng)適應(yīng)掌上電腦閱讀版面 | MosIf的使用 | Joomla登錄模塊的DIY改造| 用下拉式頁面跳轉(zhuǎn)替換Joomla跳轉(zhuǎn)列表 | configuration.php文件操作 | 用blog形式做簡(jiǎn)單的產(chǎn)品展示 | 將DreamHost的mysql數(shù)據(jù)導(dǎo)入及導(dǎo)出的問題 | 給頁面頂端添加ActiveX Infobar | 用JA Transmenu模塊做多級(jí)彈出菜單 | 用橋接器整合開源Gallery2圖庫到Joomla | 用CB Profile Gallery搭建交友網(wǎng)站的會(huì)員相冊(cè) | 在網(wǎng)頁中插入Google Map地圖 | VM中產(chǎn)品詳情只顯示大圖的實(shí)現(xiàn) | Joomla!擴(kuò)展(組件、模塊、觸發(fā)器)的漢化 | Joomla! Pack的使用 | 應(yīng)用JSMF橋接器在Joomla!上安裝SMF論壇 | Advanced Flash Mp3 Player播放器模塊用法 | Joomla/Allvideos Plugin 引用視頻、音頻的方法|geshibot使用詳解 | 表格式模板列寬度自動(dòng)擴(kuò)展的實(shí)現(xiàn) | Joomla! Tkit使用詳解 | Community Builder 1.0.2 的安裝方法 | 利用CSS給文章標(biāo)題添加圖片 | 如何選擇合適的下載組件 | 讓Joomla支持flash格式的banner

其他Joomla教程

用XAMPP快速搭建Joomla本地測(cè)試服務(wù)器 | 用Gmail的SMTP發(fā)送Joomla激活及通知郵件 | 深入認(rèn)識(shí)Joomla CMS:擴(kuò)展、菜單及模板 | Joomla 1.5教程 | Joomla高級(jí)教程 | Joomla! SEO教程