WordPress必備插件(1)Baidu Sitemap Generator安裝注意問(wèn)題說(shuō)明

因?yàn)檫@款插件版本比較老,沒(méi)有兼容php最新版本壳嚎。所以會(huì)出現(xiàn)如下問(wèn)題

安裝這款WordPress百度站點(diǎn)地圖插件:Baidu Sitemap Generator 后臺(tái)出現(xiàn)報(bào)錯(cuò)信息:

解決WordPress不建議給has_cap傳入一個(gè)參數(shù)問(wèn)題

?

解決方法:

?

參考文章:Baidu Sitemap Generator 報(bào)錯(cuò)且不更新解決辦法

?

問(wèn)題原因詳述:

?

WordPress中不同用戶(hù)等級(jí)擁有不同的操作權(quán)限阅酪,這給我們的網(wǎng)站安全提供了很大的保障绸栅。在 WordPress 2.0 以前坟桅,WP插件中使用數(shù)字(用戶(hù)等級(jí))來(lái)標(biāo)識(shí)不同的權(quán)限級(jí)別。這讓程序的可閱讀性大打折扣丈秩。所以從 WordPress 2.0 開(kāi)始就啟用了新的權(quán)限標(biāo)識(shí)符號(hào),使用有具體含義的英文字符串淳衙,同時(shí)保留原來(lái)的那一套表示方法蘑秽。很多插件作者并沒(méi)有采用新的權(quán)限表示方式,因而在開(kāi)啟 WordPress 的調(diào)試模式后箫攀,用戶(hù)會(huì)看到警告肠牲。

中文版本的警告類(lèi)似于,

不建議給has_cap傳入一個(gè)參數(shù)靴跛!用戶(hù)級(jí)別已被廢棄缀雳,請(qǐng)改用能力。 in /usr/share/wordpress/wp-includes/functions.php on line 4031 

復(fù)制

英文版本的警告類(lèi)似于梢睛,

Notice: has_cap was called with an argument that is deprecated since version 2.0! Usage of user levels

復(fù)制

可以看到肥印,只是“不建議”,并不是完全不能用了绝葡。

要解決這個(gè)問(wèn)題深碱,只需要將插件(也許還包括某些主題)中用到的權(quán)限聲明的表示方式替換為新的方式就可以了。

目錄 Contents

    1. 定位需要改寫(xiě)的語(yǔ)句
    1. 改寫(xiě)表達(dá)方式
    1. 新舊權(quán)限表示方式對(duì)照

1. 定位需要改寫(xiě)的語(yǔ)句

首先要定位到需要改寫(xiě)的語(yǔ)句藏畅,這是個(gè)比較麻煩的任務(wù)敷硅。

從上面的警告信息中并不能直接知道是哪個(gè)文件調(diào)用了 functions.php 中的 has_cap 函數(shù)。所以這里只是給個(gè)思路墓赴,無(wú)法給出明確的方法竞膳。

對(duì)于插件,一般是因?yàn)椴寮枰?WordPress 的管理后臺(tái)創(chuàng)建插件的設(shè)置頁(yè)面時(shí)進(jìn)行權(quán)限聲明诫硕。比如在 baidu sitemap 插件中遇到的情況就是這樣坦辟。出現(xiàn)這種情況的標(biāo)志性語(yǔ)句是,

add_options_page

復(fù)制

只要在插件源文件中搜索 add_options_page 關(guān)鍵詞即可定位章办。

如果不是這種情況锉走,那就可以挨個(gè)兒禁用 WP 中的插件,同時(shí)刷新頁(yè)面以確定是否是當(dāng)前插件造成的藕届。如果恰好發(fā)現(xiàn)該警告信息不再提示了挪蹭,就說(shuō)明是當(dāng)前的插件。然后在該插件的源文件中去找相關(guān)的語(yǔ)句休偶。

另外梁厉,還可以通過(guò)在 WP 后臺(tái)中操作時(shí)出現(xiàn)錯(cuò)誤提示的路徑信息來(lái)縮小檢查范圍。如果有什么需要,可以留言咨詢(xún)词顾。

2. 改寫(xiě)表達(dá)方式

如果定位到了出問(wèn)題的 PHP 語(yǔ)句八秃,改寫(xiě)表達(dá)方式就很簡(jiǎn)單了。下面一節(jié)介紹了 WordPress 中新舊角色權(quán)限表達(dá)方式的對(duì)比肉盹。只需要將原來(lái)的表示用戶(hù)級(jí)別的數(shù)字改成新的表示權(quán)限的字符串就可以了昔驱。

例如,原來(lái)的 PHP 語(yǔ)句為上忍,

add_options_page(“Baidu-Sitemap”,”Baidu-Sitemap”, 8, __FILE__, ‘baidu_sitemap_optionpage’);

復(fù)制

該語(yǔ)句因?yàn)橐?WordPress 后臺(tái)添加一個(gè)插件的“選項(xiàng)”頁(yè)面骤肛,因而需要用到 WordPress 中的第 8 級(jí)權(quán)限。查到對(duì)應(yīng)的新的權(quán)限字符為 'manage_options'窍蓝。對(duì)應(yīng)修改為腋颠,

add_options_page(“Baidu-Sitemap”,”Baidu-Sitemap”, ‘manage_options’, __FILE__, ‘baidu_sitemap_optionpage’);

復(fù)制

只需要改其中那個(gè)數(shù)字 8,別的不需要?jiǎng)印?/p>

應(yīng)該注意的是它抱,根據(jù) PHP 的規(guī)則秕豫,傳遞的參數(shù)如果是整型數(shù)字,可以不用加單引號(hào)观蓄,但是改成字符串之后混移,我們需要用英文半角的單引號(hào)將該字符串包起來(lái)。

3. 新舊權(quán)限表示方式對(duì)照

WordPress Codex 中有關(guān)于舊版本數(shù)字式用戶(hù)級(jí)別和新的字符串式權(quán)限聲明的詳細(xì)說(shuō)明可供參考侮穿。

在數(shù)字式用戶(hù)級(jí)別頁(yè)面的 3.12 User Level Capability Table 表格中列出了 11 個(gè)用戶(hù)級(jí)別對(duì)應(yīng)的權(quán)限歌径。而在字符串式權(quán)限聲明頁(yè)面中 3.8 Capability vs. Role Table 一節(jié)里列舉了所有權(quán)限字符串所代表的權(quán)限級(jí)別(對(duì)應(yīng)于超級(jí)管理員、管理員等)亲茅。

原先的數(shù)字式級(jí)別與新的字符串式權(quán)限之間并不是一一對(duì)應(yīng)的回铛。具體應(yīng)該將數(shù)字換成哪個(gè)字符串需要仔細(xì)斟酌】寺啵可能還需要根據(jù)在本文第 1 小節(jié)中定位出的 PHP 語(yǔ)句來(lái)輔助判斷茵肃。原則上,權(quán)限在夠用的前提下越小越好袭祟。

例如验残,前面的例子中需要增加 options 頁(yè)面,那肯定是管理員級(jí)別的權(quán)限巾乳。增加 options 頁(yè)面的目的就是保存該插件的設(shè)置信息您没,這些信息是需要寫(xiě)入到 WordPress 數(shù)據(jù)庫(kù)的 options 表中的。所以胆绊,可以確定為 manage_options 這個(gè)字符串氨鹏。

Capabilities 一節(jié)中詳細(xì)解釋了各個(gè)字符串所代表的操作權(quán)限的范圍。而在 User Levels 一節(jié)中則給出了舊式數(shù)字用戶(hù)等級(jí)所對(duì)應(yīng)的權(quán)限范圍压状,方便縮小查找權(quán)限字符串的范圍仆抵。8-10 級(jí)對(duì)應(yīng)于管理員,3-7 級(jí)對(duì)應(yīng)于編輯,2 級(jí)是作者肢础,1 級(jí)是貢獻(xiàn)者还栓,0 級(jí)是權(quán)限最低的訂閱者碌廓。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末传轰,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子谷婆,更是在濱河造成了極大的恐慌慨蛙,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,198評(píng)論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件纪挎,死亡現(xiàn)場(chǎng)離奇詭異期贫,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)异袄,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門(mén)通砍,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人烤蜕,你說(shuō)我怎么就攤上這事封孙。” “怎么了讽营?”我有些...
    開(kāi)封第一講書(shū)人閱讀 167,643評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵虎忌,是天一觀(guān)的道長(zhǎng)。 經(jīng)常有香客問(wèn)我橱鹏,道長(zhǎng)膜蠢,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,495評(píng)論 1 296
  • 正文 為了忘掉前任莉兰,我火速辦了婚禮挑围,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘糖荒。我一直安慰自己杉辙,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,502評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布寂嘉。 她就那樣靜靜地躺著奏瞬,像睡著了一般。 火紅的嫁衣襯著肌膚如雪泉孩。 梳的紋絲不亂的頭發(fā)上硼端,一...
    開(kāi)封第一講書(shū)人閱讀 52,156評(píng)論 1 308
  • 那天,我揣著相機(jī)與錄音寓搬,去河邊找鬼珍昨。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的镣典。 我是一名探鬼主播兔毙,決...
    沈念sama閱讀 40,743評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼兄春!你這毒婦竟也來(lái)了澎剥?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,659評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤赶舆,失蹤者是張志新(化名)和其女友劉穎哑姚,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體芜茵,經(jīng)...
    沈念sama閱讀 46,200評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡叙量,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,282評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了九串。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片绞佩。...
    茶點(diǎn)故事閱讀 40,424評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖猪钮,靈堂內(nèi)的尸體忽然破棺而出品山,到底是詐尸還是另有隱情,我是刑警寧澤躬贡,帶...
    沈念sama閱讀 36,107評(píng)論 5 349
  • 正文 年R本政府宣布谆奥,位于F島的核電站,受9級(jí)特大地震影響拂玻,放射性物質(zhì)發(fā)生泄漏酸些。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,789評(píng)論 3 333
  • 文/蒙蒙 一檐蚜、第九天 我趴在偏房一處隱蔽的房頂上張望魄懂。 院中可真熱鬧,春花似錦闯第、人聲如沸市栗。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,264評(píng)論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)填帽。三九已至,卻和暖如春咙好,著一層夾襖步出監(jiān)牢的瞬間篡腌,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,390評(píng)論 1 271
  • 我被黑心中介騙來(lái)泰國(guó)打工勾效, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留嘹悼,地道東北人叛甫。 一個(gè)月前我還...
    沈念sama閱讀 48,798評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像杨伙,于是被迫代替她去往敵國(guó)和親其监。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,435評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • 概要 64學(xué)時(shí) 3.5學(xué)分 章節(jié)安排 電子商務(wù)網(wǎng)站概況 HTML5+CSS3 JavaScript Node 電子...
    阿啊阿吖丁閱讀 9,221評(píng)論 0 3
  • 個(gè)人學(xué)習(xí)批處理的初衷來(lái)源于實(shí)際工作限匣;在某個(gè)迭代版本有個(gè)BS(安卓手游模擬器)大需求抖苦,從而在測(cè)試過(guò)程中就重復(fù)涉及到...
    Luckykailiu閱讀 4,729評(píng)論 0 11
  • 官網(wǎng) 中文版本 好的網(wǎng)站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,401評(píng)論 0 5
  • 無(wú)錫鎂鈦鉺金屬制品-陸圓 【日精進(jìn)打卡第149天】 【知~學(xué)習(xí)】 《六項(xiàng)精進(jìn)》2遍 共260遍 《大學(xué)》0遍 共1...
    公子未末閱讀 120評(píng)論 0 0
  • 線(xiàn)程與進(jìn)程的區(qū)別歸納:a.地址空間和其它資源:進(jìn)程間相互獨(dú)立,同一進(jìn)程的各線(xiàn)程間共享膛腐。某進(jìn)程內(nèi)的線(xiàn)程在其它進(jìn)程不可...
    王藍(lán)胖閱讀 396評(píng)論 0 0