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

>
保存我們的新類(lèi)別信息>現(xiàn)在我們已經(jīng)修改了添加類(lèi)別屏幕,我們需要保存其他信息,以便我們可以使用它。
>我們需要將功能附加到另一個(gè)鉤子上以觸發(fā)我們的保存操作,此鉤被稱(chēng)為create_category。我們創(chuàng)建的此功能將處理我們的術(shù)語(yǔ)信息的保存。
>在收集將直接用于更新WordPress數(shù)據(jù)庫(kù)的信息時(shí),這始終是消毒值的好習(xí)慣。我們可以使用“ sanitize_text_field($ string)”來(lái)消毒字符串,剝離所有標(biāo)簽,刪除線路斷路,選項(xiàng)卡和轉(zhuǎn)換字符實(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>
>使用此ID,我們可以調(diào)用get_term($ term_id,$ targ_id,$ sualthomy_name)函數(shù)。
此函數(shù)采用兩個(gè)參數(shù),即術(shù)語(yǔ)本身的ID和分類(lèi)名稱(chēng)。由于我們知道該術(shù)語(yǔ)本身的ID,并且我們正在從事類(lèi)別分類(lèi)法上工作,因此我們現(xiàn)在將能夠訪問(wèn)術(shù)語(yǔ)對(duì)象。
此功能允許我們?cè)赪ordPress選項(xiàng)表中創(chuàng)建一個(gè)新條目,以便我們保存我們的值。所有這些功能需求都是新選項(xiàng)的名稱(chēng)及其值。我們正在四次調(diào)用此功能,其中一個(gè)用于我們節(jié)省的新字段。
>
例如,如果我們要?jiǎng)?chuàng)建一個(gè)新的類(lèi)別,稱(chēng)為測(cè)試時(shí),當(dāng)我們保存文本方面字段時(shí),選項(xiàng)名稱(chēng)將成為term_category_textarea_test,我們的選擇字段選項(xiàng)將成為text_category_select_test等這些字段以確保沒(méi)有兩個(gè)值都可以相同(因?yàn)樗衧lugs都是唯一的)。現(xiàn)在,我們要做的就是將此功能連接到create_category掛鉤,我們進(jìn)行了排序
修改編輯類(lèi)別管理菜單
>現(xiàn)在我們已經(jīng)在“添加類(lèi)別”屏幕上顯示了新的字段元素并將其保存為選項(xiàng),我們需要修改編輯屏幕并在此處預(yù)先填充我們的新值(因此,如果需要,可以更新它們)。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用于將其他字段輸出到類(lèi)別的編輯管理屏幕上。該鉤子帶有一個(gè)值,這是術(shù)語(yǔ)對(duì)象本身。由于此掛鉤將可以訪問(wèn)術(shù)語(yǔ)對(duì)象本身,因此收集其信息非常簡(jiǎn)單。
>我們需要?jiǎng)?chuàng)建一個(gè)功能,該函數(shù)將輸出我們的其他字段并用我們的信息預(yù)先填充它們。由于我們現(xiàn)在可以訪問(wèn)該術(shù)語(yǔ)對(duì)象,這將很容易。
>此函數(shù)使用其傳遞在術(shù)語(yǔ)對(duì)象中的傳遞來(lái)訪問(wèn)術(shù)語(yǔ)本身的slug。使用此slug,它使用theget_option($ option_name)函數(shù)搜索了我們的四個(gè)保存的自定義字段值。
>
此功能以指定名稱(chēng)搜索一個(gè)選項(xiàng)并分配其值。在我們的情況下,我們正在尋找我們的四個(gè)字段值,并將它們分配給變量。<span>add_action('create_category','save_extra_taxonomy_fields');</span>>
>此功能的最大部分是輸出我們的HTML形式元素,它們作為表元素添加。對(duì)于我們的每個(gè)字段,我們都會(huì)顯示標(biāo)簽和適用的文本,Textarea,Select或Radio Elements。
>我們預(yù)先填充自定義字段的方式在我們所處理的每種類(lèi)型中都不同。這是我們要做的
- >
- >文本字段 - 對(duì)于文本字段,我們將其值直接分配給其ValueAttribute,該值將預(yù)先填充字段本身
- > textaRea字段 - 對(duì)于TextArea字段,我們直接在標(biāo)簽之間回聲,這將其值直接輸出到TextArea元素中。
>
選擇字段 - 對(duì)于選擇字段,我們首先創(chuàng)建選擇元素及其所有相關(guān)選項(xiàng)。我們添加了稱(chēng)為值的選擇元素的屬性,并用我們保存的值填充它(這與我們處理文本字段的方式非常相似)。即使我們將值輸出到選擇列表中,我們?nèi)匀恍枰_定最初選擇哪個(gè)選項(xiàng)。我們現(xiàn)在要做的是針對(duì)選擇元素中的每個(gè)選項(xiàng),我們確定其值是否與我們收集的值相同,如果選擇它。我們使用基本的if語(yǔ)句,如果它們匹配我們將選定的屬性呼應(yīng)該選項(xiàng),這將使瀏覽器默認(rèn)選擇此選項(xiàng)。 - 無(wú)線電字段 - 對(duì)于無(wú)線電字段,我們將它們直接輸出到頁(yè)面上,并確定其值是否匹配保存的值,如果是這樣,我們使用基本if語(yǔ)句將已檢查的屬性輸出到其上,此屬性使得該屬性使得瀏覽器默認(rèn)情況下選擇此值(在許多方面處理此操作類(lèi)似于選擇元素,因?yàn)槲覀冃枰嬖V瀏覽器要顯示的選項(xiàng))
-
確保正確填充這些值非常重要,就像您不選擇它們一樣,當(dāng)用戶更新其術(shù)語(yǔ)時(shí),他們的數(shù)據(jù)可能不一致。
我們要做的就是將我們的新功能連接到category_edit_form_fields鉤子,當(dāng)我們單擊“條款的編輯屏幕”時(shí),此功能將執(zhí)行。 >
連接此功能后,應(yīng)更新您的類(lèi)別編輯屏幕并顯示您的其他字段和值。我的看起來(lái)如下:
保存我們更新的類(lèi)別信息
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>
當(dāng)我們更新類(lèi)別信息時(shí),我們將需要一個(gè)函數(shù)來(lái)保存我們的新字段值。 值得慶幸的是,我們已經(jīng)有一個(gè)功能。以前,我們創(chuàng)建了thesave_extra_taxonomy_fields($ TERM_ID)函數(shù),我們?cè)谔砑有骂?lèi)別術(shù)語(yǔ)時(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>
擴(kuò)展自定義分類(lèi)法
>自定義分類(lèi)法可以與內(nèi)置的分類(lèi)法(類(lèi)別和標(biāo)簽)完全相同。
>您需要進(jìn)行的唯一修改將是使用的鉤子的名稱(chēng)。對(duì)于類(lèi)別,您將使用以下鉤子:
態(tài) 態(tài)
create_category - 在要保存新類(lèi)別術(shù)語(yǔ)- 時(shí)使用
- > edit_category - 在要保存更新的類(lèi)別術(shù)語(yǔ) >時(shí)使用
- 這些鉤子會(huì)將您連接到您需要編輯的區(qū)域,從而允許您保存和檢索其他信息。
- 對(duì)于自定義分類(lèi)法,它們將非常相似,您將使用的鉤子是動(dòng)態(tài)的,并且基于您的分類(lèi)法的名稱(chēng),它們將是:
$ galsonomy_name_edit_form_fields
create_ $ galsonomy_name,
- edit_ $ galsonomy_name
- 例如
- 成員_ADD_FORM_FIELDS
- 成員_edit_form_fields
edit_members
- >您需要遵循基本模式并將其應(yīng)用于自定義分類(lèi)法,您將能夠編輯這些屏幕并根據(jù)需要保存信息。
- 將其全部包裝
- >現(xiàn)在您知道如何為分類(lèi)法 /條款保存其他信息,您可以擴(kuò)展WordPress的執(zhí)行時(shí)間,甚至超過(guò)原本打算做的。
- >您可以使用get_term($ term_name,$ targonomy_name)訪問(wèn)您的單詞 >您可以編輯孩子主題文件和其他資源來(lái)利用此新信息。如果您更改了這些分類(lèi)法以刪除您的新信息,我將從編輯您的category.php或tag.php文件開(kāi)始。
>幾乎沒(méi)有限制您現(xiàn)在可以通過(guò)分類(lèi)法實(shí)現(xiàn)的復(fù)雜性,因?yàn)槟梢员4婺矚g的任何信息并根據(jù)需要輸出。
如果您對(duì)自定義分類(lèi)法的更多信息感興趣,請(qǐng)查看賈斯汀·塔德洛克(Justin Tadlock)的“自定義分類(lèi)法”。>有關(guān)擴(kuò)展WordPress分類(lèi)法的經(jīng)常詢問(wèn)的問(wèn)題
什么是WordPress分類(lèi)法,為什么它們很重要?它們很重要,因?yàn)樗鼈冊(cè)试S您以有意義且可瀏覽的方式組織網(wǎng)站的內(nèi)容。這可以改善您的網(wǎng)站上的用戶體驗(yàn),從而使訪問(wèn)者更容易找到他們感興趣的內(nèi)容。分類(lèi)法也可以改善您網(wǎng)站的SEO,因?yàn)樗鼈兛梢詣?chuàng)建更多有關(guān)您內(nèi)容的鏈接并提高其在搜索引擎上的可見(jiàn)性。
>
我如何擴(kuò)展WordPress分類(lèi)法?
WordPress分類(lèi)法中的自定義字段是什么?
是的,有許多可用的插件可以幫助您擴(kuò)展WordPress分類(lèi)法。這些插件可以在分類(lèi)法上添加自定義字段,創(chuàng)建新型的分類(lèi)法,并提供與分類(lèi)法相關(guān)的其他功能。一些流行的分類(lèi)學(xué)插件包括高級(jí)自定義字段,自定義帖子類(lèi)型UI和分類(lèi)學(xué)條款順序。
>我如何在WordPress中創(chuàng)建自定義分類(lèi)?在主題的functions.php文件中使用“ register_taxonomy”函數(shù)。此功能允許您定義自定義分類(lèi)法的屬性,例如其名稱(chēng),標(biāo)簽,以及它是否是層次結(jié)構(gòu)。
>>層次結(jié)構(gòu)和非層次分類(lèi)法之間有什么區(qū)別? >層次分類(lèi)法是可以具有父母和子項(xiàng)的分類(lèi)法,例如WordPress中的類(lèi)別。非層次分類(lèi)法是分類(lèi)法不能具有父母和子項(xiàng),例如WordPress中的標(biāo)簽。您選擇創(chuàng)建的分類(lèi)學(xué)類(lèi)型取決于您要如何組織內(nèi)容。>我可以將自定義字段添加到內(nèi)置的WordPress分類(lèi)法嗎?
是的,您可以將自定義字段添加到內(nèi)置的WordPress分類(lèi)法(例如類(lèi)別和標(biāo)簽)中。這可以通過(guò)使用與自定義分類(lèi)法添加自定義字段的相同函數(shù)和方法來(lái)完成。
>>我如何訂購(gòu)我的分類(lèi)學(xué)條款?
>您可以通過(guò)將“ get_terms”函數(shù)與“ orderby”和“ order”參數(shù)一起使用。您還可以使用諸如分類(lèi)學(xué)條款順序之類(lèi)的插件來(lái)輕松更改WordPress管理中的分類(lèi)學(xué)條款的順序。>我可以使用分類(lèi)法創(chuàng)建自定義帖子類(lèi)型Archive嗎?可以使用分類(lèi)法創(chuàng)建自定義郵政類(lèi)型檔案。這可以通過(guò)創(chuàng)建與您的自定義帖子類(lèi)型相關(guān)的分類(lèi)法,然后在“ WP_QUERY”類(lèi)中使用“分類(lèi)學(xué)”參數(shù)來(lái)檢索該分類(lèi)法的帖子。以上是擴(kuò)展WordPress分類(lèi)法的詳細(xì)內(nèi)容。更多信息請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

熱AI工具

Undress AI Tool
免費(fèi)脫衣服圖片

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

AI Clothes Remover
用于從照片中去除衣服的在線人工智能工具。

Clothoff.io
AI脫衣機(jī)

Video Face Swap
使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱門(mén)文章

熱工具

記事本++7.3.1
好用且免費(fèi)的代碼編輯器

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

禪工作室 13.0.1
功能強(qiáng)大的PHP集成開(kāi)發(fā)環(huán)境

Dreamweaver CS6
視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

SublimeText3 Mac版
神級(jí)代碼編輯軟件(SublimeText3)

熱門(mén)話題

使用Git管理WordPress項(xiàng)目時(shí),應(yīng)只將主題、自定義插件和配置文件納入版本控制;設(shè)置.gitignore文件以忽略上傳目錄、緩存和敏感配置;利用webhook或CI工具實(shí)現(xiàn)自動(dòng)部署并注意數(shù)據(jù)庫(kù)處理;采用兩分支策略(main/develop)進(jìn)行協(xié)作開(kāi)發(fā)。這樣做可避免沖突、保障安全,并提升協(xié)作與部署效率。

使用WordPress測(cè)試環(huán)境是為了確保新功能、插件或主題在正式上線前的安全性和兼容性,避免影響真實(shí)網(wǎng)站。搭建測(cè)試環(huán)境的步驟包括:下載安裝本地服務(wù)器軟件(如LocalWP、XAMPP),創(chuàng)建站點(diǎn)、設(shè)置數(shù)據(jù)庫(kù)和管理員賬號(hào),安裝主題和插件進(jìn)行測(cè)試;復(fù)制正式網(wǎng)站到測(cè)試環(huán)境的方法是通過(guò)插件導(dǎo)出站點(diǎn)、導(dǎo)入測(cè)試環(huán)境并替換域名;使用時(shí)應(yīng)注意不使用真實(shí)用戶數(shù)據(jù)、定期清理無(wú)用數(shù)據(jù)、備份測(cè)試狀態(tài)、適時(shí)重置環(huán)境,并統(tǒng)一團(tuán)隊(duì)配置以減少差異問(wèn)題。

創(chuàng)建Gutenberg塊的關(guān)鍵在于理解其基本結(jié)構(gòu)并正確連接前后端資源。1.準(zhǔn)備開(kāi)發(fā)環(huán)境:安裝本地WordPress、Node.js和@wordpress/scripts;2.使用PHP注冊(cè)塊并用JavaScript定義塊的編輯和顯示邏輯;3.通過(guò)npm構(gòu)建JS文件以使更改生效;4.遇到問(wèn)題時(shí)檢查路徑、圖標(biāo)是否正確或使用實(shí)時(shí)監(jiān)聽(tīng)構(gòu)建避免重復(fù)手動(dòng)編譯。按照這些步驟,可以逐步實(shí)現(xiàn)一個(gè)簡(jiǎn)單的Gutenberg塊。

tosetupredirectsinwordpressingthe.htaccessfile,locateThEfileInyourSite'sRootDirectorectoryAndDrectRectrulesabovethe#beginWordPresssection.forbasic301redirects,USETHEETHEETERECTREFTATRECTATREDERTREFTATREDERTREFTATRECTRECTATRECTRECTATREDECT301/OLD-PAGEHTTPS:

在WordPress中,當(dāng)新增自定義文章類(lèi)型或修改固定鏈接結(jié)構(gòu)后,需手動(dòng)刷新重寫(xiě)規(guī)則,此時(shí)可通過(guò)代碼調(diào)用flush_rewrite_rules()函數(shù)實(shí)現(xiàn)。1.可在主題或插件激活鉤子中添加該函數(shù)以自動(dòng)刷新;2.僅在必要時(shí)執(zhí)行一次,如添加CPT、分類(lèi)法或修改鏈接結(jié)構(gòu)后;3.避免頻繁調(diào)用以免影響性能;4.多站點(diǎn)環(huán)境下需視情況為每個(gè)站點(diǎn)單獨(dú)刷新;5.某些托管環(huán)境可能限制規(guī)則保存。此外,訪問(wèn)“設(shè)置>固定鏈接”頁(yè)面點(diǎn)擊保存也可觸發(fā)刷新,適合非自動(dòng)化場(chǎng)景。

UsingsMtpForWordPresseMailSimProvesDeliverabilitialComparedComparedTothEdeDefaultPhpMail()函數(shù).1.smtpauthenticateswithyouremailserver.2.somemomehostsdisablesablephpmail()

要實(shí)現(xiàn)響應(yīng)式WordPress主題設(shè)計(jì),首先要使用HTML5和移動(dòng)優(yōu)先的Meta標(biāo)簽,在header.php中添加viewport設(shè)置以確保移動(dòng)端正確顯示,并用HTML5結(jié)構(gòu)標(biāo)簽組織布局;其次,利用CSS媒體查詢實(shí)現(xiàn)不同屏幕寬度下的樣式適配,按移動(dòng)優(yōu)先原則編寫(xiě)樣式,常用斷點(diǎn)包括480px、768px和1024px;第三,彈性處理圖片和布局,為圖片設(shè)置max-width:100%并使用Flexbox或Grid布局替代固定寬度;最后,通過(guò)瀏覽器開(kāi)發(fā)者工具和真實(shí)設(shè)備進(jìn)行充分測(cè)試,優(yōu)化加載性能,確保響應(yīng)

TOINTEGRATETHIRD-PARTYAPISINTOWORDPRESS,關(guān)注臺(tái)詞:1.SelectAutableabepianDobtainCredentialslikeapikeYsoroAuthtoKensByEnterRegisteringThemSecure.2.ChooseBeteBetB??eteBetB??eteBetB??etebetInpliCityOorcustimplicityOrcustomPliCoseTompliCoseTomploomcoseusionfunctionfunctionfunctibunitiacuciencipuity forfunigation。
