wordpress插件开发教程-4_第1页
wordpress插件开发教程-4_第2页
wordpress插件开发教程-4_第3页
wordpress插件开发教程-4_第4页
wordpress插件开发教程-4_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

WordPress 插件(WordPress plugin) 开发教程(4 ) WordPress 插件(WordPress plugin)开发教程(4):本文主要介绍如何在仪表盘上添加插 件的菜单、如何读写数据库并在适当位置显示、如何定义并使用短代码。 前台使用短代码sitelist 的效果: WordPress 插件(WordPress plugin)开发教程 后台插件菜单效果: WordPress 插件开发教程 后台显示页面效果 WordPress 插件开发教程 先来代码,然后解释: WordPress 插件代码 在 wp-content/plugins 文件夹下新建一个文件夹,命名为 plugin-menu,或者你想要 的任何其他名称,随你吧! 新建一个 menu.php,将下面的代码粘贴进去: 1. _; 19. define(PRO_TABLE_PREFIX, $pro_table_prefix); 20. 21. /激活插件时,写入数据库;停用插件时,删除数据 22. register_activation_hook(_FILE_,pro_install); 23. register_deactivation_hook(_FILE_ , pro_uninstall ); 24. /下面的两个函数要求你对 SQL 语言有一定了解哦!回头再聊这个! 25. function pro_install() 26. 27. global $wpdb; 28. $table = PRO_TABLE_PREFIX.“tutorial“; 29. $structure = “CREATE TABLE $table ( 30. id INT(9) NOT NULL AUTO_INCREMENT, 31. name VARCHAR(80) NOT NULL, 32. website VARCHAR(20) NOT NULL, CoolWP.org 撰写此文 S 提供技术支持 3 33. description text, 34. UNIQUE KEY id (id) 35. );“; 36. $wpdb-query($structure); 37. / Populate table 38. $wpdb-query(“INSERT INTO $table(name, website, description) 39. VALUES(Nulled4U, ,This Is A NICE Site)“); 40. $wpdb-query(“INSERT INTO $table(name, website, description) 41. VALUES(Suoling, S,PHP/Wordpress)“); 42. 43. function pro_uninstall() 44. 45. global $wpdb; 46. $table = PRO_TABLE_PREFIX.“tutorial“; 47. $structure = “drop table if exists $table“; 48. $wpdb-query($structure); 49. 50. /添加插件的菜单 51. add_action(admin_menu,pro_admin_menu); 52. function pro_admin_menu() 53. /下面的这个函数是 Wordpress 核心函数,请看本文菜单函数部分 54. add_menu_page( 55. “索凌网络 WP 插件学习“, 56. “WP 插件学习“, 57. 8, 58. _FILE_, 59. “pro_admin_menu_list“, 60. PRO_URL.“/images/menu.png“ 61. ); 62. add_submenu_page(_FILE_,网站列表,网站列表,8,list-site,pro_admin_list_site); 63. 64. /看明白了吧,下面的代码是在你点击菜单项“WP 插件学习”后页面显示的内容,有点儿拙劣 啊!凑合着看吧! 65. function pro_admin_menu_list() 66. 67. echo “下面的网站能让你学习到如何编写 Wordpress 主题和插件! “; 68. ? 69. 70. 索凌网络 “; 98. 99. 100. /短代码 101. 102. add_shortcode(“sitelist“,“pro_tutorial_site_listing_shortcode“); 103. function pro_tutorial_site_listing_shortcode($atts) 104. 105. include front-list-site.php; 106. 107. ? 新建一个 admin-list-site.php 文件,将下面的代码粘贴过去: 1. 2. “ . _( 网站列表示例表 1 ) . “; /第 1 个表的标题? 3. CoolWP.org 撰写此文 S 提供技术支持 5 4. 5. get_results($sql); 9. if(count($results) 0) 10. 11. foreach($results as $result) 12. 13. echo “ 14. “.$result- name.“.$result-website.“.$result- description.“ 15. “; 16. 17. 18. ? 19. 20. 21. 22. 23. 24. 25. 昵称, 28. website = 网站, 29. description = 描述 30. ); 31. register_column_headers(pro-list-site, $columns); 32. ? 33. 34. “ . _( 网站列表示例表 2 ) . “;/第 2 个表的标题 ? 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. get_results($sql); 52. if(count($results) 0) 53. 54. foreach($results as $result) 55. 56. echo “ 57. “.$result- name.“.$result-website.“.$result- description.“ 58. “; 59. 60. 61. echo; 62. 63. ? 新建一个 front-list-site.php 文件,把下面的代码粘贴进去: 1. “ . _( 网站列表 ) . “; 4. global $wpdb; 5. $sql = “SELECT *FROM “.PRO_TABLE_PREFIX.“tutorial where 1“; CoolWP.org 撰写此文 S 提供技术支持 7 6. $results = $wpdb-get_results($sql); 7. if(count($results) 0) 8. 9. foreach($results as $result) 10. 11. echo “称呼: “.$result- name. 12. “网站: “.$result-website. 13. “描述: “.$result-description.; 14. 15. 16. ? 至于上文中提到的 menu.png,随便找一个 16*16 像素的 png 图片吧,放在插件文件夹 之下的 images 文件夹里。 下面开始进行解释: 菜单添加函数 1. add_menu_page( $page_title, $menu_title, $capability, $menu_slug, $function, $icon_url, $position ); 参数说明: $page_title (字符串) (必须) 当点击菜单后将内容显示在标题标签上(Title Tag 于浏览器上)。 $menu_title (字符串) (必须) 显示的菜单名称。 $capability (字符串) (必须) 此菜单使用的权限,这个是权限参数在 WordPress3.0 中已被重新定义,之前 版本可以往这个参数传递用户等级(1-10),但是如果你使用的是 3.0 以后的版本,请传递用户 权限值。参见: /Roles_and_Capabilities#Capability_vs._Ro

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论