搜索
首页web前端css教程在哪里学习WordPress主题开发

Where to Learn WordPress Theme Development

十多年前,我制作了一个关于 WordPress 设计的三部分视频系列。之后,我又以同样的精神制作了其他系列,例如直播 v10 的重新设计、朋友的网站,甚至写了一本书。不过,这些内容现在已经有点过时了。如果你刚开始学习 WordPress 主题开发,观看这些视频仍然可以学到一些东西,但有些部分会感觉非常老旧(旧的 UI 和旧版本的软件)。不过,所有代码仍然有效,因为 WordPress 在向后兼容性方面做得很好。我仍然会收到一些人的来信,他们发现这些视频对他们非常有帮助。

但随着时间的推移,最近有人问我,我现在会推荐哪些资源,我想我应该四处看看,看看哪些资源对我来说不错。

我们在谈论谁?

WordPress 开发人员的范围很广,从完全不懂代码或几乎不接触代码的人,到构建所有自定义内容的资深编程极客。

  1. 选择一个看起来不错的主题,使用它。
  2. ?‍♂️
  3. ?‍♂️
  4. ?‍♂️
  5. ?‍♂️
  6. 资深编程极客。

我无法与该范围两端的任何人交流。中间有一大批人。他们会编写代码,但他们不是计算机科学专业人士。他们是“完成工作”的人。也许是这样的:

  1. 选择一个可用的主题,使用它。
  2. 从一个主题开始,使用内置工具对其进行一些自定义。
  3. 从一个主题开始,使用代码对其进行修改以满足您的需求。
  4. 从头开始,构建您需要的内容。
  5. 从头开始,构建高度定制的网站。
  6. 资深编程极客。

我一直都在 #4 左右,我认为这是一个不错的选择。我尝试让现成的 WordPress 和流行的插件承担繁重的工作,但我将使用我自己的前端(HTML、CSS 和 JavaScript)并自定义我必须自定义的内容。我正在制作模板。我正在编写查询。我正在构建模块。我正在尽可能地进行模块化。

我觉得在这个区域很有力量。我可以几乎独自一人构建许多这样的网站。那么,今天有哪些资源可以帮助您学习这种类型的 WordPress 主题开发呢?让我看看我能找到什么。

老式即兴创作

学习实践确实有一些好处。实践出真知。在我的生活中,我在这种情况下学到了很多东西。

这里的诀窍是在实时服务器上安装 WordPress,然后玩弄设置、插件、自定义程序和编辑主题文件本身,以使网站执行操作。您会在这些主题文件中找到 HTML——修改它!您会看到 PHP 代码正在输出内容。你能分辨出什么以及如何操作它吗?您会在主题中找到一个 CSS 文件——编辑它!

官方文档在这里可以帮助您:

  • 如何安装 WordPress
  • 开发人员资源
  • 当您遇到问题时使用 Google 搜索

在某种程度上,我喜欢现场操作(在生产网站上),因为当您是初学者时,这会让您对正在做的事情产生一种真实感。风险很高,让您感受到自己拥有的力量。当我进行这些更改时,全世界任何有互联网连接的人都能看到。

在我刚开始的时候,我通过购买域名和托管来做到这一点,在这个托管上安装 WordPress,使用 SFTP 凭据登录,然后直接处理实时文件。我使用了 Coda,它仍然是一款流行的应用程序,在我编写本文时,它正在积极开发新版本。

希望风险是真实但较低的。例如,您正在处理个人项目或个人网站。在某些时候,在生产网站上进行修改变得太危险了。一行错误放置的 PHP 语法可能会使整个网站崩溃。

如果您正在处理客户网站,则需要升级工作流程。

现代即兴创作

处理网站的现代、健康、标准方法是:

  1. 本地处理它们。
  2. 使用版本控制(Git),在新分支中完成新工作。
  3. 当代码被推送到主分支时,例如您的开发分支被合并时,将代码部署到生产网站。

我最近制作了一个关于我今天如何执行此整个工作流程的视频。我的工具集是:

  • 使用 Local by Flywheel 在本地工作。
  • 我的网络托管也是 Flywheel,但这并非必需。它可以是任何提供 SFTP 访问权限并运行 WordPress 所需内容的工具:Apache、PHP 和 MySQL。声明,Flywheel 是这里的赞助商,因为我喜欢他们及其服务 :)。
  • 代码托管在 GitHub 上的私有存储库中。
  • 通过 Buddy 将代码部署到 Flywheel 托管。Buddy 会监视对主分支的推送并将文件通过 SFTP 移动到生产站点。

现在您有了本地设置,您可以尽情发挥了。做任何你想做的事。您无法破坏实时站点上的任何内容,因此您可以更自由地进行实验性更改并查看结果。

在本地工作时,您可能会使用代码编辑器编辑文件。我想说,现在最流行的选择是免费的 VS Code,但也有 Atom 和 Sublime,以及更高级的编辑器,如 PhpStorm。

一旦您将代码推送到 Git 存储库,修改文件的自由度就会尤其明显。完成此操作后,您可以自由地将文件恢复到上次推送的状态。

我使用 Git 软件 Tower,这使我可以查看自上次提交代码以来哪些文件已更改。如果我犯了错误、造成了问题或做了我不喜欢的事情——即使我不记得自己到底更改了什么——我可以将这些更改丢弃回它们的上一个状态。这是一个不错的自由度。

当我确实提交代码时,无论是提交到主分支还是通过将分支合并到主分支,Buddy 都会启动并将更改部署到生产站点。

但是,从哪里开始呢?

我们在这里讨论的是 WordPress 主题开发,因此您从主题开始。主题实际上是 WordPress 安装中文件的文件夹。

<code>root
  - /wp-content/
    - /themes/
       - /theme-name/</code>

WordPress 自带了一些主题。在我编写本文时,Twenty Twenty 主题随 WordPress 一起提供,它是一款不错的主题!您可以绝对地从修改这个主题开始。

主题往往对它们如何组织自己和做事有一些看法,Twenty Twenty 也不例外。我想说,也许是有争议的,只要它是有效的代码并以“WordPress”的方式做事,就没有唯一正确的方式来组织您的主题。这只是您在制作主题时必须掌握的一种感觉。

启动主题

在我那个时代,启动主题是从头开始构建主题的一种非常流行的方式。我不确定这是否仍然如此,但其主要思想是一个包含您需要的所有基本主题模板(单个博客文章页面、主页、404 页面、搜索结果页面等)的主题,几乎没有标记并且没有任何样式。这样,您就拥有了一个空白画布,您可以根据自己的喜好构建所有 HTML、CSS 和 JavaScript。有点像您使用这些核心技术从头开始构建任何其他网站,只是其中包含一些 PHP 来输出内容。

有一个名为 Starkers 的主题很流行,但现在已经停止维护了。我自己制作了一个名为 BLANK 的主题,但很久没有碰过了。在四处寻找后,我发现了一些具有相同精神的新主题。这是我找到的三个最好的:

  • HTML5 Blank
  • BlankSlate
  • _s (“Underscores”)

我个人无法保证它们,但它们最近都进行了更新,在我看来,它们是很好的起点。如果我从头开始一个项目,我会尝试一下它们。我会尝试下载一个,然后根据我的喜好对其进行润色,然后将保存为我自己的启动器,以防我需要再次这样做。

值得一提的是,许多网络开发并非从头开始,而是处理现有项目。在这种情况下,过程仍然是设置本地环境;您只是不是从头开始,而是从现有主题开始。我会建议复制主题并更改名称,这样即使您部署它,也不会影响实时主题。其他人可能会建议使用启动器作为“父”主题,然后分支到“子”主题。

为了使您的本地开发环境与生产网站完全同步,我认为最好的工具是 WP DB Migrate Pro,它可以将生产数据库和所有媒体文件提取到您的本地站点(付费产品和付费附加组件,物超所值)。

更高级的启动主题

与其从头开始,不如使用具有合理的默认值甚至现代构建过程的主题来开始。其思想是,使用基本上是原始 HTML、CSS 和 JavaScript 构建站点,虽然完全可行,但并没有足够的现代便利性让人感到舒适。

以下是一些。

  • Morten Rand-Hendriksen 有一个名为 WP Rig 的项目,其中包含各种开发工具。基于 Gulp 的构建过程启动了一个 BrowserSync 服务器以进行自动更新。JavaScript 在 Babel 中进行处理。CSS 在 PostCSS 中进行处理,并且代码经过了 lint 检查。他用它来教授 WordPress。
  • Roots 制作了一个名为 Sage 的主题,其中包含模板引擎、您选择的 CSS 框架以及花哨的构建过程内容。
  • Ignition 具有构建过程和各种辅助程序。
  • Timber 带有一个模板引擎和许多代码辅助程序。

我认为所有这些都非常酷,但也可能不适合刚开始的初学者开发人员。

书籍

这很难,因为书太多了。在快速 Google 搜索中,我发现一个网站以 9.99 美元的价格捆绑销售十五本 WordPress 书籍。你甚至怎么知道从哪里开始?它们以如此低廉的价格能有多好?我不知道。

几年前,我和 Jeff Starr 合写了一本书,名为《深入挖掘 WordPress》。多年来,Jeff 仍然不断更新这本书,所以我认为这是一个不错的选择!Jeff 还有其他书籍,例如《WordPress 的道》和《深入了解 WordPress 主题》。

许多其他专门关于 WordPress 主题开发的书籍都相当旧。2008-2015 年的东西。再说一次,并不是说那里没有什么可以学习的,特别是由于 WordPress 变化不大,但仍然,我想阅读一本比五年前更新的书。对于像 WordPress 用户和开发人员一样庞大的目标受众来说,这似乎是一个巨大的机会。或者,如果已经有我找不到的东西,请在评论中告诉我。

也许学习正在转向在线,以至于人们不再写书……

在线学习课程

我们的官方学习合作伙伴 Frontend Masters 有一门关于 WordPress 的课程,重点介绍 JavaScript 和 WordPress,因此这可能并不完全适合学习主题开发的基础知识。尽管如此,仍然是令人着迷的内容。

以下是一些在我四处寻找时看起来不错的其他内容:

  • SuperHi:WordPress
  • Chris Dixon:使用 Bootstrap v4 的 WordPress 5 主题开发学院
  • WPSHOUT:基础课程
  • WPCasts(YouTube 上免费)
  • Know The Code,它使用特定的主题框架进行教学。
  • Udemy:Zac Gordon 的完整 WordPress 主题和插件开发课程

Zac 的课程看起来是最新的,也许是最好的选择。

主题开发的完全不同方向

使用 WordPress 构建网站的一种方法是根本不使用 WordPress 主题!相反,您可以使用 WordPress API 从 WordPress 中提取数据,并根据您的喜好构建网站。

  • WordPress REST API(内置!)您可以用来做这样的事情。
  • Gatsby 和 WordPress
  • 使用 wp-graphql 代替 REST 使用 GraphQL。

这种解耦 CMS 和您构建的前端的思想非常巧妙。它通常被称为使用“无头”CMS。它并不适合所有人。(一个主要原因是,在某种程度上,它会使您的技术债务加倍。)但它可以使 CMS 和前端都能独立发展。

以上是在哪里学习WordPress主题开发的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
什么是CSS网格?什么是CSS网格?Apr 30, 2025 pm 03:21 PM

CSS网格是创建复杂,响应式Web布局的强大工具。它简化了设计,提高可访问性并提供了比旧方法更多的控制权。

什么是CSS Flexbox?什么是CSS Flexbox?Apr 30, 2025 pm 03:20 PM

文章讨论了CSS FlexBox,这是一种布局方法,用于有效地对齐和分布响应设计中的空间。它说明了FlexBox用法,将其与CSS网格进行了比较,并详细浏览了浏览器支持。

我们如何使用CSS使网站迅速响应?我们如何使用CSS使网站迅速响应?Apr 30, 2025 pm 03:19 PM

本文讨论了使用CSS创建响应网站的技术,包括视口元标签,灵活的网格,流体媒体,媒体查询和相对单元。它还涵盖了使用CSS网格和Flexbox一起使用,并推荐CSS框架

CSS盒装属性有什么作用?CSS盒装属性有什么作用?Apr 30, 2025 pm 03:18 PM

本文讨论了CSS盒装属性,该属性控制了元素维度的计算方式。它解释了诸如Content-Box,Border-Box和Padding-Box之类的值,以及它们对布局设计和形式对齐的影响。

我们如何使用CSS动画?我们如何使用CSS动画?Apr 30, 2025 pm 03:17 PM

文章讨论使用CSS,关键属性并与JavaScript结合创建动画。主要问题是浏览器兼容性。

我们可以使用CSS向我们的项目添加3D转换吗?我们可以使用CSS向我们的项目添加3D转换吗?Apr 30, 2025 pm 03:16 PM

文章讨论了Web项目的3D转换,关键属性,浏览器兼容性和性能注意事项的讨论。(角色计数:159)

我们如何在CSS中添加梯度?我们如何在CSS中添加梯度?Apr 30, 2025 pm 03:15 PM

文章讨论了使用CSS梯度(线性,径向,重复)来增强网站视觉效果,添加深度,焦点和现代美学。

CSS中的伪元素是什么?CSS中的伪元素是什么?Apr 30, 2025 pm 03:14 PM

文章讨论了CSS中的伪元素,它们在增强HTML样式方面的使用以及与伪级的差异。提供实用的例子。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版