如何在 WordPress 中創建自定義帖子類型
已發表: 2021-06-09當我們安裝WordPress時,我們在後端只獲得了三種內置的內容類型,即帖子、頁面和媒體。 然而,今天 WordPress 已經變得相當靈活和先進。
添加更多帖子類型的方法也有所擴展。 多樣化的使用需要更多的內容類型,因為帖子、頁面和媒體是不夠的,這就是 WordPress 自定義帖子類型派上用場的地方。
- 什麼是 WordPress 自定義帖子類型?
- 如何創建 WordPress 自定義帖子類型
- 如何在 WordPress 網站上創建新的自定義帖子
- 如何創建模板和獲取列表
- 如何為自定義帖子類型添加菜單
- 如何為自定義帖子類型創建詳細信息頁面
什麼是 WordPress 自定義帖子類型?
自定義帖子類型用於將常規 WordPress 網站轉換為內容管理系統。 顧名思義,您可以使用自定義帖子類型為您的網站創建各種內容類型。
更新:WordPress 5.x 帶有全新的 Gutenberg 編輯器。 如果您希望將 Gutenberg 與 WordPress 自定義帖子類型一起使用,這裡是為 CPT 啟用 Gutenberg 編輯器的一個很好的指南。
更新:WordPress 5.x 帶有全新的 Gutenberg 編輯器。 這是為自定義帖子類型啟用古騰堡編輯器的詳細指南
除此之外,您還可以在 WordPress 安裝中找到幾種默認可用的帖子類型,包括:
- 帖子 - 博客文章
- 頁面 - 靜態頁面
- 附件 - 附加媒體
- 修訂 - 修訂後
- 導航菜單 - 導航菜單
注意:閱讀自定義帖子類型 codex 文檔以獲取有關 WordPress 中其他帖子類型的更多詳細信息。
在自定義帖子類型方面,WordPress 支持無限數量的自定義帖子類型。 您可以創建自定義帖子並隨時隨地調用它們。
例如,如果您運行一個新聞網站並想要添加一個名為“新聞”的自定義帖子類型。 創建後,新聞帖子類型將在 WordPress 儀表板管理區域中擁有自己的菜單。 此外,您可以創建多種帖子類型,例如電影、作品集等。
託管 WordPress 主機每月 10 美元起
在幾分鐘內部署安全且可擴展的雲服務器並見證改進的性能結果。
如何創建 WordPress 自定義帖子類型
按照以下步驟在 WordPress 網站上創建自定義帖子類型:
- 從 WordPress 主題目錄導航到function.php文件
- 將以下代碼添加到function.php文件中
/* 自定義帖子類型開始 */ 函數 create_posttype() { register_post_type('新聞', // 彩管選項 大批( '標籤' => 數組( '名稱' => __( '新聞' ), 'singular_name' => __( '新聞' ) ), '公共' => 真的, 'has_archive' => 假, '重寫' => 數組('slug' => '新聞'), ) ); } // 將我們的函數連接到主題設置 add_action('init', 'create_posttype'); /* 自定義帖子類型結束 */
- 添加代碼後,新聞帖子類型將自動出現在管理區域中
- 創建自定義帖子類型時,需要使用init作為add_action()中的鉤子,並且register_post_type()函數將接受參數
/*自定義帖子類型開始*/ 函數 cw_post_type_news() { $支持=數組( 'title', // 文章標題 'editor', // 發佈內容 'author', // 發表作者 'thumbnail', // 特色圖片 'excerpt', // 發布摘錄 'custom-fields', // 自定義字段 'comments', // 發表評論 'revisions', // 發布修訂 'post-formats', // 發布格式 ); $標籤=數組( '名稱' => _x('新聞', '複數'), 'singular_name' => _x('news', 'singular'), 'menu_name' => _x('news', 'admin menu'), 'name_admin_bar' => _x('news', 'admin bar'), 'add_new' => _x('新增', '新增'), 'add_new_item' => __('添加新消息'), 'new_item' => __('新消息'), 'edit_item' => __('編輯新聞'), 'view_item' => __('查看新聞'), 'all_items' => __('所有新聞'), 'search_items' => __('搜索新聞'), 'not_found' => __('沒有找到新聞'), ); $args = 數組( '支持' => $支持, '標籤' => $標籤, '公共' => 真的, 'query_var' => 真, '重寫' => 數組('slug' => '新聞'), 'has_archive' => 真, '分層' => 假, ); register_post_type('新聞', $args); } add_action('init', 'cw_post_type_news'); /*自定義帖子類型結束*/
$supports:指定帖子類型兼容並支持所有基本功能。
$labels:指定帖子類型正確引用到管理區域。
$args:指定新聞的永久鏈接段和位於Posts菜單下方的菜單位置。
現在讓我們看看向我們的 WordPress 網站添加自定義帖子功能之前和之後的情況。
– 添加功能之前
- 添加功能後
上面的步驟告訴瞭如何將 WordPress 自定義帖子類型註冊到任何主題的後端。 現在讓我們學習如何在 WordPress 網站上添加自定義帖子。
如何在 WordPress 網站上創建新的自定義帖子
您可以按照以下步驟在 WordPress 網站上創建新的自定義帖子:
- 點擊註冊的自定義帖子類型,在我們的例子中是“新聞”。
- 單擊添加新的。
- 輸入帖子的標題和正文。
- 鍵入摘錄,並設置特色圖像。
- 單擊“發布”按鈕以實時發布新的自定義帖子。
如何創建模板和獲取列表
創建模板並獲取列表需要創建一個名為 template-news.php 的新文件。
- 將新創建的文件放在您的主題文件夾中。
- 將以下代碼添加到文件中:
<?php /*模板名稱:新聞*/ get_header(); 查詢帖子(數組( 'post_type' => '新聞' )); ?> <?php while (have_posts()) : the_post(); ?> <h2><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h2> <p><?php the_excerpt(); ?></p> <?php 結束; get_footer(); ?>
頁面構建器讓您無需代碼即可開發網站
找出哪個頁面構建器表現最好以及創建網站所需的功能。
選擇一個模板
- 轉到您的WordPress 儀表板
- 單擊頁面>添加新的
- 創建一個名為“新聞”的新頁面
- 點擊右側的頁面屬性,進入模板下的下拉菜單
- 選擇新模板“新聞”
- 單擊更新按鈕以設置您的模板
有關上述步驟的直觀表示,請參閱下圖:
下圖代表您的列表頁面的最終顯示:
如何為自定義帖子類型添加菜單
按照以下步驟將您的自定義帖子類型添加為 WordPress 網站上菜單選項的一部分:
- 轉到您的WordPress 儀表板
- 導航到外觀>菜單
- 將新聞頁面添加到您的主菜單,以顯示指向我們新創建的 WordPress 自定義帖子類型新聞的導航鏈接
如需進一步參考,請查看下圖。
這就是您的網站在前端的外觀。 看看下面的圖片:
如何為自定義帖子類型創建詳細信息頁面
按照以下步驟為自定義帖子類型創建“詳細信息”頁面:
- 添加一個名為 single-news.php 的新文件(位於您的 WordPress 主題中)
- 將以下代碼添加到文件中:
<?php get_header(); /* 開始循環 */ while (have_posts()) : the_post(); get_template_part('template-parts/post/content', get_post_format()); 結束; // 循環結束。 get_footer(); ?>
現在是時候看看您的詳細信息頁面是什麼樣子了:
包起來!
您現在已經學習瞭如何在 WordPress 中創建自定義帖子類型,這非常複雜,但可以按照本博客中提到的步驟輕鬆完成。 如果您對博客有任何疑問或建議,請隨時在下面發表評論。