wordpress主題開發中常用的12個模板文件

在WordPress主題開發中,有多種常用的模板文件,它們負責控制網站不同部分的顯示內容和布局,以下是一些常見的模板文件:

1.index.php

這是WordPress主題的核心模板文件。當沒有其他更具體的模板文件匹配當前頁面時,WordPress就會使用index.php來顯示內容。它通常用于顯示博客的主頁,展示文章列表等。例如,一個簡單的index.php文件可能包含以下代碼:

<?php get_header(); ?>
<div id="content"><?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?><div class="post"><h2><?php the_title(); ?></h2><div class="entry"><?php the_excerpt(); ?></div></div><?php endwhile; ?><?php else : ?><p><?php _e('Sorry, no posts matched your criteria.'); ?></p><?php endif; ?>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

2.header.php

用于定義網站的頭部區域,通常包含網站的標題、導航菜單、logo等內容。例如:

<!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head><meta charset="<?php bloginfo('charset'); ?>"><meta name="viewport" content="width=device-width, initial-scale=1"><title><?php wp_title('|', true, 'right'); ?></title><?php wp_head(); ?>
</head>
<body <?php body_class(); ?>>
<div id="header"><h1><?php bloginfo('name'); ?></h1><div id="nav"><?php wp_nav_menu(array('theme_location' => 'primary')); ?></div>
</div>

3.footer.php

定義網站的底部區域,通常包含版權信息、底部菜單等內容。例如:

<div id="footer"><p>&copy; <?php echo date('Y'); ?> <?php bloginfo('name'); ?>. All rights reserved.</p><div id="footer-nav"><?php wp_nav_menu(array('theme_location' => 'footer')); ?></div>
</div>
<?php wp_footer(); ?>
</body>
</html>

4.sidebar.php

用于定義側邊欄的內容,通常包含小工具(widgets)等。例如:

<div id="sidebar"><?php if (is_active_sidebar('sidebar-1')) : ?><?php dynamic_sidebar('sidebar-1'); ?><?php endif; ?>
</div>

5.single.php

用于顯示單篇文章的完整內容。例如:

<?php get_header(); ?>
<div id="content"><?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?><div class="post"><h2><?php the_title(); ?></h2><div class="entry"><?php the_content(); ?></div></div><?php endwhile; ?><?php else : ?><p><?php _e('Sorry, no posts matched your criteria.'); ?></p><?php endif; ?>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

6.page.php

用于顯示單個頁面的內容,比如“關于我們”“聯系我們”等頁面。例如:

<?php get_header(); ?>
<div id="content"><?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?><div class="page"><h2><?php the_title(); ?></h2><div class="entry"><?php the_content(); ?></div></div><?php endwhile; ?><?php else : ?><p><?php _e('Sorry, no posts matched your criteria.'); ?></p><?php endif; ?>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

7.archive.php

用于顯示文章歸檔頁面,比如分類歸檔、標簽歸檔、日期歸檔等。例如:

<?php get_header(); ?>
<div id="content"><?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?><div class="page"><h2><?php the_title(); ?></h2><div class="entry"><?php the_content(); ?></div></div><?php endwhile; ?><?php else : ?><p><?php _e('Sorry, no posts matched your criteria.'); ?></p><?php endif; ?>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

8.category.php

用于顯示特定分類的歸檔頁面。如果存在category.php文件,WordPress會優先使用它來顯示分類歸檔頁面,而不是使用archive.php。例如:

<?php get_header(); ?>
<div id="content"><h1><?php single_cat_title(); ?></h1><?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?><div class="post"><h2><?php the_title(); ?></h2><div class="entry"><?php the_excerpt(); ?></div></div><?php endwhile; ?><?php else : ?><p><?php _e('Sorry, no posts matched your criteria.'); ?></p><?php endif; ?>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

9.tag.php

用于顯示特定標簽的歸檔頁面。如果存在tag.php文件,WordPress會優先使用它來顯示標簽歸檔頁面,而不是使用archive.php。例如:

<?php get_header(); ?>
<div id="content"><h1><?php single_tag_title(); ?></h1><?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?><div class="post"><h2><?php the_title(); ?></h2><div class="entry"><?php the_excerpt(); ?></div></div><?php endwhile; ?><?php else : ?><p><?php _e('Sorry, no posts matched your criteria.'); ?></p><?php endif; ?>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

10.search.php

用于顯示搜索結果頁面。例如:

<?php get_header(); ?>
<div id="content"><h1>Search Results</h1><?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?><div class="post"><h2><?php the_title(); ?></h2><div class="entry"><?php the_excerpt(); ?></div></div><?php endwhile; ?><?php else : ?><p><?php _e('Sorry, no posts matched your criteria.'); ?></p><?php endif; ?>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

11.404.php

用于顯示404錯誤頁面,當用戶訪問不存在的頁面時會顯示該頁面。例如:

<?php get_header(); ?>
<div id="content"><h1>404 Not Found</h1><p>Sorry, the page you are looking for does not exist.</p>
</div>
<?php get_footer(); ?>

12.comments.php

用于顯示文章或頁面的評論區域。例如:

<?php if (post_password_required()) {return;
} ?>
<div id="comments" class="comments-area"><?php if (have_comments()) : ?><h2 class="comments-title"><?phpprintf(_n('One thought on “%2$s”', '%1$s thoughts on “%2$s”', get_comments_number(), 'textdomain'), number_format_i18n(get_comments_number()), '<span>' . get_the_title() . '</span>');?></h2><ol class="comment-list"><?phpwp_list_comments(array('callback' => 'custom_comment_callback','style' => 'ol','short_ping' => true,));?></ol><?phpthe_comments_pagination(array('prev_text' => '<span class="screen-reader-text">' . __('Previous', 'textdomain') . '</span>','next_text' => '<span class="screen-reader-text">' . __('Next', 'textdomain') . '</span>',));?><?php endif; ?><?phpif (!comments_open() && get_comments_number() && post_type_supports(get_post_type(), 'comments')) :?><p class="no-comments"><?php _e('Comments are closed.', 'textdomain'); ?></p><?phpendif;comment_form();?>
</div>

這些模板文件相互配合,共同構成了WordPress主題的完整結構。通過合理地編寫和使用這些模板文件,可以實現豐富多樣的網站布局和功能。

原文

https://www.jianzhanpress.com/?p=8574

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/84506.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/84506.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/84506.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

數據庫blog5_數據庫軟件架構介紹(以Mysql為例)

&#x1f33f;軟件的架構 &#x1f342;分類 軟件架構總結為兩種主要類型&#xff1a;一體式架構和分布式架構 ● 一體化架構 一體式架構是一種將所有功能集成到一個單一的、不可分割的應用程序中的架構模式。這種架構通常是一個大型的、復雜的單一應用程序&#xff0c;包含所…

離線服務器算法部署環境配置

本文將詳細記錄我如何為一臺全新的離線服務器配置必要的運行環境&#xff0c;包括基礎編譯工具、NVIDIA顯卡驅動以及NVIDIA-Docker&#xff0c;以便順利部署深度學習算法。 前提條件&#xff1a; 目標離線服務器已安裝操作系統&#xff08;本文以Ubuntu 18.04為例&#xff09…

chromedp -—— 基于 go 的自動化操作瀏覽器庫

chromedp chromedp 是一個用于 Chrome 瀏覽器的自動化測試工具&#xff0c;基于 Go 語言開發&#xff0c;專門用于控制和操作 Chrome 瀏覽器實例。 chromedp 安裝 go get -u github.com/chromedp/chromedp基于chromedp 實現的的簡易學習通刷課系統 目前實現的功能&#xff…

高級特性實戰:死信隊列、延遲隊列與優先級隊列(三)

四、優先級隊列&#xff1a;優先處理重要任務 4.1 優先級隊列概念解析 優先級隊列&#xff08;Priority Queue&#xff09;是一種特殊的隊列數據結構&#xff0c;它與普通隊列的主要區別在于&#xff0c;普通隊列遵循先進先出&#xff08;FIFO&#xff09;的原則&#xff0c;…

python打卡day34

GPU訓練及類的call方法 知識點回歸&#xff1a; CPU性能的查看&#xff1a;看架構代際、核心數、線程數GPU性能的查看&#xff1a;看顯存、看級別、看架構代際GPU訓練的方法&#xff1a;數據和模型移動到GPU device上類的call方法&#xff1a;為什么定義前向傳播時可以直接寫作…

Newtonsoft Json序列化數據不序列化默認數據

問題描述 數據在序列號為json時,一些默認值也序列化了,像旋轉rot都是0、縮放scal都是1,這樣的默認值完全可以去掉,減少和服務器通信數據量 核心代碼 數據結構字段增加[DefaultValue(1.0)]屬性,縮放的默認值為1 public class Vec3DataOne{[DefaultValue(1.0)] public flo…

可增添功能的鼠標右鍵優化工具

軟件介紹 本文介紹一款能優化Windows電腦的軟件&#xff0c;它可以讓鼠標右鍵菜單添加多種功能。 軟件基本信息 這款名為Easy Context Menu的鼠標右鍵菜單工具非常小巧&#xff0c;軟件大小僅1.14MB&#xff0c;打開即可直接使用&#xff0c;無需進行安裝。 添加功能列舉 它…

Gemini 2.5 Pro 一次測試

您好&#xff0c;您遇到的重定向循環問題&#xff0c;即在 /user/messaging、/user/login?return_to/user/messaging 和 /user/login 之間反復跳轉&#xff0c;通常是由于客戶端的身份驗證狀態檢查和頁面重定向邏輯存在沖突或競爭條件。 在分析了您提供的代碼&#xff08;特別…

vue3前端后端地址可配置方案

在開發vue3項目過程中&#xff0c;需要切換不同的服務器部署&#xff0c;代碼中配置的服務需要可靈活配置&#xff0c;不隨著run npm build把網址打包到代碼資源中&#xff0c;不然每次切換都需要重新run npm build。需要一個配置文件可以修改服務地址&#xff0c;而打包的代碼…

大模型微調與高效訓練

隨著預訓練大模型(如BERT、GPT、ViT、LLaMA、CLIP等)的崛起,人工智能進入了一個新的范式:預訓練-微調(Pre-train, Fine-tune)。這些大模型在海量數據上學習到了通用的、強大的表示能力和世界知識。然而,要將這些通用模型應用于特定的下游任務或領域,通常還需要進行微調…

編程技能:字符串函數10,strchr

專欄導航 本節文章分別屬于《Win32 學習筆記》和《MFC 學習筆記》兩個專欄&#xff0c;故劃分為兩個專欄導航。讀者可以自行選擇前往哪個專欄。 &#xff08;一&#xff09;WIn32 專欄導航 上一篇&#xff1a;編程技能&#xff1a;字符串函數09&#xff0c;strncmp 回到目錄…

動態規劃-53.最大子數組和-力扣(LeetCode)

一、題目解析 在給定順序的數組中找出一段具有最大和的連續子數組&#xff0c;且大小最小為1. 二、算法原理 1.狀態表示 我們可以意一一枚舉出所有的子數組&#xff0c;但我們想要的是最大子數組&#xff0c;所以f[i]表示&#xff1a;以i位置為結尾&#xff0c;所有子數組的最…

C++ queue對象創建、queue賦值操作、queue入隊、出隊、獲得隊首、獲得隊尾操作、queue大小操作、代碼練習

對象創建&#xff0c;代碼見下 #include<iostream> #include<queue>using namespace std;int main() {// 1 默認構造函數queue<int> q1;// 2 拷貝構造函數queue<int> q2(q1);return 0;} queue賦值操作&#xff0c;代碼見下 #include<iostream>…

全鏈路解析:影刀RPA+Coze API自動化工作流實戰指南

在數字化轉型加速的今天&#xff0c;如何通過RPA與API的深度融合實現業務自動化提效&#xff0c;已成為企業降本增效的核心命題。本文以「影刀RPA」與「Coze API」的深度協作為例&#xff0c;系統性拆解從授權配置、數據交互到批量執行的完整技術鏈路&#xff0c;助你快速掌握跨…

php本地 curl 請求證書問題解決

錯誤: cURL error 60: SSL certificate problem: unable to get local issuer certificate (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) for 解決方案 在php目錄下創建證書文件夾, 執行下面生成命令, 然后在php.ini 文件中配置證書路徑; 重啟環境 curl --eta…

【圖數據庫】--Neo4j 安裝

目錄 1.Neo4j --概述 2.JDK安裝 3.Neo4j--下載 3.1.下載資源包 3.2.創建環境變量 3.3.運行 Neo4j 是目前最流行的圖形數據庫(Graph Database)&#xff0c;它以節點(Node)、關系(Relationship)和屬性(Property)的形式存儲數據&#xff0c;專門為處理高度連接的數據而設計。…

MIT 6.S081 2020Lab5 lazy page allocation 個人全流程

文章目錄 零、寫在前面一、Eliminate allocation from sbrk()1.1 說明1.2 實現 二、Lazy allocation2.1 說明2.2 實現 三、Lazytests and Usertests3.1 說明3.2 實現3.2.1 lazytests3.2.2 usertests 零、寫在前面 可以閱讀下4.6頁面錯誤異常 像應用程序申請內存&#xff0c;內…

(Git) 稀疏檢出(Sparse Checkout) 拉取指定文件

文章目錄 &#x1f3ed;作用&#x1f3ed;指令總覽&#x1f477;core.sparseCheckout&#x1f477;sparse-checkout 文件 &#x1f3ed;實例演示?END&#x1f31f;交流方式 &#x1f3ed;作用 類似于 .gitignore 進行文件的規則匹配。 一般在需要拉取大型項目指定的某些文件…

docker初學

加載鏡像&#xff1a;docker load -i ubuntu.tar 導出鏡像&#xff1a;docker save -o ubuntu1.tar ubuntu 運行&#xff1a; docker run -it --name mu ubuntu /bin/bash ocker run -dit --name mmus docker.1ms.run/library/ubuntu /bin/bash 進入容器&#xff1a;docke…

Docker系列(二):開機自啟動與基礎配置、鏡像加速器優化與疑難排查指南

引言 docker 的快速部署與高效運行依賴于兩大核心環節&#xff1a;基礎環境搭建與鏡像生態優化。本期博文從零開始&#xff0c;系統講解 docker 服務的管理配置與鏡像加速實踐。第一部分聚焦 docker 服務的安裝、權限控制與自啟動設置&#xff0c;確保環境穩定可用&#xff1b…