不到50行代碼就能實現一個 WordPress 主題的選項框架(wordpress 主題開發框架)

之前我寫了一個函數就搞定系列來介紹使用 WPJAM Basic 開發,一共有5篇,分別涉及設置選項,文章選項,后臺文章列表欄目, 分類選項,后臺分類列表欄目這五個方面的快速開發。

為了大家使用,我還還提供了 PDF 文檔下載,大概有20多頁,當作「WordPress果醬」公眾號的第一本電子書發布。

但是還是有些同學覺得難以上手,所以今天想了一下,就簡單更新了一下 Sweet 主題,并且出了一個主題的選項開發框架,并且不到50行代碼。

什么意思呢?一般來說新人接觸 WordPress 開發,最早肯定是想自己做一個 WordPress 主題,而做 WordPress 主題,在后臺做一個設置選項頁面,然后在主題中調用這些選項是最繁瑣。

現在網上有很多這方面適合二次開發的選項框架(Option Framework),所以我把 Sweet 主題這部分代碼單獨整理成一個文件,然后只需要修改或者增加設置的選項字段,和其他的一些名字即可直接使用。

首先在自己開發的主題中引入該文件,假設我們把它放到主題的 inc 目錄下,那么在主題的 functions.php 文件增加引入的代碼如下:

include TEMPLATEPATH.'/inc/option.php';

然后我們先看看效果,目前在后臺增加了一個「主題設置」的后臺主菜單:

「主題設置」這個名字和左邊的圖標,你可以修改成你主題的名字即可,修改的位置大概在30行,相關的代碼:

public static function get_menu_page(){ return [ 'menu_slug' => 'wpjam-theme', 'menu_title' => '主題設置', // 改成你主題的名字 'icon' => 'dashicons-hammer', // 改成自己喜歡的 icon 'capability' => 'manage_options', 'position' => '59', 'function' => 'option', 'option_name' => 'wpjam_theme', ];}

修改的位置,我都通過注釋做了標記。

然后點擊進去,可以看到設置頁面有兩個標簽頁:

不到50行代碼就能實現一個 WordPress 主題的選項框架(wordpress 主題開發框架)

第一個標簽頁有兩個圖片上傳按鈕和一個多圖上傳器。

然后第二個標簽頁,我簡單羅列了常用的幾種表單字段:

不到50行代碼就能實現一個 WordPress 主題的選項框架(wordpress 主題開發框架)

標簽頁名字和這些字段如何修改也非常簡單,相關的代碼在 get_sections 方法中:

public static function get_sections(){ return [ 'section1' => [ 'title' =>'標簽頁1', 'fields' =>[ 'logo' => ['title'=>'網站 LOGO', 'type'=>'img', 'item_type'=>'url', ], 'favicon' => ['title'=>'Favicon', 'type'=>'img', 'item_type'=>'url', ], 'images' => ['title'=>'多圖上傳', 'type'=>'mu-img', 'item_type'=>'url', ], ] ], 'section2' => [ 'title' =>'標簽頁2', 'fields' =>[ 'text' => ['title'=>'普通輸入框', 'type'=>'text'], 'number' => ['title'=>'數字輸入框', 'type'=>'number'], 'checkbox' => ['title'=>'選擇框', 'type'=>'checkbox', 'description'=>'你要開啟該功能'], 'checkboxs' => ['title'=>'復選框', 'type'=>'checkbox', 'options'=>[1=>'選項1', 2=>'選項2', 3=>'選項3', ]], 'radio' => ['title'=>'單選框', 'type'=>'radio', 'options'=>[1=>'選項1', 2=>'選項2', 3=>'選項3', ]], 'textarea' => ['title'=>'文本框', 'type'=>'textarea'], ] ], ];}

可以說完全是配置型代碼,可以先備份一下,然后自己嘗試去修改一下看看效果。

選項字段都設置好了,并且也保存了設置,最后怎么獲取呢?對的,這個框架還提供了獲取函數:

wpjam_theme_get_setting($name, $default=null);

它有兩個參數,$name 是選項名稱,$default 是默認值,一眼就明白怎么用了吧?

有了這個選項框架,制作 WordPress 主題的選項頁面,和應用這些選型,變得異常的簡單,但多說無用,最重要的是自己親手試一下。

最后說一下,使用該框架制作的后臺設置頁面,都是 WordPress 默認的 UI 樣式,感覺和 WordPress 后臺原生的頁面幾乎一樣,對于用戶的體驗是最好的。

大家對 WPJAM Basic 進行二次開發有什么想法和建議,也可以給我留言。

該文件我也一起打包到了「使用 WPJAM Basic 進行快速開發指南」電子書的下載包里面,文件名是 option.php。

版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。

(0)
上一篇 2024年5月16日 上午9:42
下一篇 2024年5月16日 上午9:54

相關推薦

国产精品日韩欧美一区二区三区| 日韩中文字幕在线| 全彩口工彩漫画无遮漫画| 美女开嫩苞视频在线播放| 国产精品jlzz视频| av无码东京热亚洲男人的天堂 | 成人综合激情另类小说| 九九精品视频在线| 欧美一区二区三区激情视频| 亚洲视频在线观看不卡| 男人插女人视频软件| 免费无码一区二区三区| 精品一区二区久久久久久久网站| 国产亚洲欧美日韩综合综合二区| 老司机午夜在线视频| 四影虎影ww4hu32海外网页版| 色狠狠一区二区三区香蕉| 国产乱叫456在线| 精品乱子伦一区二区三区| 国产一区二区电影| 草草草在线观看| 国产成人黄网址在线视频| 91麻豆精品激情在线观看最新 | 中文字幕第2页| 扒开双腿猛进入免费视频黄| 久久精品无码一区二区三区不卡| 日韩欧美黄色片| 亚洲av无码专区在线观看下载 | 亚洲精品成人区在线观看| 深夜影院一级毛片| 免费啪啪社区免费啪啪手机版| 男女猛烈无遮挡免费视频| 午夜在线观看福利| 精品人妻久久久久久888| 四虎影视免费永久在线观看| 狠狠躁天天躁中文字幕| 国产一区二区三区高清视频| 白丝女班长被弄得娇喘不停| 亚洲色欲久久久久综合网| 朝鲜女人大白屁股ASS孕交| 亚洲国产精久久久久久久 |