鑰匙要點
-
WordPress已演變為成熟的內容管理系統和開發平台,能夠通過插件,主題和WP REST API將帖子或結構化數據分組為各種類型。
WordPress中的自定義帖子類型(CPT)是創建並註冊到WordPress的新帖子類型。帖子類型的示例可能包括公司或商業網站的投資組合,推薦和產品。
- >創建自定義帖子類型涉及使用register_post_type()函數註冊郵政類型,並使用一系列參數自定義它。這些參數可以控制諸如描述性名稱,公眾可見性,菜單位置,圖標,層次結構以及帖子類型的其他功能。
- >有幾個可用的插件,例如自定義郵政類型UI,PODS框架和自定義Post類型製造商,可以簡化創建自定義郵政類型的過程,從而使其更加用戶友好,並消除了編碼的需求。 🎜>
- >“ wordpress被稱為博客軟件”的日子已經一去不復返了。 通過插件和主題,組帖子或結構化數據擴展其功能的能力,以及WP REST API的到來,也將其進一步演變為完整的內容管理系統和開發平台。 多年來,我已經成功地開發了許多自定義的Web應用程序,該應用程序大量利用自定義帖子類型。這些Web應用程序之一的一個示例是我的WordPress插件的主題市場,稱為ProfilePress。
- 仔細查看上面鏈接的主題市場,您會發現它使用了下一個 /上空分頁鏈接的URL中明顯的自定義分頁系統。因此,您有可能構建一個內部的分頁系統,該系統將在查詢自定義帖子類型(CPT)中完美工作。
足夠說,讓我們來實現本教程的目的,即在WordPress中學習自定義帖子類型的複雜性。
>我希望解決我個人與CPT合作的許多障礙,以及您可以做的一些很酷的事情。
>自定義帖子類型定義
在內部,所有帖子類型都存儲在wp_posts數據庫表中,但通過稱為post_type的列進行區分。
> POST類型是指在WordPress數據庫帖子表中保留的各種結構化數據。>帖子類型的示例是帖子(一組博客帖子),頁面(一組頁),附件(一組上傳的媒體文件)和修訂版(一組郵政修訂版)在WordPress中。
武裝著郵政類型的定義,一種創建並註冊到WordPress的新帖子類型被稱為自定義郵政類型。
>如果您正在構建具有WordPress的公司或商業網站,則可以創建的帖子類型的示例是投資組合,推薦和產品。
現在我們已經了解了自定義帖子類型的概念,接下來就是學習如何創建它們。
創建自定義帖子類型>創建自定義帖子類型非常容易。首先,將帖子類型註冊為register_post_type()函數,最後,在函數調用中wrap register_post_type()並將其連接到INIT ACTION,例如So:
從上面的代碼中,您可以看到register_post_type()具有第二個函數參數,該函數接受自定義自定義帖子類型的各個方面所需的許多數組參數。
<span><span>function portfolio_cpt() {</span> </span> <span>$args = array( </span> <span>'label' => 'Portfolio', </span> <span>'public' => true, </span> ); register_post_type( <span>'portfolio', $args ); </span>} add_action( <span>'init', 'portfolio_cpt' );</span>您現在應該看到portfolio自定義帖子類型出現在WordPress Admin儀表板中。
>值得注意的是,在調用register_post_type()時,第二個參數是可選的。也就是說,cpt也可以如下創建:
>

>讓我們介紹一些數組參數,以自定義CPT及其各自的功能。
<span><span>function portfolio_cpt() {</span> </span> register_post_type( <span>'portfolio' ); </span>} add_action( <span>'init', 'portfolio_cpt' );</span>標籤
>您的自定義帖子類型的複數描述名稱。例如,如果您要創建電影CPT,則應該是電影。
>它將默認為$ post_type的值,這是register_post_type()的第一個參數。
標籤
該帖子類型的標籤數組。每個字符串都是特定管理頁面中顯示的一些文本。
>如果您要創建供公眾使用的插件,請確保可以翻譯這些字符串。
- 名稱:帖子類型的名稱的複數形式。 >
- singular_name:帖子類型的名稱的單數形式。 >
- add_new:添加新帖子的菜單項。 >
- add_new_item:創建新帖子時顯示的標題。
- edit_item:編輯帖子時顯示的標題。
- > new_item:在管理標題中的“收藏夾”菜單中顯示。
- view_item:在編輯後屏幕上與永久鏈接一起顯示。 search_items:編輯帖子屏幕上搜索框的按鈕文本。
- not_found:在admin中未找到帖子時顯示的文本。
- not_found_in_trash:垃圾中沒有帖子時要顯示的文本。
>
描述>簡短的描述性摘要,即郵政類型是什麼,儘管我尚未在WordPress Admin中找到它的位置。
>公共
>根據其布爾值,除非明確定義,否則它將自動決定其他參數。如果您想對公開論點有更多的控制權,則可能會設置三個具體論點:>
show_ui:確定是否顯示給管理屏幕。
>- publicly_queryable:確定是否可以從前端執行此帖子類型的查詢。
- dubl_from_search:帖子是否應出現在搜索結果中。
- >
- 菜單_position
>
例如,將菜單_ position值設置為70將在用戶下方添加您的菜單項。菜單_icon
新的帖子類型將默認為“帖子”菜單圖標,但是如果您想要一個自定義圖標,請將此標籤設置為圖標或圖像文件的URL。
>您也可以將任何dashicon用作CPT圖標。
說您想使用下載dashicon,將此標籤設置為dashicon值,如下所示:
<span><span>function portfolio_cpt() {</span> </span> <span>$args = array( </span> <span>'label' => 'Portfolio', </span> <span>'public' => true, </span> ); register_post_type( <span>'portfolio', $args ); </span>} add_action( <span>'init', 'portfolio_cpt' );</span>
層次結構
這個論點使您可以決定是否製作CPT層次結構。默認值是錯誤的。設置為true以使您的CPT層次結構。
<span><span>function portfolio_cpt() {</span> </span> register_post_type( <span>'portfolio' ); </span>} add_action( <span>'init', 'portfolio_cpt' );</span>支持
>支持參數允許您定義一系列元框和字段,這些元件和字段在編輯或創建新帖子時將出現在屏幕上。此默認為標題和編輯器。
將此參數設置為false將阻止默認(標題和編輯器)行為。
有幾個可用的選項:
- >標題:創建帖子標題的文本輸入字段。
- 編輯器:寫作內容的內容編輯器。 >
- 作者:一個用於更改帖子作者的選擇框。
- 縮略圖:特色圖像功能。
- >摘錄:用於編寫自定義摘錄的文本題材。 >
- 轉型:能夠打開反轉和pingbacks的能力。 >
- 自定義場:自定義字段輸入字段。
- >評論:打開/關閉評論。 >
- 修訂:允許您的帖子進行修訂。 >
- >後形式:添加郵政格式,請參閱“郵政格式”部分 >
- > page-attributes:為頁面顯示的屬性框。這對於層次結構帖子類型很重要,因此您可以選擇父帖。 >
register_meta_box_cb
提供一個回調函數,在設置編輯表單的元框時將調用。回調函數獲取一個參數$ post,其中包含當前編輯帖子的WP_POST對象。
>
<span><span>function portfolio_cpt() {</span> </span> <span>$args = array( </span> <span>'label' => 'Portfolio', </span> <span>'public' => true, </span> ); register_post_type( <span>'portfolio', $args ); </span>} add_action( <span>'init', 'portfolio_cpt' );</span>分類法
>將與此自定義帖子類型一起使用的一系列註冊分類法或post_tag。
has_archive
<span><span>function portfolio_cpt() {</span> </span> register_post_type( <span>'portfolio' ); </span>} add_action( <span>'init', 'portfolio_cpt' );</span>
>將此參數設置為true將為您的自定義帖子類型啟用檔案。 例如,假設您的cpt是書籍,訪問http://yoursite.com/books將顯示屬於書籍自定義帖子類型的帖子列表。
重寫
此參數允許您在查看單個帖子或存檔時定義自定義帖子類型的永久鏈接結構。
>默認值是正確的,並將$ post_type用作slug。要防止重寫,請設置為false。>
讓我們來看看一些示例,以清楚起見。>
說您創建了一個自定義帖子類型,但希望將URL slug從>評論
更改為>評估>,使用以下重寫參數將從http://示例更改URL 。 CPT存檔。 >每當您進行WordPress URL重寫時,請確保單擊“設置”中的“保存更改”按鈕>>永久鏈接以重新創建重寫規則。
><span>'menu_icon' => get_stylesheet_directory_uri() . '/images/portfolio-icon.png',</span>基本上,slug定義了新的URL slug,而使用_front確定是否使用前基底座預付費永久鏈接結構。
>在_front上仍然不清楚嗎?讓我們看看一個例子。
>說您有一個固定鏈接結構,帶有
博客,如下圖所示。
>
>如果with_front設置為false,則單個帖子和檔案庫的URL變為http://example.com/blog/assessment/harry-potter/ and http://example.com/blog/assessment/但是,如果將其設置為真,則單個帖子和檔案存檔的URL分別為http://example.com/assessment/harry-potter/和http://example.com/assessment/。
請注意後者中博客的遺漏?這就是區別。
can_export
>使用此參數來決定是否可以通過WordPress導出工具導出屬於您的自定義帖子類型的帖子。默認情況下,這將設置為true。
query_var
此參數允許您控制用於獲取此類型帖子的查詢變量。
如果設置為true,它將允許您通過example.com/?book=harry-potter請求書籍自定義帖子類型,其中harry-potter是書本或帖子的url slug。
如果設置為字符串而不是true(例如出版),則可以: “ query_var”的警告>
> query_var在您的cpt註冊數組中未定義,它默認為$ post_type,除非將其設置為false。>警告。每當query_var的值作為查詢字符串中添加到URL中時,它將導致404。 >
>讓我澄清一下。假設您的cpt query_var的價值是審核,並且一個帶有鍵審查的鍵集的查詢字符串已添加到您的WordPress網站的任何URL中,以以下任何形式:>
http://example.com/?review=some-random-string
http://example.com/a-post-slug-here/?foo=bar&review = some-random-string
- 這將導致404發生。
- >我實際上以艱難的方式了解了這一點。在我遇到這個問題時,我在WordPress Core Trac中創建了一張票,以將其報告為錯誤。
- >我花了數週的時間才終於在核心WordPress團隊的一些成員回答我的票之前弄清楚了。
>現在我們已經覆蓋了基礎,現在是時候指出WordPress插件存儲庫中的許多插件,使創建自定義帖子類型非常簡單。
>
>示例包括(但不限於):自定義帖子類型UI
pods Framework
自定義郵政類型製造商
- 結論
-
在本教程中,我們了解了哪些自定義帖子類型以及它們的創建方式。
> 這實際上是WordPress自定義帖子類型的系列中的第一個。在我的下一個教程中,我們將學習如何自定義各種管理員通知,如何將自定義分類法註冊到帖子類型中,並在CPT屏幕上添加上下文幫助選項卡。 - > 在此之前,愉快的編碼!
- >
> WordPress自定義帖子類型的常見問題
>使用WordPress自定義帖子類型的好處是什麼?除了標準帖子和頁面之外,它們允許您為網站創建特定的內容類型。這可以包括投資組合,推薦,產品等。自定義帖子類型還提供了一種更有條理,更有效的方法來管理您的內容。它們可以通過特定的功能和字段來自定義,從而更容易以一致的方式輸入和顯示內容。
>>如何在WordPress中創建自定義帖子類型?輸入WordPress涉及在主題的函數.php文件中添加幾行代碼。您需要使用register_post_type()函數,該函數允許您指定自定義帖子類型的名稱,標籤和其他功能。請記住,通過訪問永久鏈接設置頁面創建新的自定義帖子類型之後,要刷新您的重寫規則。
我可以將自定義字段添加到我的自定義帖子類型嗎?
是的,您可以添加自定義字段對於您的自定義帖子類型。可以使用add_meta_box()函數完成此操作,該功能使您可以在郵政編輯屏幕中添加一個新的元框。然後,您可以使用此Meta框輸入並顯示您的自定義帖子類型的其他信息。 >如何在網站上顯示自定義帖子類型?>在您的網站上顯示自定義帖子類型可以通過在主題中創建新的模板文件來完成。該文件應命名為單{post-type} .php,其中{post-type}是您的自定義帖子類型的名稱。然後,您可以使用標準的WordPress循環顯示您的自定義帖子類型的內容。
我可以使用插件創建自定義帖子類型嗎?
>是的,有幾個可用的插件可以簡化流程創建自定義帖子類型。這些插件提供了一個用於創建和管理自定義帖子類型的用戶友好界面,而無需編碼。一些流行的選項包括自定義帖子類型UI,POD和工具集類型。
>如何在我的自定義帖子類型中添加分類法? register_taxonomy()函數。此功能使您可以創建新的分類法,指定其標籤,並將其與您的自定義帖子類型相關聯。然後,您可以使用此分類法來對您的自定義帖子類型的內容進行分類和過濾。
我可以使用層次結構創建自定義的帖子類型嗎?這可以通過在註冊自定義帖子類型時將“層次結構”參數設置為true來完成。分層自定義帖子類型可以具有父母和子女帖子,類似於頁面。
>>如何自定義帖子類型自定義管理界面?
>在註冊自定義帖子類型時,可以使用“支持”參數自定義帖子類型自定義admin界面。該參數允許您指定帖子編輯屏幕中的哪些功能,例如標題,編輯器,縮略圖和自定義字段。
我可以在網站的搜索結果中包含自定義帖子類型嗎?
>是的,您可以在網站的搜索結果中包含自定義帖子類型。這可以通過在註冊自定義帖子類型時將“ dubl_from_search”參數設置為false來完成。您還可以使用插件或自定義代碼來進一步自定義網站的搜索功能。
>>如何刪除WordPress中的自定義帖子類型?
以上是WordPress自定義帖子類型的權威指南的詳細內容。更多資訊請關注PHP中文網其他相關文章!

WordPressPluginsscmscmscapabilities byferingCustomization和Functionality.1)超過50,000pluginsallowuserstailostailortheortheortheortheirsiteforseo,電子商務和蘇聯。 2)pluginScaneCanextendCoreFeatures,likeaddingcustompostposttypes.3bully.3 burl

是的,WordPress非常适合做电商。1)通过WooCommerce插件,WordPress可以快速变成功能全面的在线商店。2)需要关注性能优化和安全性,定期更新和使用缓存、安全插件是关键。3)WordPress提供了丰富的定制选项,提升用户体验和SEO优化效果显著。

您想將您的網站連接到Yandex網站管理員工具嗎? Google搜索控制台、Bing和Yandex等網站管理員工具可幫助您優化網站、監控流量、管理robots.txt、檢查網站錯誤等。在本文中,我們將分享如何在Yandex網站管理員工具中添加您的WordPress網站來監控您的搜索引擎流量。什麼是Yandex? Yandex是一個位於俄羅斯的流行搜索引擎,類似於Google和Bing。您可以在Yandex中優

您需要修復WordPress中的HTTP圖片上傳錯誤嗎?當您在WordPress中創建內容時,此錯誤可能會特別令人沮喪。當您使用內置WordPress媒體庫將圖像或其他文件上傳到CMS時,通常會發生這種情況。在本文中,我們將向您展示如何輕鬆修復WordPress中的HTTP圖片上傳錯誤。 WordPress媒體上傳過程中出現HTTP錯誤的原因是什麼?當您嘗試使用WordPress媒體上傳器將文件上傳到Wo

最近,我們的一位讀者報告說,他們的WordPress網站上的“添加媒體”按鈕突然停止工作。此經典編輯器問題不會顯示任何錯誤或警告,這使用戶不知道為什麼他們的“添加媒體”按鈕不起作用。在本文中,我們將向您展示如何輕鬆修復WordPress中的“添加媒體”按鈕不起作用的問題。是什麼導致WordPress“添加媒體”按鈕停止工作?如果您仍在使用舊的經典WordPress編輯器,那麼“添加媒體”按鈕允許您將圖像、視頻等插入博客文章中。

您想了解如何在WordPress網站上使用cookie嗎? Cookie是在用戶瀏覽器中存儲臨時信息的有用工具。您可以使用此信息通過個性化和行為定位來增強用戶體驗。在本終極指南中,我們將向您展示如何像專業人士一樣設置、獲取和刪除WordPresscookie。注意:這是一個高級教程。它要求您精通HTML、CSS、WordPress網站和PHP。什麼是Cookie? Cookie是用戶訪問網站時創建並存儲在用戶瀏覽

您是否在WordPress網站上看到“429請求過多”錯誤?此錯誤消息意味著用戶向您網站的服務器發送了太多HTTP請求。此錯誤可能會非常令人沮喪,因為很難找出導致該錯誤的原因。在本文中,我們將向您展示如何輕鬆修復“WordPress429TooManyRequests”錯誤。是什麼原因導致WordPress429請求過多錯誤? “429TooManyRequests”錯誤的最常見原因是用戶、機器人或腳本嘗試向網站

WordPressCanHandLeLArgeWebsiteswithCareFulplanningAndOptimization.1)USECACHINGTOREDUCESERVERVERLOAD.2)優化YourDataBaseRegularly.3)actimentAcdNtododistibuteContent.4))


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

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

熱門文章

熱工具

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

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

SublimeText3 Linux新版
SublimeText3 Linux最新版

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。