入门课程:学习Wordpress开发

发布于:2021-01-07 10:25:14

0

290

0

Wordpress 博客平台 Web开发

Wordpress是地球上使用最广泛的博客平台。但是您知道吗,Wordpress还为一些最大的在线商店,出版物和社区提供在线支持?Wordpress为数百万个站点提供了强大的动力,对于希望与Wordpress合作的个人来说,从来就不缺少潜在的项目。 

在本指南中,我们将从假设您知道要学习一些Web开发开始。但是没有太多经验。许多Wordpress开发人员是自学成才的,在线上有更多资源可以帮助您入门。我们已经与Wordpress主题合作了很多年,并将逐步引导您了解一些我们最喜欢的资源。 

首先,wordpress.com与wordpress.org

如果您花了点时间修改自己的网络形象并尝试启动wordpress博客,那么您可能会遇到Wordpress.com和Wordpress.org之间存在差异的事实。 

如果您还没有,或者想了解更多,我们将在下面概述这两个实体之间的关键区别。 

Wordpress.com和Wordpress.org之间的主要区别在于谁托管您的网站。 

对于Wordpress.com,Wordpress.com将安装Wordpress的实例并提供托管。对于Wordpress.org,您可以托管自己的网站。虽然这似乎没有什么区别-毕竟必须有人托管该网站,对吗?-这的意思是Wordpress.com对您所提供的功能有很多控制权。 

Wordpress.com是获得可定制的免费在线网站的好方法。但是,此服务通常是针对完整的Web开发新手的。网站并不是真正可定制的。Wordpress.com并没有提供Wordpress众所周知的大量功能增强功能。 

简而言之,使用Wordpress.com不能使用插件,不能编辑后端代码,也不能自定义主题(网站的外观)。尽管Wordpress.com有许多用例,但在此平台上无法进行第三方Wordpress开发。 

出于这些原因,只需注意在我们关于Wordpress的指南中,我们将讨论开源软件,用户可以通过主题和插件来增强其功能和设计:可在Wordpress.org上获得。 

前端三合会,HTML,CSS,JS

{xunruicms_img_title}

前端Web开发主要与网站的视觉结构和交互性有关。虽然Wordpress开发确实涉及对数据库的某些查询(尤其是对于复杂的网站),但是可以使用HTML,CSS和JS的知识来实质性地更改Wordpress网站并执行您可能需要的许多自定义操作。 

从历史上讲,PHP(在下一节中)一直是建立在Wordpress主题和插件的基础上,而Javascript是在Wordpress本身的基础上构建的,并且包括Gutenberg Blocks在内的最新发展使Javascript的知识对于高级Wordpress开发比以往任何时候都更加重要。 

那么什么是HTML,CSS和JS?

HTML代表超文本标记语言。HTML实际上不是编程语言,而是标记语言。内容周围放置了一系列标签,以告诉浏览器如何解释页面上的内容。此外,页面元数据包括有关内容所用语言,搜索引擎应如何看待您的页面的标签以及更多内容,并包含在HTML中。 

CSS代表级联样式表。CSS(以及更现代的预处理库,如SCSS和SASS)为您的网站提供了主要的视觉设计。引用html元素的“选择器”的使用告诉浏览器它们应如何显示元素。例如,CSS可以指定段落HTML元素的所有实例应为红色。或所有链接应为紫色。为了说明起见,这被简化了,但是CSS本质上是以这种方式工作的。 

为什么要“级联”?CSS提供了根据选择器的特殊性覆盖自身的功能。例如,您可以将整个网站的样式用作默认样式。但是您可能在一个单独的页面上想要其他样式。使用样式说明在该页面上指定一个更特定的元素将优先于默认样式。 

JS代表javascript。Javascript是一种非常强大的语言,其上构建了许多现代Web开发框架。Netflix,Amazon和Facebook的面向公众的网站很大程度上建立在JS框架上。Javascript可以作为前端或后端语言运行。这意味着它可能会影响网站的外观设计以及对数据库的调用和操作返回的对象。在Wordpress开发的上下文中,如果您想编辑自己的编辑体验,或者要在网站上提供交互性,则Javascript很重要。交互性是指用户执行操作时触发的事件。 

总之,HTML,CSS和JS可能是有关Web开发的在线资源中最常见的主题。有很多免费和收费的方法来学习,练习和查找这三种语言的工作代码示例。 

足够的PHP

要有意义地使用Wordpress主题和插件,您需要掌握另一种编程语言的基础:PHP。话虽如此,您可以在不了解任何PHP知识的情况下,通过对现有主题进行一定程度的调整来自定义Wordpress网站。但是要通过主题和插件开发真正改变网站的功能,您将需要一些PHP知识。 

好消息是,如果您已经使用过一些Java脚本,那么PHP的基础知识应该非常熟悉。PHP是另一种面向对象的编程语言。对于Wordpress,它主要用于与Wordpress网站的数据库进行通信,以确定哪些内容应输出到何处以及哪些支持文件应被加载。

PHP附带了一系列内置函数,这些函数与Wordpress的核心功能(在PHP中也进行了很多处理)结合在一起。这些功能可以一起定制,以提供人们对Wordpress主题或插件所期望的绝大多数功能。随着您不断发展Wordpress开发技能,可能没有哪个位置会像Wordpress Codex一样为内置Wordpress函数提供尽可能多的答案。 

Wordpress的许多初学者都将Wordpress循环描述为“神奇”。这是“循环”浏览不同类型的内容并返回要以系统方式排列的内容数据的核心机制。 

您可能已经注意到,Wordpress具有一系列内置页面类型,这些页面类型的默认行为包括返回某种类型的内容。类别页面可以返回特定类别内的所有帖子。作者页面可以返回特定作者的所有帖子。存档页面可能会返回特定时间段内的所有帖子,依此类推。

在每种页面类型中,默认情况下,循环都会返回一个post对象,该对象代表所有打算在此类型页面上显示的帖子。这样,每个人都有一系列内置函数可以从发布对象中提取信息。 

诸如“ the_excerpt”,“ the_permalink”,“ the_title”和“ get_the_post_thumbnail”之类的函数均从循环内部返回给定帖子的组件(即帖子的摘录,帖子的链接,标题和图像)是指缩略图)。这只是与Wordpress中与帖子相关的内置功能的一小部分。通过将循环中当前帖子的值返回到页面上的特定位置并应用html和css,可以极大地改变Wordpress中默认页面的外观,感觉和组织。

也可以调用自定义查询来提取符合某些参数的帖子。也许您想显示给定类别或给定作者的三个最新帖子。或者,您可能想在侧栏中显示相关帖子。这些操作可以通过调用第二个查询到您的Wordpress数据库来完成。您可能会想到,许多页面类型都是通过一系列自定义查询完成的。 

第二个允许个人开始通过主题设计对网站功能和设计进行有影响力的编辑的元素是Wordpress模板层次结构。 

正如我刚才提到的,Wordpress附带了一组页面类型,这些页面类型执行围绕提供某些类型的内容而构建的默认功能。这些页面旨在捕获网站查看者可以在Wordpress网站内到达的任何逻辑位置,并提供有关应在屏幕上显示哪些内容的详细信息。 

Wordpress默认使用最适用于个人在网站上位置的模板。例如,如果您的主题同时提供了产品类别和常规类别模板,那么查看您产品类别的查看者将看到产品类别模板。如果您没有包括任何其他特定类别页面,那么查看者可能会看到所有其他类别的常规类别页面。 

Wordpress模板层次结构为Wordpress主题开发人员提供了一种通用语言和组织结构。模板层次结构使您可以更轻松地在另一个代码上进行构建,并通过提供有关可能在何处实施特定设计和布局选择的信息来重新访问您以前处理过的主题。 

虽然我们已经向您介绍了Wordpress Codex,但在Wordpress模板层次结构页面上保留的备受欢迎的图形为许多开发人员在其整个职业生涯中提供了明确的参考。在此处查看交互式格式的模板层次结构图。   

初学者应该熟悉的第三类功能是Wordpress帖子类型。与Wordpress一样,抄本提供了有关帖子类型的权威性知识来源之一。 

简而言之,帖子类型是Wordpress中的内容类型。每个帖子类型在给定主题中都有不同的目的。不同的帖子类型具有不同的元数据字段,并且可以不同的方式使用。 

Wordpress中的五种默认帖子类型包括:

  • 帖子–您可能会认为是博客帖子或个别内容

  • 页面-第二种帖子类型,可以提供分层的url结构和(例如:yoursite.com/parent_page/child_page),并且用于内容的可变性或静态性较小

  • 附件–一种用于显示媒体文件和上传内容的帖子。包括与图像或其他多媒体内容有关的元数据

  • 修订-一种帖子类型,用于保存每60秒编辑的帖子的“工作副本”(默认情况下)。此帖子类型主要涉及Wordpress仪表板内部的编辑过程

  • 导航菜单–一种类型的帖子,详细介绍了将在整个主题中使用的菜单的结构,布局和位置

对于许多初学者来说,Wordpost的使用可能会令人困惑,因为它可以引用单个帖子(五种默认帖子类型之一),或者通常可以用来引用所引用内容的类型。在第二种用法的情况下,可以阅读示例,例如“可以将所需的帖子类型传递到wp_query中”。 

还需要注意的是,许多Wordpress主题和插件都使用自定义帖子类型。自定义帖子类型可以包括产品,大学,个人,组织或可以由内容中的一系列不同字段表示的任何类型的“实体”。 

尽管在实际使用您自己的主题之前需要进行很多消化,但是以下是我们在本节中介绍的三个功能群集中一些我们喜欢的资源,供您随时间重新使用: 

  • Treehouse针对初学者的Wordpress循环综合指南

  • IsItWP的循环指南

  • WpBeginner的WP模板层次结构速查表

  • Cloudway的WP模板指南以加快开发速度

  • WPBeginner自定义帖子类型指南

设置本地环境

在某些情况下,您可能会立即将代码部署到主机上,但在大多数情况下,您将希望在本地站点上工作。这意味着您将要设置一个能够处理Wordpress安装的本地运行服务器。这也意味着您可以打开Wordpress安装的主题或插件文件夹,并对可以实时查看结果的文件进行更改。 

设置本地主机的方法有很多,尤其是许多专门针对Wordpress的本地主机设置。最佳选择使您可以轻松地从Web上获取实时站点的现有状态,进行更改并将该站点重新投入生产。

如何选择本地托管解决方案以及如何设置每个本地托管解决方案的详细信息超出了本指南的范围。但我们将在下面列出一些收藏夹:

  • Web设计墙MAMP,XAMPP和WAMP指南

  • 由WpEngine和Flywheel Wordpress托管在本地

  • 本地主机指南

  • 下载Wordpress进行安装的位置

制作第一个孩子主题

如果您已经以用户身份了解Wordpress仪表板的方式,则可能会知道有一个视图,个人可以在其中编辑Wordpress实例中安装的主题。暂时,您可以使用Wordpress仪表板的“编辑主题”部分。但这不是以任何方式编辑主题的最佳实践方法。 

当开始制作自己的或编辑现有的Wordpress主题时,您可能会听到这样的想法,即应该使用“子主题”进行开发。这到底是什么意思? 

子主题从已建立的父主题获取所有现有代码,并且默认为该代码,除非子主题明确不同。儿童主题有两个方面: 

1.子主题使您可以继续接收父主题的更新(用于安全性,新功能等),而无需清除对网站的更改。 

2.子主题可让您以父主题的布局和设计为基础,从而为您提供一个从中开始的框架

只需设置一个儿童主题是一个很好的入门项目,可以熟悉Wordpress开发。

 

有许多指南可以指导您逐步完成创建子主题的步骤。简而言之,步骤包括:

1.在您的Wordpress安装主题目录中创建一个文件夹

2.在文件夹内部添加一个styles.css文件,顶部带有一系列注释字段,包括子主题的名称,父主题的名称,主题的作者以及其他可选字段

    2.1 创建一个使父主题样式和脚本入队的functions.php文件

    2.2 在您的Wordpress仪表板中激活您的子主题

    2.3 向子主题添加新文件以覆盖父主题的布局,样式和功能

主题与外挂程式

{xunruicms_img_title}

插件和主题都可以为您的Wordpress安装提供有关要加载哪些文件和内容的说明。插件和主题都可以与您网站的数据库进行交互。而且,插件和主题都可以借鉴Wordpress的核心功能,可以将Wordpress网站变成比以前更多的东西。 

考虑到这一点,您是否应该专注于Wordpress开发的主题或插件?我们已经解决了如何设置子主题的主题。还有类似的指南,包括用于创建插件基本框架的样板模板。 

要真正成为一名经验丰富的Wordpress开发人员,您可能需要知道如何使用以及创建主题和插件。为了进行本演练,我们将主要讨论主题,因为它们通常是Wordpress开发的更简单入口点。从理论上讲,插件几乎可以实现主题所能实现的一切,但是插件通常还提供文件和说明,这些文件和说明会更改Wordpress仪表板以及网站前端的功能。 

那么什么时候应该使用主题而非插件呢? 

现代的Wordpress约定规定主题应主要用于更改Wordpress网站的设计。这包括诸如网站外观,哪些帖子加载在哪些页面上以及什么样的交互性之类的元素。 

另一方面,插件主要用于更改或增强Wordpress网站的基础功能。 

造成这种分歧的原因之一是由于Wordpress网站无需插件即可按预期继续运行的能力。当您通过使用插件来更改Wordpress网站的功能时,您可能会发现自己需要停用以意外方式相互交互的插件。无疑,您将在某个时候“破坏”您的网站。发生这种情况时,您只需停用正在使用的插件,就可以完整保留网站的大部分整体体验(在许多情况下)。 

将网站的功能和设计划分到不同的位置也意味着,当其中一个方面中断时,不一定会同时中断这两个方面。插件主要用于实现特定的功能增强,实际上这些功能并不完全“制造或破坏”站点。功能和设计的这种细分使您可以逐步改进站点,并使站点更具弹性。 

下一步

一旦成为Wordpress开发人员并在某种程度上开始运作,就有多种方法可以提高您的技能,获得专业知识并为自己起名。与Wordpress相关的许多开源项目都非常支持愿意帮助构建项目的初学者。许多facebook,linkedin和其他网络团体很乐意回答有关Wordpress开发或从事Wordpress开发业务的问题。 

随着您的前进,您还可能会遇到更多现代的构建和自动化工具。许多主题和插件开发框架都需要自动化任务管理器(例如gulp或node)的基本命令行知识。借助基本的命令行知识,构建工具可以帮助缩减文件大小,从主题的最终发行版中删除不必要的文件,检查安全漏洞,并确保您的代码符合标准。 

尽管许多指南可以提供有关Wordpress开发入门的一些基本概述,但直到您真正开始进入您知道可能需要寻找答案的特定问题的项目时,才可以。在这一点上,您可能会发现自己越来越多地参与堆栈溢出或其他技术论坛站点,并且在此过程中学习(或教导)很多东西。