国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

WordPress中卸載插件以及移除文章類型組件的代碼示例

2024-05-04 23:41:41
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了WordPress中卸載插件以及移除文章類型組件的代碼示例,包括卸載函數鉤子的方法介紹,需要的朋友可以參考下
 

插件卸載
在開發插件的過程中,免不了在數據庫創建一些字段乃至表,或者創建了一些定時任務,當插件被刪除的時候這些東西就會被留在 WordPress 上,變成垃圾,作為負責的開發者,有必要在刪除插件的時候幫助用戶刪除掉我們留下的痕跡。

uninstall.php 文件

做到這點有兩種方法,一時在插件的根目錄創建一個 uninstall.php 文件,在你的插件被刪除之前會調用執行這個文件,但要注意就是防止有人惡意訪問這個文件我們需要判斷一下 WP_UNINSTALL_PLUGIN 常量是否被定義,沒定義則結束程序:

<?php//防止有人惡意訪問此文件,所以在沒有 WP_UNINSTALL_PLUGIN 常量的情況下結束程序if( !defined( 'WP_UNINSTALL_PLUGIN' ) ) exit(); //可以在要卸載的時候做一些事情,比如刪除一些字段,注銷定時任務delete_option( 'endskin_name' );delete_option( 'endskin_name2' );

卸載鉤子

第二種方法叫做卸載鉤子,在你的根目錄沒有 uninstall.php 文件的時候 WordPress 會去執行卸載鉤子。

例子:

register_uninstall_hook( __FILE__, 'Bing_uninstall_func' );function Bing_uninstall_func(){  //可以在要卸載的時候做一些事情,比如刪除一些字段,注銷定時任務  delete_option( 'endskin_name' );  delete_option( 'endskin_name2' );  }

這些代碼直接放到插件的文件里即可,不過卸載鉤子不能使用類函數,否則會把 $this 保存到數據庫里,所以如果不是萬不得已請盡可能的使用 uninstall.php 文件。

移除自定義文章類型的部分組件
WordPress 自定義文章類型用很多組件,當我們不需要的時候可以通過 remove_post_type_support() 函數來移除掉,下邊是一份可以移除的組件的列表:

  • title
  • editor
  • author
  • thumbnail
  • excerpt
  • trackbacks
  • custom-fields
  • comments
  • revisions
  • page-attributes
  • post-formats

比如移除掉自帶的 “文章” 文章類型的評論功能:

/**  *移除文章的評論功能  *http://www.endskin.com/remove-post-type-support/*/function Bing_remove_post_type_support(){  remove_post_type_support( 'post', 'comments' );}add_action( 'init', 'Bing_remove_post_type_support' );


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永丰县| 武胜县| 鹤壁市| 玉林市| 宜昌市| 恭城| 含山县| 芷江| 枣强县| 乐安县| 舞阳县| 增城市| 永康市| 沁源县| 宕昌县| 萨嘎县| 古蔺县| 利辛县| 丁青县| 平阳县| 布尔津县| 广宁县| 正安县| 广丰县| 锡林浩特市| 邳州市| 绥宁县| 通山县| 繁昌县| 松桃| 博野县| 新乐市| 子长县| 吉水县| 朝阳区| 曲麻莱县| 剑阁县| 台北市| 新泰市| 夹江县| 阳信县|