如何自定义WordPress主题(5个分步教程)
如果您已经安装了一个 WordPress 主题,但它不太适合您,您可能会感到沮丧。在定制 WordPress 主题方面,您有很多选择。
挑战在于找到正确的方法。
在本篇文章中,我将引导您了解自定义 WordPress 主题的各种选项,帮助您决定哪一个适合您,并向您展示如何安全高效地进行自定义。
自定义主题的选项
在我们开始对主题进行修改之前,最好先了解一下有哪些选项,因为它们适用于不同的情况。
以下是可供您选择的选项概览:
- 如果您想为主题添加功能,请安装插件。
- 根据您的主题,使用 WordPress 管理界面中的自定义器自定义字体、颜色和布局。
- 如果您使用的是页面生成器主题,请使用其功能自定义网站设计。
- 如果您安装的是框架主题,则可使用其中一个可用的子主题来定制网站,并在管理屏幕上使用任何可行的定制选项。
- 如果你的主题是针对你的网站的,而且你也愿意这样做,那就直接编辑主题的代码。
- 如果你想编辑第三方主题的代码,请创建一个子主题。
如果您想编辑代码,您可以有多种选择,从使用区块编辑器到自定义编辑器,直至编辑文件。我们将在这篇文章中一一介绍,但我们还是从最简单的选项开始:安装插件。
真的需要自定义主题吗?
有时您根本不需要自定义主题:相反,您需要安装一个插件。
主题决定了网站的设计:网站的外观和内容显示方式(使用我们的主题检测工具来确定您喜欢的设计的底层主题)。插件增加了额外的功能。
如果你想做的改动主要集中在功能上而不是设计上,可以考虑自己安装一个插件。这可以是你需要编写的插件,也可以是从插件目录中下载的插件,还可以是你购买的插件。
如果你发现自己想编辑主题中的 functions.php 文件,请扪心自问:
如果将来换了主题,我还想保留这个功能吗?
如果答案是肯定的,那么这些代码就应该放在插件中,而不是主题中。
使用插件而不是主题的好例子包括添加小工具、注册自定义文章类型和分类法、创建自定义字段以及添加商店或搜索引擎优化增强等额外功能。
通过 WordPress 管理后台定制 WordPress 主题
如果您要做的更改以设计为主,而且相对简单,您可以通过管理屏幕进行更改。自定义器为您提供了多种调整主题的选项:具体有哪些选项取决于您的主题。你可能会在 “外观” 菜单中看到一个叫做 “自定义” 的东西。请不要使用它,原因我稍后会介绍。
WordPress 主题的最简单方法是使用 WordPress 定制器。
访问方式有两种:
- 查看网站时(登录后),点击屏幕顶部管理栏中的 “自定义” 链接。
- 在管理界面中,点击外观 > 自定义。
这将带您进入定制器。
WordPress 自定义程序
在上面的截图中,我安装了一个名为 ColorMag 的免费主题,它有很多自定义选项。它在 “自定义 “版块中添加了一些设计功能,包括标题图片、社交媒体、类别颜色,还有一个 “设计选项 “选项卡,可以让你进入更多选项卡,对网站的布局和设计进行更改。
不同的主题有不同的自定义选项,但较新的主题似乎一直在添加越来越多的自定义选项。如果你发现自己喜欢的主题却不太适合自己,你可能会发现,对它进行自定义后,你就能得到自己需要的设计和布局。
主题文件编辑器(以及为什么不使用它)
在你的管理界面中,你可能会注意到一个名为 “主题编辑器” 的选项,你可以通过 “外观“>”主题文件编辑器” 进入。
WordPress 主题文件编辑器
这样您就可以访问主题中的文件,这意味着您可以直接编辑它们。
不要这样做。
即使你很擅长编写 CSS 或 PHP,这样编辑主题中的文件也不是个好主意,原因有二:
- 如果你购买或下载的是第三方主题,你所做的任何修改都会在下次更新主题时丢失(出于安全考虑,你应该及时更新主题)。
- 更重要的是,如果你所做的更改破坏了你的网站,它将不会被跟踪,文件的前一版本也不会被更改。您可能会不可逆转地破坏网站。
如果你想编辑主题中的代码,应该使用代码编辑器(查看最好的免费 HTML 编辑器),而且在 WordPress 暂存站点上测试之前,不应该编辑实时站点中的文件。如果需要编辑第三方主题,则应使用子主题。本篇文章稍后将详细介绍这两方面的内容。
WordPress 知道使用主题编辑器有多不安全:当你试图访问它时,它甚至会发出警告。
不使用 WordPress 主题编辑器的警告
因此,请听从 WordPress 的建议:不要使用主题编辑器!
使用页面生成器和框架定制 WordPress 主题
大部分 WordPress 主题都有自定义选项,这意味着你可以通过自定义器更改设计和布局。
但有些主题则更进一步,可以进行扩展和大幅定制。这些主题被称为主题框架。
另一种方法是使用插件,它可以让你使用用户友好的界面设计网站:这些插件被称为页面生成器。
使用页面生成器定制主题
页面生成器插件的设计目的是让你可以通过一个界面轻松设置网站的设计,让你一目了然。
你可以将页面生成器插件与兼容的主题一起安装,然后使用它提供的选项按照你想要的方式设计网站。
最著名的页面生成器之一是 Elementor,但你也可以在我们的页面生成器综述中找到一些替代产品。
页面生成器让你可以通过拖放界面编辑帖子和页面,这意味着你可以看到内容的外观,并让每个页面都独一无二。
下面,我使用的是 Elementor 页面生成器和与之兼容的 Hello Elementor 主题。
Elementor 界面
页面生成器在页面布局和设计方面具有很大的灵活性。如果您习惯使用 Wix 等建站工具,它们可以帮助您轻松过渡到 WordPress。如果你喜欢所见即所得的 WordPress 内容界面,它们可以帮助你快速设计页面。
使用主题框架定制主题
主题框架是页面构建工具的另一种选择。它们是设计用于协同工作的主题套件。有一个作为框架的父主题,还有一些子主题供你选择,你可以用它们来定制主主题,让它看起来像你想要的样子。
Divi 就是主题框架的一个例子,它有自定义选项,可以让你进一步调整子主题的设计,包括类似于页面生成器的拖放界面。
Divi 主题
推荐阅读:Divi 与 Elementor: WordPress 页面生成器插件比较
编辑 WordPress 主题代码
如果您擅长编辑 CSS 和/或 PHP,那么您可以编辑主题中的代码来定制您的主题。
这将为您提供最大程度的控制。
如果你正在编辑自己的主题,它是专门为你的网站开发的,那么你可以直接对主题进行编辑。但如果您使用的是第三方主题,并希望对其进行编辑,则应创建一个子主题,以免下次更新主题时丢失更改内容。
编辑主题文件
编辑 WordPress 主题的第一步是了解哪些主题文件控制什么,哪些需要编辑。
样式表
每个 WordPress 主题都有一个样式表,称为 style.css。它包含了为网站设计样式的所有代码:布局、字体、颜色等。
例如,如果你想更改主题中的颜色,就需要对样式表进行编辑。如果你想添加一种新字体,你可以使用样式表将其应用到不同的元素,如正文和标题。
编辑样式表时要注意:特定性意味着元素的代码并不总是来自于你想象的地方。除非你添加了针对下层元素的样式,否则元素会继承页面层次结构中位于其上的其他元素的样式。
要了解哪些 CSS 会影响页面上的哪些元素,可以使用浏览器中的检查器来查看 CSS(本例中使用的是 Chrome 浏览器 DevTools):
使用 Chrome DevTools 检查 WordPress 网站中的代码
然后,你就可以用它来编写针对页面上单个元素或一系列元素或类的新 CSS。
如果你对元素、类和特殊性不甚了解,那么你最好不要直接编辑主题的 CSS。至少在你对 CSS 及其工作原理有更多了解之前是这样。
Functions 文件
几乎每个主题都会有的另一个文件是函数文件 (functions.php)。该文件能让主题中的许多功能发挥作用。在该文件中,你可以找到注册主题功能的代码,如特色图片、小部件等。
如果你想在主题中添加功能代码,这里就是你要添加的地方。但要注意:在大多数情况下,你应该编写一个插件。问问你自己
如果将来换了主题,我还想保留这个功能吗?
如果答案是肯定的,那就编写一个插件,而不是在功能文件中添加代码。插件不一定要很大:几行代码就能创建一个插件,没有什么能阻止你。
功能文件都是用 PHP 编写的,所以你需要熟悉 PHP。不要盲目照搬谷歌搜索到的代码:花时间弄清楚代码的作用并理解它。这样你就不容易添加到不尽如人意的代码中。
主题模板文件
主题中的大部分文件都是主题模板文件。这些文件决定了 WordPress 在特定页面上输出的内容,并根据模板层次结构进行选择。
如果你想改变特定文章类型、页面或存档的内容输出方式,你需要编辑其中一个文件或创建一个新文件。
例如,你的主题有一个 archive.php 文件,用于输出分类和标签的存档页面。你想更改标签的输出方式。因此,你可以创建一个名为 “tag.php “的文件,该文件将在 archive.php 的基础上进行调整。
再次提醒,编辑文件时一定要小心:它们可能会破坏你的网站。请务必先使用工具在本地安装测试。
无论您需要编辑哪种文件类型,都应正确操作。请阅读下面有关最佳实践的部分,了解如何以不会破坏网站、不会给安全带来麻烦的方式编辑代码。
使用子主题自定义第三方主题
如果你网站上运行的主题来自第三方,而你又想编辑代码,那么你需要创建一个子主题。
这是因为如果你直接编辑主题,然后再更新它(你应该这样做),就会丢失你所做的所有更改。
创建子主题包括四个步骤:
- 在 wp-content/themes 中创建一个新文件夹。
- 在该文件夹中创建一个样式表。在样式表中,告诉 WordPress 这是现有主题的子主题。
- 在子主题中添加要编辑的文件副本,并在其中进行编辑。
- 在网站中激活子主题。
WordPress 将始终使用子主题中的文件来输出内容,除非在父主题的层次结构中有更高的文件。如果同一个文件有两个版本,它会使用子主题中的版本。这意味着您在子主题中新建的文件将覆盖父主题中的文件。
定制 WordPress 主题的最佳实践
您打算定制自己的主题。在进行更改之前,请遵循以下提示,以确保安全操作,不会破坏网站、使其易受攻击或丢失代码。
如果可能,在不编辑代码的情况下进行定制
如果您可以通过 “自定义” 或管理屏幕的其他地方进行自定义,这比编辑代码更安全。
只有在熟悉 CSS(样式表)和 PHP(其他主题文件)并知道如何安全操作的情况下,才能编辑代码。
使用本地开发网站进行修改
如果您要编辑主题中的代码或创建子主题进行修改,您应该在本地安装的 WordPress 上进行开发工作,并安装好主题和从实时网站复制的内容。
这样,您就有了一个实时网站的镜像来测试您的更改。在本地网站上进行开发不会对您的实时网站产生任何影响,而且开发速度更快。
即使您使用的是自定义器,使用本地版本的网站进行测试也会很有帮助,因为您可以在不影响实时网站的情况下发布更改并进行测试。
测试完主题更改后,就可以将其上传到实时网站,或者在暂存网站上进行测试,然后将其推送到实时网站。
使用版本控制
对主题进行修改时,应使用版本控制来跟踪修改。
最简单的方法就是更改主题的版本号,并保留两个版本的副本。但如果你想正确进行版本控制,就需要使用 GitHub 等服务来跟踪更改。
这样,如果某个改动引起了问题,你就可以很容易地将其回滚,而无需进行手动编辑。
如果你是团队成员之一,版本控制会更有帮助,因为你可以看到其他成员在做什么。请务必阅读我们的 git 与 Github 指南。
使主题具有响应性
您需要对主题进行的任何改动都应能在手机和台式机上运行。
随着越来越多的人通过手机上网,以及谷歌推出的移动优先索引,您的主题在手机上的运行可能比在桌面上更重要。因此,您对主题所做的任何更改都必须是移动友好的,或者在相关情况下最好是移动优先。
这主要适用于您对样式或布局所做的任何更改:检查新布局是否能在移动设备上运行,以及是否添加了媒体查询,以便根据不同的屏幕尺寸调整布局。
如果您的主题不是响应式的,就会对您的搜索引擎排名和转化率产生负面影响。
如果您无法使用大量不同的移动设备进行测试,可以使用 BrowserStack 等工具查看网站在不同设备上的显示效果。您还可以使用浏览器中的 “开发者” 工具和自定义器中的响应式视图。
WordPress 自定义中的响应式工具
确保您的定制不会影响可访问性
对主题的任何改动都需要确保残疾或有感官障碍的用户可以访问。
这不仅仅是要确保您的网站能在屏幕阅读器上运行:其他考虑因素,如配色方案和字体大小,对很多人来说都很重要。
如果您对主题所做的更改是为了让颜色更鲜艳或让文字更小,那么请再三考虑:这可能会让人们难以阅读或与您的网站互动。
在您对网站进行任何修改之前,请使用可访问性检查器来测试您的网站,确保它不会将人们排除在外。
遵守 WordPress 编码标准
如果您要编辑主题中的代码或创建子主题,您必须确保您的代码符合 WordPress 的编码标准。
这些标准旨在确保代码的一致性和质量,避免代码混乱。PHP、CSS 和 JavaScript 都有相应的标准,因此请花些时间检查与您相关的标准,并确保您遵循了这些标准。
如果您现有的 WordPress 主题编码良好,并且您在编写新代码时与之保持一致,那么您就可以确保您的代码符合标准。确保为您对主题所做的任何更改添加注释,以便您或其他人在将来再次修改代码时知道您做了什么。您可能认为自己不会忘记,但几个月过去后,您很容易就会忘记为什么要编辑一行代码。
小结
定制 WordPress 主题并不难。有时,只需使用定制器修改字体、颜色或收藏夹图标即可。其他时候,你必须创建一个新的子主题,为主题添加新的模板文件。
自定义主题的选项包括使用插件或自定义器、直接编辑 WordPress 主题代码或创建子主题。
找出适合您的选项,安全地进行自定义,而不会破坏您的网站。
相关文章:

如何自定义WordPress主题(5个分步教程)
如果您已经安装了一个 WordPress 主题,但它不太适合您,您可能会感到沮丧。在定制 WordPress 主题方面,您有很多选择。 挑战在于找到正确的方法。 在本篇文章中,我将引导您了解自定义 WordPress 主题的各种选项,帮助您…...
ios版本的Tiktok二次安装不上,提示:Unable to Install “TikTok”
问题:Domain: IXUserPresentableErrorDomain Code: 1 Recovery Suggestion: Failed to load Info.plist from bundle at path /private/var/containers/Bundle/Application/E99D86D4-F96E-48F9-86C5-FE095A22E13A/DouyinDev.app/PlugIns/AwemeNotificationService.a…...

react实现markdown文件预览
文章目录 react实现markdown文件预览1、实现md文件预览2、解决图片不显示3、实现效果 react实现markdown文件预览 1、实现md文件预览 1️⃣第一步:安装依赖: npm install react-markdown remark-gfmreact-markdown:将 Markdown 渲染为 Rea…...
Neo4j 认证与授权:原理、技术与最佳实践深度解析
Neo4j 作为领先的图数据库,其安全机制——认证(Authentication)与授权(Authorization)——是保障数据资产的核心防线。本文将深入剖析其工作原理、关键技术、实用技巧及行业最佳实践,助您构建坚不可摧的图数据安全体系。 Neo4j 提供了强大且灵活的认证授权框架,涵盖从基…...
Android Studio 配置之gitignore
1.创建或编辑.gitignore文件 在项目根目录下检查是否已有.gitignore文件。如果没有,创建一个新文件,命名为.gitignore(注意文件名前有个点)。 添加忽略规则:在.gitignore中添加以下内容: 忽略整个 .idea …...

PDF处理控件Aspose.PDF教程:在 C# 中更改 PDF 页面大小
PDF 的页面大小决定了其内容的显示、打印或处理方式。我们通常在准备打印、转换格式或标准化布局时需要更改 PDF 页面大小。在本文中,您将学习如何使用 C# 更改任何 PDF 文件的页面大小。我们将通过完整的代码示例,逐步指导您完成操作。 Aspose.PDF最新…...
Perl One-liner 数据处理——基础语法篇【匠心】
Perl(Practical Extraction and Report Language)是一种功能强大且灵活的脚本语言,因其强大的文本处理能力和简洁的语法而广受开发者和系统管理员的喜爱。特别是在命令行环境下,Perl 的 one-liner(单行脚本)以其高效、简洁的特点,成为数据处理、文本转换和快速原型设计的…...
PHP 打印扩展开发:从易联云到小鹅通的多驱动集成实践
目前已有易联云WIFI打印机扩展 扩展入口文件 文件目录 crmeb\services\printer\Printer.php namespace crmeb\services\printer;use crmeb\basic\BaseManager; use think\facade\Config; use think\Container;/*** Class Printer* package crmeb\services\auth* mixin \crme…...

rust或tauri项目执行命令的时候,cmd窗口也会弹出显示解决方法
阻止 Tauri 执行命令时弹出 CMD 窗口 当你在 Tauri 中使用 tokio::process::Command 执行命令时弹出 CMD 窗口,这是因为 Windows 默认会为控制台程序创建可见窗口。以下是几种解决方法: 1. 使用 Windows 特有的创建标志 (推荐) #[tauri::command] pub…...
[软件工程] 文档 | 技术文档撰写全流程指南
技术文档撰写全流程指南 一份优秀的技术文档需平衡 “技术严谨性” 与 “用户友好性”,其本质是降低信息传递成本,让读者能快速获取所需信息,减少沟通与试错成本。在实际操作中,从明确目标、结构化内容、可视化表达,到…...

使用Python进行函数作画
前言 因为之前通过deepseek绘制一下卡通的人物根本就不像,又想起来之前又大佬通过函数绘制了一些图像,想着能不能用Python来实现,结果发现可以,不过一些细节还是需要自己调整,deepseek整体的框架是没有问题࿰…...
Python应用continue关键字初解
大家好!对于刚接触编程的初学者来说,理解循环控制语句是掌握编程语言的重要一步。在Python中,continue关键字是一个非常实用的循环控制工具,本文将通过简易示例帮助大家理解它的作用。 基本概念: continue关键字用于中断本次循环,…...

微型导轨在手术机器人领域中有哪些关键操作?
在微创手术领域,手术机器人凭借其高精度、高稳定性和远程操控能力,正逐步成为现代外科手术的重要工具。微型导轨作为一种专为高精度运动设计的线性导向系统,凭借其亚微米级定位精度、低摩擦运动特性及紧凑结构设计,已成为手术机器…...

FPGA 的硬件结构
FPGA 的基本结构分为5 部分:可编程逻辑块(CLB)、输入/输出块(IOB)、逻辑块之间的布线资源、内嵌RAM 和内嵌的功能单元。 (1)可编程逻辑块(CLB) 一个基本的可编程逻辑块由…...

EasyRTC音视频实时通话助力新一代WebP2P视频物联网应用解决方案
一、方案背景 物联网技术深刻变革各行业,视频物联在智慧城市、工业监控等场景广泛应用。传统方案依赖中心服务器中转,存在传输效率低、网络负载大的问题。新一代WebP2P视频物联技术实现设备直连,降低网络压力并提升传输效率,成…...

QT开发技术【ffmpeg + QAudioOutput】音乐播放器 完善
一、完善上章的功能,形成一个小工具 QT开发技术【ffmpeg QAudioOutput】音乐播放器 二、增加歌曲保存类 #include "../Include/MusicListManager.h" #include "QtGui/Include/Conversion.h" #include <QFile> #include <QXmlStream…...

vscode 离线安装第三方库跳转库
我安装的是C/C的函数跳转 下载的离线库: 项目首页 - vscode代码自动补全跳转插件离线安装包:cpptools-win32.vsix是一款专为VSCode设计的离线安装插件,特别适合无法连接网络的电脑环境。通过安装此插件,您的VSCode将获得强大的代码自动跳转…...

DevExpress WinForms v24.2 - 新增日程组件、电子表格组件功能扩展
DevExpress WinForms拥有180组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜…...

基于机器学习的心脏病预测模型构建与可解释性分析
一、引言 心脏病是威胁人类健康的重要疾病之一,早期预测和诊断对防治心脏病具有重要意义。本文利用公开的心脏病数据集,通过机器学习算法构建预测模型,并使用 SHAP 值进行模型可解释性分析,旨在为心脏病的辅助诊断提供参考。 二、…...
VisDrone无人机视觉挑战赛观察解析2025.6.5
VisDrone无人机视觉挑战赛观察解析 历史沿革与发展进程 VisDrone无人机视觉挑战赛由天津大学联合国内外多所高校及科研机构发起,自2018年起依托ECCV、ICCV等顶级计算机视觉会议连续举办,已成为全球无人机视觉领域最具影响力的学术竞赛之一。赛事以推动无人机平台视觉算法创…...
Monorepo架构: Lerna、NX、Turbo等对比与应用分析
概述 对于大型的 Monorepo 项目来说,Nx 绝对算是神器,在包管理和版本控制部分有优势对于大型 Monorepo 项目,Nx 是非常实用的工具,在包管理、版本控制以及构建、测试优化等方面都有一定作用下面我们来对比一下这几种工具 NPM 包…...
redis进入后台操作、查看key、删除key
cmd进入 redis后台 避免报错NOAUTH Authentication required 第一步 ./redis-cli -h 127.0.0.1 -p 6379第二步 AUTH YourPassword通过key删除redis缓存 进了后台之后输入 keys * 删除key del key1...

谷粒商城-分布式微服务项目-高级篇[三]
十五、商城业务-支付 15.1 支付宝支付 15.1.1 进入“蚂蚁金服开放平台” 支付宝开放 平台地址: 支付宝开放平台 15.1.2 下载支付宝官方 demo,进行配置和测试 开发者文档:支付宝开放平台文档中心 电脑网站支付文档:小程序文…...

实现购物车微信小程序
实现一个微信小程序购物车页面,包含以下功能: 需求说明: 商品列表:显示商品名称、价格、数量加减按钮,支持修改商品数量(数量≥1)。 全选 / 反选功能:顶部 “全选” 复选框&#…...

26考研 | 王道 | 计算机组成原理 | 四、指令系统
26考研 | 王道 | 计算机组成原理 | 四、指令系统 文章目录 26考研 | 王道 | 计算机组成原理 | 四、指令系统1.指令系统0.指令集体系结构1. 指令格式1.按地址码数目不同来分2.指令-按指令长度分类3.指令-按操作码长度分类4.指令-按操作类型分类 2. 扩展操作码指令格式 2.指令的寻…...
互联网大厂Java求职面试:AI与大模型技术在企业知识库中的深度应用
互联网大厂Java求职面试:AI与大模型技术在企业知识库中的深度应用 第一轮:场景引入与基础架构设计 面试官(技术总监): “郑薪苦,我们先从一个实际场景开始吧。假设我们要为企业知识库设计一个深度融合AI大…...

在 Windows 系统安装 Git
前往官网下载Git - Downloads 目录 一、下载安装包 二、安装 Git 三、安装完成 四、验证安装 五、问题解决 解决步骤 一、下载安装包 点击页面右侧 “Download for Windows” 按钮。 点击页面最上方 “Click here to download” ,下载 Git for Windows/x64 …...
JavaSec-SSTI - 模板引擎注入
简介 SSTI(Server Side Template Injection):模板引擎是一种通过将模板中的占位符替换为实际数据来动态生成内容的工具,如HTML页面、邮件等。它简化了视图层的设计,但如果未对用户输入进行有效校验,可能导致安全风险如任意代码执行…...

基于InternLM的情感调节大师FunGPT
基于书生系列大模型,社区用户不断创造出令人耳目一新的项目,从灵感萌发到落地实践,每一个都充满智慧与价值。“与书生共创”将陆续推出一系列文章,分享这些项目背后的故事与经验。欢迎订阅并积极投稿,一起分享经验与成…...

【性能调优系列】深入解析火焰图:从基础阅读到性能优化实战
博客目录 一、火焰图基础:结构与阅读方法二、深入分析火焰图:关键观察点与性能瓶颈识别1. 识别最宽的函数块2. HTTP 请求处理分析3. 数据库操作分析4. 业务逻辑分析 三、性能优化实战:从火焰图到解决方案1. 线程池性能优化2. 数据库访问优化3…...