鑰匙要點
-
WordPress中的自定義分類法允許更量身定制的內(nèi)容和構(gòu)造內(nèi)容,增強站點組織和用戶導航。
通過添加自定義字段並使用鉤子修改管理屏幕,可以在術(shù)語創(chuàng)建和編輯過程中捕獲其他信息。
- 擴展分類法的過程涉及利用特定的掛鉤,例如`ectory_add_form_fields`和'category_edit_form_fields`用於添加自定義輸入字段,以及`creation_category`和'edrace_category''和`edit_category“保存添加信息。 通過允許存儲和檢索與各種術(shù)語相關(guān)的詳細元數(shù)據(jù),可以利用分類法和檢索可以利用以改善內(nèi)容表現(xiàn)和SEO。 >本教程提供了有關(guān)如何在內(nèi)置和自定義分類法中實施自定義字段的綜合指南,確保WordPress開發(fā)人員可以適應(yīng)分類法以有效地滿足特定項目要求。
- 什麼是WordPress分類法/自定義分類法?
- 分類學本質(zhì)上是將信息集分組在一起的一種方法。
> >我上一篇關(guān)於自定義WordPress分類法的文章所涵蓋的 - ,WordPress使用其內(nèi)部構(gòu)建的分類學類別和標籤來為您的內(nèi)容類型提供分組,並且默認情況下將這些應(yīng)用於帖子內(nèi)容類型。這些分類法由一個或多個術(shù)語組成,這些術(shù)語基本上是用來將您的項目分組在一起的名稱。 雖然標準分類法可能很好,但有時您可能需要其他方法將內(nèi)容分組在一起,這是合乎邏輯的。這就是自定義分類法可以證明具有異常有用的地方。
- 自定義分類法,您可以創(chuàng)建自己的名稱和結(jié)構(gòu)來組織帖子。您可以創(chuàng)建一個稱為grade_ranking的新分類法,該分類法將通過等級,信用,區(qū)分和高分辨率來處理您的帖子的排名。
定義分類法時,您會確定它是層次結(jié)構(gòu)還是非層次結(jié)構(gòu)。這確定將收集有關(guān)您的分類法的哪些信息。
>
>層次分類法與類別類似,允許不同級別的條款(您可以將父母和子女分配為條款)。 非層次分類法的作用就像標籤一樣>您的自定義分類法可以讓您輸入以下每個條款
>的信息- >名稱
- 定義用於術(shù)語本身的名稱,這將顯示給最終用戶。應(yīng)用於類別和標籤 >
- > sl
- 確定用於該術(shù)語的URL(通常較低的情況,空間由儀表板字符代替)。適用於類別和術(shù)語
- >父母
- >讓您確定您的期限是否為頂級父母期限,還是該期限是子項。僅適用於層次分類法,例如類別 >
- 描述
- >對此術(shù)語的簡要說明。這在術(shù)語列表頁面上顯示(當您單擊以查看術(shù)語本身時) >
這是WordPress在您的條款方面將為您提供的全部。
>擴展分類法
>默認信息可能是您的分類法所需的全部信息,但您可能需要保存其他信息,這些信息可以在網(wǎng)站上使用。
>> WordPress優(yōu)惠是一系列掛鉤,可用於修改分類法屏幕的管理區(qū)域,並在保存其他信息的過程中為您提供幫助。
對於我們的教程,我們將擴展默認類別分類學。您可以輕鬆地擴展自己創(chuàng)建的內(nèi)部分類法或分類法,但是為簡單起見,我們將修改現(xiàn)有的分類法。我們從哪裡開始?
>通過分類管理屏幕
創(chuàng)建它們 在編輯您的分類法所綁定的帖子類型的同時,即
例如,您可以在類別管理菜單(通過定義名稱,slug,partend Description等)或直接在您的帖子或頁面中創(chuàng)建它們(通過使用該類別的菜單(通過使用該類別),您可以為類別分類的類別創(chuàng)建術(shù)語類別元框並動態(tài)添加一個新類別)。- >
- >由於我們將要保存有關(guān)我們條款的其他信息,因此我們將使用分類法管理屏幕,因為它們提供了添加,編輯和刪除條款的最佳方法。 需要修改什麼?
- > >使用分類法時,您將與添加和編輯管理屏幕進行交互。這些屏幕處理添加新術(shù)語並分別編輯現(xiàn)有術(shù)語的過程。 WordPress提供了一系列掛鉤,這些掛鉤可幫助您鉤住特定功能,並為您提供一種修改核心功能的簡便方法。
>由於我們將保存其他信息,因此我們需要修改兩個屏幕,以便我們可以連接,收集和與已保存的信息進行交互。
> 在本教程中,我們將添加其他表單元素,以便我們可以收集有關(guān)類別的更多信息。為此,我們將捕獲以下元素:- >文本
- > textarea
- 選擇
- 複選框
這些是最常見的形式元素,應(yīng)有助於您更好地了解如何擴展分類法以保存其他信息。
修改添加類別管理菜單>我們需要修改的第一個位置將是添加類別管理菜單。此菜單通常是您添加所有類別的地方,我們需要保存其他信息。
我們需要使用類別_add_form_fields鉤。
>類別_ADD_FORM_FIELDS HONK用於將其他信息添加到類別管理屏幕中。該鉤子採用單個參數(shù),這是分類法本身的名稱。此掛鉤使我們可以在添加類別屏幕上添加其他信息,因此首先我們需要定義一個顯示一些字段以供我們保存的函數(shù)。 以下代碼應(yīng)輸入您的主題functions.php文件(或您用於自定義代碼的另一個文件)
>>現(xiàn)在我們已經(jīng)定義了函數(shù),我們需要做的就是將其連接到我們的category_add_form_fields鉤子,並且一旦顯示“添加類別”屏幕,它將立即激活。我們將通過調(diào)用add_action()函數(shù)來做到這一點。
function add_extra_fields_to_category($taxonomy_name){ ?> <span><span><span><div</span> class<span>="form-field"</span>></span> </span> <span><span><span><label</span> for<span>="category-text"</span>></span>Category Text Field<span><span></label</span>></span> </span> <span><span><span><input</span> type<span>="text"</span> name<span>="category-text"</span> id<span>="category-text"</span>/></span> </span> <span><span><span><p</span>></span>This is a text field <span><span></p</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span> class<span>="form-field"</span>></span> </span> <span><span><span><label</span> for<span>="category-textarea"</span>></span>Category Textarea Field<span><span></label</span>></span> </span> <span><span><span><textarea</span> name<span>="category-textarea"</span> id<span>="category-textarea"</span>></span><span><span></textarea</span>></span> </span> <span><span><span><p</span>></span>This is a textarea field <span><span></p</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span> class<span>="form-field"</span>></span> </span> <span><span><span><label</span> for<span>="category-select"</span>></span>Category Select Field<span><span></label</span>></span> </span> <span><span><span><select</span> name<span>="category-select"</span> id<span>="category-select"</span>></span> </span> <span><span><span><option</span> value<span>="select-value-one"</span>></span> Value One <span><span></option</span>></span> </span> <span><span><span><option</span> value<span>="select-value-two"</span>></span> Value Two <span><span></option</span>></span> </span> <span><span><span></select</span>></span> </span> <span><span><span><p</span>></span>This is a select field <span><span></p</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span>></span> </span> <span><span><span><label</span> for<span>="category-radio-value-one"</span>></span>Category Radio Value One<span><span></label</span>></span> </span> <span><span><span><input</span> type<span>="radio"</span> name<span>="category-radio"</span> id<span>="category-radio-value-one"</span> value<span>="category-radio-value-one"</span>/></span> </span> <span><span><span><label</span> for<span>="category-radio-value-two"</span>></span>Category Radio Value Two<span><span></label</span>></span> </span> <span><span><span><input</span> type<span>="radio"</span> name<span>="category-radio"</span> id<span>="category-radio-value-two"</span> value<span>="category-radio-value-two"</span>/></span> </span> <span><span><span><p</span>></span>This is a radio field <span><span></p</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><?php </span></span><span><span>}</span></span>> add_action('category_add_form_fields','add_extra_fields_to_category');
完成此操作後,您的類別管理屏幕應(yīng)顯示您在功能中定義的其他字段。我的看起來如下:
作為旁注,當您定義字段以添加到屏幕中時,通常將它們包裹在形式類別中,這確保了包含的輸入元素涵蓋屏幕的完整寬度。如您在我們的示例中所看到的,除了無線電按鈕外,我還啟用了此類。我們不希望我們的廣播按鈕跨越全寬(因為看起來很奇怪)。

>
保存我們的新類別信息>現(xiàn)在我們已經(jīng)修改了添加類別屏幕,我們需要保存其他信息,以便我們可以使用它。
>我們需要將功能附加到另一個鉤子上以觸發(fā)我們的保存操作,此鉤被稱為create_category。我們創(chuàng)建的此功能將處理我們的術(shù)語信息的保存。
>在收集將直接用於更新WordPress數(shù)據(jù)庫的信息時,這始終是消毒值的好習慣。我們可以使用“ sanitize_text_field($ string)”來消毒字符串,剝離所有標籤,刪除線路斷路,選項卡和轉(zhuǎn)換字符實體,例如
function add_extra_fields_to_category($taxonomy_name){ ?> <span><span><span><div</span> class<span>="form-field"</span>></span> </span> <span><span><span><label</span> for<span>="category-text"</span>></span>Category Text Field<span><span></label</span>></span> </span> <span><span><span><input</span> type<span>="text"</span> name<span>="category-text"</span> id<span>="category-text"</span>/></span> </span> <span><span><span><p</span>></span>This is a text field <span><span></p</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span> class<span>="form-field"</span>></span> </span> <span><span><span><label</span> for<span>="category-textarea"</span>></span>Category Textarea Field<span><span></label</span>></span> </span> <span><span><span><textarea</span> name<span>="category-textarea"</span> id<span>="category-textarea"</span>></span><span><span></textarea</span>></span> </span> <span><span><span><p</span>></span>This is a textarea field <span><span></p</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span> class<span>="form-field"</span>></span> </span> <span><span><span><label</span> for<span>="category-select"</span>></span>Category Select Field<span><span></label</span>></span> </span> <span><span><span><select</span> name<span>="category-select"</span> id<span>="category-select"</span>></span> </span> <span><span><span><option</span> value<span>="select-value-one"</span>></span> Value One <span><span></option</span>></span> </span> <span><span><span><option</span> value<span>="select-value-two"</span>></span> Value Two <span><span></option</span>></span> </span> <span><span><span></select</span>></span> </span> <span><span><span><p</span>></span>This is a select field <span><span></p</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span>></span> </span> <span><span><span><label</span> for<span>="category-radio-value-one"</span>></span>Category Radio Value One<span><span></label</span>></span> </span> <span><span><span><input</span> type<span>="radio"</span> name<span>="category-radio"</span> id<span>="category-radio-value-one"</span> value<span>="category-radio-value-one"</span>/></span> </span> <span><span><span><label</span> for<span>="category-radio-value-two"</span>></span>Category Radio Value Two<span><span></label</span>></span> </span> <span><span><span><input</span> type<span>="radio"</span> name<span>="category-radio"</span> id<span>="category-radio-value-two"</span> value<span>="category-radio-value-two"</span>/></span> </span> <span><span><span><p</span>></span>This is a radio field <span><span></p</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><?php </span></span><span><span>}</span></span>
>使用此ID,我們可以調(diào)用get_term($ term_id,$ targ_id,$ sualthomy_name)函數(shù)。
此函數(shù)採用兩個參數(shù),即術(shù)語本身的ID和分類名稱。由於我們知道該術(shù)語本身的ID,並且我們正在從事類別分類法上工作,因此我們現(xiàn)在將能夠訪問術(shù)語對象。
此功能允許我們在WordPress選項表中創(chuàng)建一個新條目,以便我們保存我們的值。所有這些功能需求都是新選項的名稱及其值。我們正在四次調(diào)用此功能,其中一個用於我們節(jié)省的新字段。
>
例如,如果我們要創(chuàng)建一個新的類別,稱為測試時,當我們保存文本方面字段時,選項名稱將成為term_category_textarea_test,我們的選擇字段選項將成為text_category_select_test等這些字段以確保沒有兩個值都可以相同(因為所有slugs都是唯一的)。現(xiàn)在,我們要做的就是將此功能連接到create_category掛鉤,我們進行了排序
修改編輯類別管理菜單
>現(xiàn)在我們已經(jīng)在“添加類別”屏幕上顯示了新的字段元素並將其保存為選項,我們需要修改編輯屏幕並在此處預先填充我們的新值(因此,如果需要,可以更新它們)。 function save_extra_taxonomy_fields($term_id){ //collect all term related data for this new taxonomy $term_item = get_term($term_id,'category'); $term_slug = $term_item->slug; //collect our custom fields $term_category_text = sanitize_text_field($_POST['category-text']); $term_category_textarea = sanitize_text_field($_POST['category-textarea']); $term_category_select = sanitize_text_field($_POST['category-select']); $term_category_radio = sanitize_text_field($_POST['category-radio']); //save our custom fields as wp-options update_option('term_category_text_' . $term_slug, $term_category_text); update_option('term_category_textarea_' . $term_slug, $term_category_textarea); update_option('term_category_select_' . $term_slug, $term_category_select); update_option('term_category_radio_' . $term_slug, $term_category_radio); }
我們需要連接到category_edit_form_fields鉤子以顯示我們的其他字段。
> cattory_edit_form_fields Hook用於將其他字段輸出到類別的編輯管理屏幕上。該鉤子帶有一個值,這是術(shù)語對象本身。由於此掛鉤將可以訪問術(shù)語對象本身,因此收集其信息非常簡單。
>我們需要創(chuàng)建一個功能,該函數(shù)將輸出我們的其他字段並用我們的信息預先填充它們。由於我們現(xiàn)在可以訪問該術(shù)語對象,這將很容易。
>此函數(shù)使用其傳遞在術(shù)語對像中的傳遞來訪問術(shù)語本身的slug。使用此slug,它使用theget_option($ option_name)函數(shù)搜索了我們的四個保存的自定義字段值。
>
此功能以指定名稱搜索一個選項並分配其值。在我們的情況下,我們正在尋找我們的四個字段值,並將它們分配給變量。<span>add_action('create_category','save_extra_taxonomy_fields');</span>>
>此功能的最大部分是輸出我們的HTML形式元素,它們作為表元素添加。對於我們的每個字段,我們都會顯示標籤和適用的文本,Textarea,Select或Radio Elements。
>我們預先填充自定義字段的方式在我們所處理的每種類型中都不同。這是我們要做的
- >
- >文本字段 - 對於文本字段,我們將其值直接分配給其ValueAttribute,該值將預先填充字段本身
- > textaRea字段 - 對於TextArea字段,我們直接在標籤之間迴聲,這將其值直接輸出到TextArea元素中。
>
選擇字段 - 對於選擇字段,我們首先創(chuàng)建選擇元素及其所有相關(guān)選項。我們添加了稱為值的選擇元素的屬性,並用我們保存的值填充它(這與我們處理文本字段的方式非常相似)。即使我們將值輸出到選擇列表中,我們?nèi)匀恍枰_定最初選擇哪個選項。我們現(xiàn)在要做的是針對選擇元素中的每個選項,我們確定其值是否與我們收集的值相同,如果選擇它。我們使用基本的if語句,如果它們匹配我們將選定的屬性呼應(yīng)該選項,這將使瀏覽器默認選擇此選項。 - 無線電字段- 對於無線電字段,我們將它們直接輸出到頁面上,並確定其值是否匹配保存的值,如果是這樣,我們使用基本if語句將已檢查的屬性輸出到其上,此屬性使得該屬性使得瀏覽器默認情況下選擇此值(在許多方面處理此操作類似於選擇元素,因為我們需要告訴瀏覽器要顯示的選項)
-
確保正確填充這些值非常重要,就像您不選擇它們一樣,當用戶更新其術(shù)語時,他們的數(shù)據(jù)可能不一致。
我們要做的就是將我們的新功能連接到category_edit_form_fields鉤子,當我們單擊“條款的編輯屏幕”時,此功能將執(zhí)行。 >
連接此功能後,應(yīng)更新您的類別編輯屏幕並顯示您的其他字段和值。我的看起來如下:
保存我們更新的類別信息
function add_extra_fields_to_category($taxonomy_name){ ?> <span><span><span><div</span> class<span>="form-field"</span>></span> </span> <span><span><span><label</span> for<span>="category-text"</span>></span>Category Text Field<span><span></label</span>></span> </span> <span><span><span><input</span> type<span>="text"</span> name<span>="category-text"</span> id<span>="category-text"</span>/></span> </span> <span><span><span><p</span>></span>This is a text field <span><span></p</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span> class<span>="form-field"</span>></span> </span> <span><span><span><label</span> for<span>="category-textarea"</span>></span>Category Textarea Field<span><span></label</span>></span> </span> <span><span><span><textarea</span> name<span>="category-textarea"</span> id<span>="category-textarea"</span>></span><span><span></textarea</span>></span> </span> <span><span><span><p</span>></span>This is a textarea field <span><span></p</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span> class<span>="form-field"</span>></span> </span> <span><span><span><label</span> for<span>="category-select"</span>></span>Category Select Field<span><span></label</span>></span> </span> <span><span><span><select</span> name<span>="category-select"</span> id<span>="category-select"</span>></span> </span> <span><span><span><option</span> value<span>="select-value-one"</span>></span> Value One <span><span></option</span>></span> </span> <span><span><span><option</span> value<span>="select-value-two"</span>></span> Value Two <span><span></option</span>></span> </span> <span><span><span></select</span>></span> </span> <span><span><span><p</span>></span>This is a select field <span><span></p</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span>></span> </span> <span><span><span><label</span> for<span>="category-radio-value-one"</span>></span>Category Radio Value One<span><span></label</span>></span> </span> <span><span><span><input</span> type<span>="radio"</span> name<span>="category-radio"</span> id<span>="category-radio-value-one"</span> value<span>="category-radio-value-one"</span>/></span> </span> <span><span><span><label</span> for<span>="category-radio-value-two"</span>></span>Category Radio Value Two<span><span></label</span>></span> </span> <span><span><span><input</span> type<span>="radio"</span> name<span>="category-radio"</span> id<span>="category-radio-value-two"</span> value<span>="category-radio-value-two"</span>/></span> </span> <span><span><span><p</span>></span>This is a radio field <span><span></p</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><?php </span></span><span><span>}</span></span>
當我們更新類別信息時,我們將需要一個函數(shù)來保存我們的新字段值。 值得慶幸的是,我們已經(jīng)有一個功能。以前,我們創(chuàng)建了thesave_extra_taxonomy_fields($ TERM_ID)函數(shù),我們在添加新類別術(shù)語時使用了。

function add_extra_fields_to_category($taxonomy_name){
?>
<span><span><span><div</span> class<span>="form-field"</span>></span>
</span> <span><span><span><label</span> for<span>="category-text"</span>></span>Category Text Field<span><span></label</span>></span>
</span> <span><span><span><input</span> type<span>="text"</span> name<span>="category-text"</span> id<span>="category-text"</span>/></span>
</span> <span><span><span><p</span>></span>This is a text field <span><span></p</span>></span>
</span> <span><span><span></div</span>></span>
</span> <span><span><span><div</span> class<span>="form-field"</span>></span>
</span> <span><span><span><label</span> for<span>="category-textarea"</span>></span>Category Textarea Field<span><span></label</span>></span>
</span> <span><span><span><textarea</span> name<span>="category-textarea"</span> id<span>="category-textarea"</span>></span><span><span></textarea</span>></span>
</span> <span><span><span><p</span>></span>This is a textarea field <span><span></p</span>></span>
</span> <span><span><span></div</span>></span>
</span> <span><span><span><div</span> class<span>="form-field"</span>></span>
</span> <span><span><span><label</span> for<span>="category-select"</span>></span>Category Select Field<span><span></label</span>></span>
</span> <span><span><span><select</span> name<span>="category-select"</span> id<span>="category-select"</span>></span>
</span> <span><span><span><option</span> value<span>="select-value-one"</span>></span> Value One <span><span></option</span>></span>
</span> <span><span><span><option</span> value<span>="select-value-two"</span>></span> Value Two <span><span></option</span>></span>
</span> <span><span><span></select</span>></span>
</span> <span><span><span><p</span>></span>This is a select field <span><span></p</span>></span>
</span> <span><span><span></div</span>></span>
</span> <span><span><span><div</span>></span>
</span> <span><span><span><label</span> for<span>="category-radio-value-one"</span>></span>Category Radio Value One<span><span></label</span>></span>
</span> <span><span><span><input</span> type<span>="radio"</span> name<span>="category-radio"</span> id<span>="category-radio-value-one"</span> value<span>="category-radio-value-one"</span>/></span>
</span> <span><span><span><label</span> for<span>="category-radio-value-two"</span>></span>Category Radio Value Two<span><span></label</span>></span>
</span> <span><span><span><input</span> type<span>="radio"</span> name<span>="category-radio"</span> id<span>="category-radio-value-two"</span> value<span>="category-radio-value-two"</span>/></span>
</span> <span><span><span><p</span>></span>This is a radio field <span><span></p</span>></span>
</span> <span><span><span></div</span>></span>
</span> <span><span><?php
</span></span><span><span>}</span></span>
擴展自定義分類法
>自定義分類法可以與內(nèi)置的分類法(類別和標籤)完全相同。
>您需要進行的唯一修改將是使用的鉤子的名稱。對於類別,您將使用以下鉤子:
態(tài) 態(tài)
create_category - 在要保存新類別術(shù)語- 時使用
- > edit_category - 在要保存更新的類別術(shù)語 >時使用
- 這些鉤子會將您連接到您需要編輯的區(qū)域,從而允許您保存和檢索其他信息。
- 對於自定義分類法,它們將非常相似,您將使用的鉤子是動態(tài)的,並且基於您的分類法的名稱,它們將是:
$ galsonomy_name_edit_form_fields
create_ $ galsonomy_name,
- edit_ $ galsonomy_name
- 例如
- 成員_ADD_FORM_FIELDS
- 成員_edit_form_fields
edit_members
- >您需要遵循基本模式並將其應(yīng)用於自定義分類法,您將能夠編輯這些屏幕並根據(jù)需要保存信息。
- 將其全部包裝
- >現(xiàn)在您知道如何為分類法 /條款保存其他信息,您可以擴展WordPress的執(zhí)行時間,甚至超過原本打算做的。
- >您可以使用get_term($ term_name,$ targonomy_name)訪問您的單詞 >您可以編輯孩子主題文件和其他資源來利用此新信息。如果您更改了這些分類法以刪除您的新信息,我將從編輯您的category.php或tag.php文件開始。
>幾乎沒有限制您現(xiàn)在可以通過分類法實現(xiàn)的複雜性,因為您可以保存您喜歡的任何信息並根據(jù)需要輸出。
如果您對自定義分類法的更多信息感興趣,請查看賈斯汀·塔德洛克(Justin Tadlock)的“自定義分類法”。>有關(guān)擴展WordPress分類法的經(jīng)常詢問的問題
什麼是WordPress分類法,為什麼它們很重要?它們很重要,因為它們允許您以有意義且可瀏覽的方式組織網(wǎng)站的內(nèi)容。這可以改善您的網(wǎng)站上的用戶體驗,從而使訪問者更容易找到他們感興趣的內(nèi)容。分類法也可以改善您網(wǎng)站的SEO,因為它們可以創(chuàng)建更多有關(guān)您內(nèi)容的鏈接並提高其在搜索引擎上的可見性。
>
我如何擴展WordPress分類法?
WordPress分類法中的自定義字段是什麼?
是的,有許多可用的插件可以幫助您擴展WordPress分類法。這些插件可以在分類法上添加自定義字段,創(chuàng)建新型的分類法,並提供與分類法相關(guān)的其他功能。一些流行的分類學插件包括高級自定義字段,自定義帖子類型UI和分類學條款順序。
>我如何在WordPress中創(chuàng)建自定義分類?在主題的functions.php文件中使用“ register_taxonomy”函數(shù)。此功能允許您定義自定義分類法的屬性,例如其名稱,標籤,以及它是否是層次結(jié)構(gòu)。
>>層次結(jié)構(gòu)和非層次分類法之間有什麼區(qū)別? >層次分類法是可以具有父母和子項的分類法,例如WordPress中的類別。非層次分類法是分類法不能具有父母和子項,例如WordPress中的標籤。您選擇創(chuàng)建的分類學類型取決於您要如何組織內(nèi)容。>我可以將自定義字段添加到內(nèi)置的WordPress分類法嗎?
是的,您可以將自定義字段添加到內(nèi)置的WordPress分類法(例如類別和標籤)中。這可以通過使用與自定義分類法添加自定義字段的相同函數(shù)和方法來完成。
>>我如何訂購我的分類學條款?
>您可以通過將“ get_terms”函數(shù)與“ orderby”和“ order”參數(shù)一起使用。您還可以使用諸如分類學條款順序之類的插件來輕鬆更改WordPress管理中的分類學條款的順序。 >我可以使用分類法創(chuàng)建自定義帖子類型Archive嗎?可以使用分類法創(chuàng)建自定義郵政類型檔案。這可以通過創(chuàng)建與您的自定義帖子類型相關(guān)的分類法,然後在“ WP_QUERY”類中使用“分類學”參數(shù)來檢索該分類法的帖子。 以上是擴展WordPress分類法的詳細內(nèi)容。更多資訊請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

熱AI工具

Undress AI Tool
免費脫衣圖片

Undresser.AI Undress
人工智慧驅(qū)動的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

WordPress導致服務(wù)器CPU使用率飆升的主要原因包括插件問題、數(shù)據(jù)庫查詢效率低、主題代碼質(zhì)量差或流量激增。 1.首先通過top、htop或控制面板工具確認是否為WordPress引起的高負載;2.進入故障排查模式逐步啟用插件排查性能瓶頸,使用QueryMonitor分析插件執(zhí)行情況並刪除或替換低效插件;3.安裝緩存插件、清理冗餘數(shù)據(jù)、分析慢查詢?nèi)照I以優(yōu)化數(shù)據(jù)庫;4.檢查主題是否存在過度加載內(nèi)容、複雜查詢或缺乏緩存機制等問題,建議用標準主題測試對比並優(yōu)化代碼邏輯。按照上述步驟逐一排查可定位並解

MinifyingJavaScript文件可通過刪除空白、註釋和無用代碼來提升WordPress網(wǎng)站加載速度。 1.使用支持合併壓縮的緩存插件如W3TotalCache,在“Minify”選項中啟用並選擇壓縮模式;2.使用專用壓縮插件如FastVelocityMinify,提供更精細控制;3.手動壓縮JS文件並通過FTP上傳,適用於熟悉開發(fā)工具的用戶。注意部分主題或插件腳本可能與壓縮功能衝突,啟用後需徹底測試網(wǎng)站功能。

優(yōu)化WordPress站點不依賴插件的方法包括:1.使用輕量級主題,如Astra或GeneratePress,避免功能堆砌的主題;2.手動壓縮和合併CSS、JS文件,減少HTTP請求;3.上傳前優(yōu)化圖片,使用WebP格式並控製文件大?。?.配置.htaccess啟用瀏覽器緩存,並接入CDN提升靜態(tài)資源加載速度;5.限製文章修訂版本並定期清理數(shù)據(jù)庫冗餘數(shù)據(jù)。

TransientsAPI是WordPress中用於臨時存儲可自動過期數(shù)據(jù)的內(nèi)置工具,其核心函數(shù)為set_transient、get_transient和delete_transient。相比OptionsAPI,transients支持設(shè)置生存時間(TTL),適合緩存API請求結(jié)果、複雜計算數(shù)據(jù)等場景。使用時需注意key命名唯一性與命名空間、緩存“懶刪除”機制及對象緩存環(huán)境下可能不持久的問題。典型應(yīng)用場景包括減少外部請求頻率、控制代碼執(zhí)行節(jié)奏和提升頁面加載性能。

防止評論垃圾信息最有效的方式是通過程序化手段自動識別並攔截。 1.使用驗證碼機制(如GooglereCAPTCHA或hCaptcha)可有效區(qū)分人類與機器人,尤其適合公眾網(wǎng)站;2.設(shè)置隱藏字段(Honeypot技術(shù)),利用機器人自動填寫特性識別垃圾評論,不影響用戶體驗;3.檢查評論內(nèi)容關(guān)鍵詞黑名單,通過敏感詞匹配過濾垃圾信息,需注意避免誤判;4.判斷評論頻率與來源IP,限制單位時間內(nèi)的提交次數(shù)並建立黑名單;5.使用第三方反垃圾服務(wù)(如Akismet、Cloudflare)提升識別準確性??筛鶕?jù)網(wǎng)站

PluginCheck是一個幫助WordPress用戶快速檢查插件兼容性和性能的工具,主要用來識別當前安裝的插件是否存在與最新版本W(wǎng)ordPress不兼容、存在安全漏洞等問題。 1.如何開始檢查?安裝激活後,在後臺點擊“RunaScan”按鈕即可自動掃描所有插件;2.報告包含插件名稱、檢測類型、問題描述及解決方案建議,便於優(yōu)先處理嚴重問題;3.建議在更新WordPress前、網(wǎng)站異常時或定期運行檢查,提前發(fā)現(xiàn)隱患,避免未來出現(xiàn)重大問題。

在開發(fā)Gutenberg塊時,正確enqueue資產(chǎn)的方法包括:1.使用register_block_type指定editor_script、editor_style和style的路徑;2.在functions.php或插件中通過wp_register_script和wp_register_style註冊資源,並設(shè)置正確的依賴和版本;3.配置構(gòu)建工具輸出合適的模塊格式,並確保路徑一致;4.通過add_theme_support或enqueue_block_assets控制前端樣式的加載邏輯,確保

要添加自定義用戶字段需根據(jù)平臺選擇擴展方式並註意數(shù)據(jù)驗證與權(quán)限控制。常見做法包括:1.利用數(shù)據(jù)庫額外表或鍵值對結(jié)構(gòu)存儲信息;2.在前端加入輸入框並與後端集成;3.對敏感數(shù)據(jù)進行格式校驗和訪問權(quán)限限制;4.更新接口及模板以支持新字段展示與編輯,同時兼顧移動端適配和用戶體驗。
