wordpress主題小工具,可以自由拖動到側邊欄,並在前台實現相應功能!但主題自帶的小工具一般不能滿足我們更www.cppcns.com強大的需求,怎樣,跟著看看怎麼自定義側邊欄小工具!
我們先來了解一些個概念性的東西,不想了解可直接跳過,無妨對後面的小工具製作的理解!wordpress提供了乙個wp_widget類,我們只需要擴充套件wp_widget類,就可以製作自己的小工具(widget),此類檔案位於 wp-includes\widgets.php,無聊的可以扒來看看!
下面結合例項來說一下小工具的製作流程,例項小工具的功能是實現呼叫指定分類的文章!下面正式開始:
新建乙個檔案 cat_posts.php,並在主題 functions.php 裡引入此檔案!cat_posts.php 主要包含以下幾個部分:
1、自定義擴充套件類
首先定義乙個 wp_widget 的擴充套件類,類名隨意但不得與其它類名衝突,比如 catpostswidget,同時建構函式。
class catpostswidget extends wp_widget
}注:建構函式 catpostswidget() 中定義了兩個陣列變數$widget_ops和$control_pos,傳遞給$this->wp_widget()進行小工具的初始化。
wp_widget引數詳解:
第乙個引數是$id_base,我們一般設定成false即可,也可以使用小工具的名字,如 『catpostswidget』;
第二個引數指定小工具顯示的名稱;
第三個引數指定類名和小工具的描述,這兩個引數結合在一起的效果如下
第四個引數定義小工具的寬度和高度,一般只需要前三個引數即可,它影響的效果是當你把小工具拖到側邊欄時的寬度和高度。
2、擴充套件類的三個重要函式
小工具擴充套件類需要定義的三個重要函式:form()、update()、widget()
form()函式一般是用來顯示小工具的選項設定表單,表單的內容根據需要自己定義,示例小工具定義了4個選項可供設定:
title:模組標題,可設預設值,如「分類文章」;
title_en:英文標題,可設預設值,如「title」;
num:顯示文章數量,可設預設值,如 10;
cat:分類目錄id,,可設預設值,如0,即顯示所有分類下的文章
後台顯示效果:
form() 函式**:
functi程式設計客棧on form($instance)設定表單中$instance陣列的4個key:title、title_en、showposts、cat(key名可自由定義),然後由 wordpress 的函式 get_field_name 和 get_field_id 將表單中的設定項都儲存到相應的陣列key中。
update()函式用於更新儲存由 form() 表單傳遞來的設定項資料。
function update($new_instance,$old_instance)注:此函式也可省略不定義,預設返回的將是 $new_instance,也就是說在小工具選項中所做的更改同樣能得到儲存,但為了保證表單中資料的安全性,我們可以定義一下,並可使用php函式 strip_tags 和 stripslashes 來過濾掉輸入的不合法的字元。
widget()函式定義小工具在前台頁面中的顯示樣式
function widget($args, $instance)
echo '';
} echo $after_widget;
}先使用了extract函式把陣列中的keys轉換成變數,然後從$instance中取出儲存的各個key的值,再輸出一下文章列表樣式即可。
前端效果圖如下:
註冊小工具
到此,自定義小工具類 catpostswidget 已經定義完成,最後我們還需要一步:註冊小工具類,以完成對小工具的啟用。
register_widget('catpostswidget');注:啟用**要放在類定義之外。
好了,如此完整,你還不趕緊自定義乙個!!
文章**:
本文標題: wordpress自定義側邊欄小工具
本文位址: /news/exp/45692.html
頁面側邊欄 使用自定義模板標籤
這是個人根據大牛部落格教程的學習記錄,知識拾遺,複習。使用標籤模板。需要引入template form django import template 然後例項化了乙個template.library類,並將函式get recent posts裝飾為register.tag。這樣就可以在模板中使用語法...
WordPress 主題教程 6 側邊欄
側邊欄是從零開始建立 wordpress 主題系列教程的第六篇,這一篇我們主要講解 wordpress 主題的側邊欄,讓你很快掌握它的結構,並能編碼和樣式化它。在開始側邊欄之前,這是現在 index.php 檔案的樣子。第1步 建立 id 為 sidebar 的 div 首先讓我們建立乙個名字為 s...
iView 4 自定義側邊欄觸發器(修正)
2.1 依賴包,view design 4.3.2 2.2 vue cli建立乙個hello專案 過程略 2.3 使用iview官網的布局模板 2.4左側側邊欄的選單中,新增子選單元件 右側頭部新增標題 1 解決的主要問題是iview中多級子選單沒有隱藏的問題 主要思路是借鑑 上文2.3中官網的布局...