在添加WordPress主題時檢查功能是否存在


關於WordPress最好的部分是插件。 主題設計師還傾向於使用WordPress插件添加炫酷功能。 在為客戶處理自定義WordPress主題項目時,您需要確保的一件事就是遵循最佳實踐。 昨天,我們收到了一位網站中斷的用戶的詢問。 他有一個人設計的定制設計。 在他更換主持人之前,這個主題非常有效。 發佈內容後,他的單個帖子將不會加載。 評論區域,側邊欄,頁腳,將不會加載任何內容。 它只會輸出錯誤。 我們進去為他們解決了這個問題。 問題在於他的主題設計師沒有遵循最佳實踐。 他有一個非常受歡迎的插件“ User Photo”,該插件可讓您在帖子底部添加用戶的照片,只是他只是直接添加了該功能。 現在,除非插件由於某種原因被禁用,否則這將起作用。 當此客戶端切換主機時,顯然新服務器中未安裝GD Library。 這導致插件停用。 您也無法重新激活該插件,因為它依賴於GD庫。 這導致該站點被所有用戶破壞。 這顯然使主題設計師聲譽不好,因為當客戶詢問問題所在時,我們向他們解釋了。 如果您是添加插件輸出的主題設計師,則應始終遵循最佳實踐。 以下是一些我們如何與客戶打交道的示例:

對於流行的User Photo插件,我們具有以下形式:

ID))
    userphoto($author->ID);
else
    echo get_avatar($author->ID);
?>

上面的代碼檢查兩件事。 它檢查“ userphoto”功能是否存在(基本上,如果插件處於活動狀態)。 第二項檢查是查看特定作者的用戶照片是否存在。 如果兩個檢查都返回true,則顯示userphoto。 否則,我們只是讓它顯示用戶的Gravatar。

對於我們沒有替代品的其他插件,我們總是添加一點註釋。 例如,當我們添加OIO Publisher輸出時:


上面的代碼基本上可以查看OIO Publisher標語區域功能是否存在(除非停用了插件,否則它將存在)。 如果確實存在,則將輸出標語。 如果不存在,則會顯示文本,以使網站所有者知道此插件已被停用。

如果不添加function_exists,則您的站點將在函數失敗的地方返回錯誤。 主題設計師請開始這樣做。