pt古怪猴子的规律技巧:WordPress子主題簡介和原理

独家真实传授pt古怪猴子玩法规律 www.cfrtc.icu 根據上文所述,WordPress也提供了子主題這樣的方法給我們,讓我們可以通過使用子主題進行修改WordPress主題,而不需要直接修改源碼,而出現無法更新的內容。 WordPre…

根據上文所述,WordPress也提供了子主題這樣的方法給我們,讓我們可以通過使用子主題進行修改WordPress主題,而不需要直接修改源碼,而出現無法更新的內容。

WordPress子主題修改原理

子主題需要有一個父級主題存在才能啟用,根據WordPress主題的主要文件,子主題存在,WordPress則會自動使用子主題的文件,而放棄使用父主題。

這樣,我們先要修改父級主題的哪一個文件,則可以復制這個文件到子主題中,然后再修改這個文件,這樣就可以達到修改的目的了。

當然,WordPress的主題核心文件才能夠被識別替換,而大部分主題除了主要文件,還有較多其他的文件是無法進行修改的。

下面我們就以WEB主題公園云端系列框架為例,教大家如何進行修改。

1.概述,子主題能夠被替換的文件(WordPress主題的核心文件)

WordPress子主題可覆蓋的的核心文件列表如下:

主要文件

  • style.css -主樣式表,WordPress主題信息存儲(主題名稱、版本、作者等)【子主題必須含有,注意這個文件不會覆蓋,而是增加樣式

  • screenshot.jpg 子主題封面【最好是有,方便分別】

  • functions.php -主題功能文件,主題所需要使用的函數、方法、類均可在此文件輸入【注意這個文件不會覆蓋,而是增加函數,或者類

  • index.php – 主題首頁文件

  • header.php – 主題頂部文件

  • footer.php -主題底部文件

 

列表

  • archive.php -所有歸檔列表(如果沒有tag.php、category.php、author.php、date.php等頁面,則會使用這個作為默認列表)

  • tag.php -標簽結果列表(點擊一個標簽,含有這個標簽的所有文章列表)

  • category.php- 分類目錄列表

  • author.php -作者文章列表

  • date.php – 時間歸檔

  • search – 搜索列表

 

頁面/文章

  • page.php – WordPress頁面(單頁)

  • single.php -文章頁

 

其他

  • 404.php -404狀態頁面

  • woocommerce文件夾(若主題支持woocommerce,則會在主題找到woocommerce模板文件夾,woocommerce文件子主題全部能夠覆蓋掉)

 

以上文件,子主題若存在,WordPress則會直接使用子主題的文件,而放棄使用父級主題,因此,如果你需要修改父主題的哪一個文件,則直接找到父級主題的文件,復制粘貼到子主題中進行修改即可。

ps.注意,子主題中,style.css 和functions.php 不是覆蓋父級主題,而是增加:

  • style.css 輸入css源碼,在用WordPress鉤子輸出到head ,增加的css樣式則會對網站產生影響

  • functions.php,輸入函數、鉤子、類,直接會對網站產生影響,但不影響父級主題的函數、鉤子和類,這里需要注意,不要輸入和父級主題相同的函數名、類名,否則會出現函數名沖突報錯。

 

 

2.實例空子主題下載,利用此空子主題制作你自己的子主題

子主題(空)下載:子主題空模板下載

子主題空模板說明:

style.css

按照上面的說明進行修改成你自己的,即可正確的制作成你自己的子主題。

這個css文件是空的,除了這一段注釋之外,沒有任何css樣式,在修改之后,你需要增加一些樣式進去的話,直接增加是無效的,因為這個css樣式沒有在網站頭部輸出。

因此我們增加了一個函數文件 functions.php

這個里面包含一個主題掛載css的函數和鉤子:

因此如果你直接使用我們所提供的這個子主題進行的話,style.css的樣式會對網站直接產生作用。


本文實戰修改的第一部分說明了所有可被直接替換的內容以及對應的文件,因此如果你想要修改任意上文所述的文件,則是直接復制父級主題的文件到子主題,然后直接修改即可。

還有很多的內容,直接替換是無法進行修改的,下面我們就來說一說,哪一些內容無法被替換,應該如何進行。

 

不可被替換的原因

不可被替換的文件,不是WordPress主題的核心文件,而是主題開發者增加WordPress主題的功能而寫的一些文件,這些文件通常在functions.php中 使用php關聯函數被關聯了。

也就是說,實際上這些文件的代碼都是可以放入functions.php的,為了方便維護和管理,分成了文件和文件夾,之后主題作者可以輕松的找到這些內容,而不是將所有的功能代碼都放入functions.php中,這樣難以維護。

而前文所說,functions.PHP是不可被替換的,而只能增加內容,因此,除了WordPress主題的核心文件,其他文件不可被替換。

 

1.額外的頁面模板- page(?).php

WordPress提供了頁面模板,你可以制作多個頁面模板在后臺進行選擇,任意文件名稱,帶有如下php注釋的,即可被識別為頁面模板:

2.WordPress的小工具(widget)

WordPress的小工具,在子主題中是無法直接被替換的(上文已說明原因,此處不再重復)

因此,如果我們想要修改某一個主題提供的小工具,我們只能新建一個小工具,而非替換掉他。

新建小工具,首先你需要建立一個文件夾(分類好你的各種功能文件,養成良好習慣)widget

然后將你的父級主題的widget文件夾中對應的小工具文件復制到子主題的文件夾(或者其他文件夾,一般來說,widget就是小工具的意思)

然后打開這個文件,修改這個小工具的類名稱、id、小工具名稱和描述

此處 case_show 為類名稱,上圖所有case_show都需要修改(小工具注冊,是使用類進行注冊的)

$name變量后面是小工具的名稱

description 后面 是小工具描述(填寫描述請用單引號包裹)

最底部的注冊函數類名稱也需要修改,這樣我們就復制了一個和父級主題一樣的小工具,但這時候我們在后臺還無法看到這個小工具,

因為還需要在functions.php中進行關聯,打開子主題的functions.php

輸入如下代碼

include_once(“widget/case_show.php”);

 

這樣,widget/case_show.php就被包含在functions.php里面了,這樣小工具就能被后臺識別出來了,現在可以隨意進行修改,這個新增的小工具就可以修改為你想要的了。

 

3.其他的功能

其他的功能文件和小工具類似,你可以用同樣的方法,比如seo的類、函數和鉤子,你可以新建一個文件夾 seo 再放入文件,關聯到functions.php內即可直接使用。

除了WordPress主題的核心文件之外,其余所有的功能、設置和函數,都是通過WordPress鉤子實現的,因此,你可以放入任意你想要的內容,通過WordPress鉤子去實現。

 

4.需要注意子主題的資源路徑

我們知道獲取到WordPress主題模板的路徑是get_bloginfo(‘template_url’) 函數,如果你在子主題使用這個函數,他依然會調用父級主題的資源。

子主題的模板路徑是get_stylesheet_directory_uri(),使用這個函數,才能調用子主題的資源,不要弄混淆了。

ps.這里是模板路徑,一般調用靜態資源,包含圖片(jpg/png/gif)、視頻(MP4)、腳本(js)、樣式表(css),還有zip、pdf等等靜態資源,而WordPress提供的get_template_part(),則沒有此區別,在子主題中則是直接獲取子主題的內容。

 

到此,使用WordPress子主題進行開發的詳細說明就到這里了,如果你對于WordPress或者php有一定的基礎,相信這篇文章非常清晰的說明了如何使用子主題進行WordPress的二次開發和修改的。

如果你對于子主題有什么好的見解和不懂得地方,也可以在此文章下和我們一起討論。

為您推薦

返回頂部