WordPress循环解释了


VPS1352主机测评网(www.vps1352.com)
本文链接:https://www.vps1352.com/11838.html
wordpress循环很大.很大.这是至关重要的.没有它,您的WordPress网站无法正常工作.
通过这个,我并不意味着它很大.事实上,它应该尽可能瘦,紧张.但这是制作WordPress,WordPress的东西的主要部分.如果没有它,您无法查询数据库并显示您的内容,无论是您的博客存档,您的"关于"页面或最新帖子.
没有WordPress循环的没有工作.
所以,现在我们建立了循环的重要性,你可能想知道它是否在之前没有遇到过的东西.
在这篇文章中,我会回答这个问题.我会向您展示循环是什么,它是如何运作的,它应该去哪里.我还给你一些提示来定制WordPress循环并为您制作它.
让我们首先识别WordPress循环和它的位置.
继续读取,或使用以下链接跳转:
- 是什么WordPress循环,我发现它在哪里?
- wordpress循环在哪里?在模板文件中找到它
- 解除了WordPress循环
- 自定义WordPress循环
wordpress循环是什么,我在哪里找到它?
WordPress循环是访问数据库的几行(或有时多)代码,获取任何相关内容,然后显示它.代码将包括用于访问数据库的PHP以及PHP和HTML的混合,用于输出找到的内容.
它被称为循环的原因是因为它循环-它重复它,直到没有别的东西要显示.查看静态页面时,这意味着它只是循环一次,但在类别存档或主要博客页面上,它将继续循环和输出内容,直到没有任何东西可以显示.
WordPress循环提取和输出取决于几件事:
- 正在查看什么样的内容
- 您对WordPress循环的任何自定义(更多其中稍后)
- 您用于从数据库中显示项目的功能(例如帖子标题,内容和任何元数据)
- 您将内容包装的HTML.
您将在主题中找到每个模板文件中的WordPress循环.在这篇文章中,我们将检查当前默认主题的WordPress循环,二十六个.如果您还没有访问该主题,请在您喜欢的代码编辑器中下载并打开它.当我们通过这篇文章工作时,我将参考不同的文件和代码中的代码块,并且如果您可以看看和遵循.

WordPress循环在哪里?在模板文件中找到它
您将在每个主题模板文件中找到WordPress循环,或者您可能会找到从模板部分中将其拉到的函数.
模板部分是包含在整个主题中重复使用的代码的文件,其中WordPress循环是一个例子.因此,而不是在每个单个模板文件中重复循环,而是每个文件都会在模板部分中提取并运行相同的代码.
您可以在主题中使用多个包含的文件,例如,您可能只想只需要所有存档页面的WordPress循环的一个版本,另一个版本为所有单个页面.
让我们看看二十六个主题以了解这一切.
这是主题的文件结构:
有一堆模板文件:
- 404.php
- archive.php
- 页脚php
- image.php
- index.php
- page.php
- search.php
- single.php
主题在主文件夹中也有一些模板部分:
- comments.php
- 页脚php
- header.php
- searchform.php
- 侧边栏-内容-底部.php
- sidebar.php
,它在模板-零件文件夹中有更多的模板零件.这些中的每一个都将在主题中调用其他地方.其他文件(如 clusers.php 和 style.css 有自己的特定角色.
让我们看看WordPress循环的一个例子.首先,打开 page.php 文件.
这是它的代码,全额:
那么这部分是循环?
嗯.在寻找循环时,有一件事需要注意,这是这条行:
这是启动WordPress循环的原因.此行关闭循环:
因此这意味着在此 page.php 模板文件中的循环正在使用这些代码行运行:
但这不包括显示WordPress循环内容的模板标记和HTML.相反,这都包含在 Content-Page.php 文件中.它用这一行做到了:
函数获取模板部分的内容并在模板文件中的此时运行它们,就好像代码被编码为此文件一样.
在我们继续详细研究该模板部分的内容之前,需要一些时间才能在主题中打开一些其他模板文件.每个人都引用相关模板部分,有一些例外:
- 404.php 不包括WordPress循环,因为如果用户在404页上落在404页上,则不会有任何数据来获取和输出.
- archive.php index.php 使用帖格格式分类来获取相关帖格格式的模板部分.这意味着您可以为每种帖子格式编写模板部分,使用不同格式的帖子所需的代码.如果这些文件不存在,它将返回到 content.php .
- image.php 没有提取模板部分-而不是在模板文件中编码循环.
- page.php 获取 content-page.php 模板部分.
- search.php 获取 content-search.php 模板部分.
- single.php 获取 content-single.php 模板部分.
解剖循环分离
让我们继续仔细看看WordPress循环.正如我们已经使用 Page.php ,让我们检查 content-page.php 文件.在代码编辑器中打开它.
注意:如果您正在编写主题,则可以选择将循环的模板零件直接用于模板文件.使用一个术语,板份将使您的主题更有效,但您可能会发现您使用的主题只是将循环编码为模板文件.两者都可以工作.
这是 content-page.php 的代码:
让我们一段时间逐步这一个.
打开元素并显示标题
首先,文件打开一个article
元素,并在header
元素中输出post标题:
article
元素具有使用the_ID()
模板标记的ID来获取帖子的ID,以及使用post_class()
模板标记定义的类.这使其包括帖子的ID,帖子类型,分类和更多的类.
然后打开
a元素,其包括使用the_title()
模板标签的柱标题.这具有前后标记的标记的参数-所以它包含在entry-title
类中的h1
元素中.
然后关闭header
元素.
显示元数据
下一步是显示任何元数据.在这个主题中,没有大部分时间-只是帖子缩略图.使用twentysixteen_post_thumbnail()
函数来显示,这是特定于此主题的.如果要了解此功能的工作原理,请查看主题的函数.php 文件-在当前版本中,此函数由第398行定义.
在某些主题中,此处将在此处输出更多元数据,例如任何自定义字段,作者信息等.如果要将其添加到您自己的主题,请查看我们的教程,即使用元数据.
输出帖子内容
现在WordPress循环将输出帖子的内容,并使用这些行:
让我们看看这是什么.
- 首先,它与入口内容类打开div.
- 它关闭
entry-content
div.
然后它使用the_content()
模板标记来获取数据库的内容并显示它.
它使用wp_link_pages()
模板标记来显示前期和稍后的帖子的链接.在这个模板中,这不会做任何事情,因为页面并没有被吝啬,但在一个帖子中它将显示到上一个和下一个帖子的链接.
在某些模板文件或模板部分中,内容不会输出,但摘录将是.如果您在 archive.php 文件中有一个循环,您可能会选择使用the_excerpt()
而不是the_content()
来输出摘录.
完成物品
二十十六个主题然后有一个链接,带有相关用户角色的登录用户可以单击以编辑帖子:
这将使用具有几个参数的函数来定义恰好输出的参数.
在一些主题中,您会发现此处输出更多元数据.
最后,包含一切的article
元素已关闭.
自定义WordPress循环
所以这是标准WordPress循环.这将自动从数据库中获取适当的内容,具体取决于正在查看的页面和输出它.它非常有效,因为相同的代码用于显示大量不同类型的内容,从帖子到页面和其他帖子类型,以及帖子,类别,作者和更多的档案.
如果您不希望WordPress循环以标准方式为每种类型的内容工作,则可以修改它.或者如果要在页面上输出完全不同的循环(或额外的循环),则可以执行此操作.让我们快速看看你如何做到这一点.
修改主环
在您考虑编写自己的循环之前,请尝试修改主循环.这更有效率,因为您仍然使用每页上运行的主要查询.
要执行此操作,您将编写函数,即附加到pre_get_posts
钩子.在此功能中,您可以使用条件标记来定义查询后的修改以及一些代码来告诉WordPress的准确如何修改它.
让我们来看看一个例子.主博客页仅包含 post 帖子类型的帖子:它不会显示您的任何自定义帖子类型.如果要修改此操作,请在主页上显示自定义帖子类型,您可以.
让我们说你的自定义帖子类型被注册为 MyPostType .这是您将添加到主题的函数的功能.Php 文件,将这些添加到主博客页面:
此检查我们在主博客页面上使用is_home()
,我们不在带有!is_admin()
的admin屏幕中,并且主查询运行$query->is_main_query()
.如果所有这些都是这种情况,那么它定义了使用$query->set('post_type', array( 'post', 'myposttype' ) )
在循环中输出的两个帖子类型.
写一个新的循环
如果要在主循环中未获取的页面上显示内容,或者您希望在一页上运行多个循环,那么您可以编写自己的新查询和循环以执行此操作.
这样做有三种方法:
- 使用
get_posts()
功能来获取和输出帖子,具有您自己的帖子数量的参数,分类术语或您想要专注的其他任何东西. - 使用
get_pages()
函数对页面执行相同的页面. - 使用WP_Query类来获取和输出绝对是您想要的任何东西.这是一个非常灵活且有用的类,您可以在您的主题中的任何地方使用.
有关使用以下每个的指导,请参阅我们编写自定义查询的指南.
了解WordPress循环将帮助您创建更好的WordPress主题
希望,你现在已经更好地了解WordPress循环以及它的工作原理.
知道WordPress循环由哪些内容由您的网站上使用的主题中的代码更具更多意义.如果您要编写自己的主题,这也是必不可少的:了解WordPress循环并写出你自己的循环,它比它从其他地方复制一个.这将使您的主题确切地完成您需要的内容,而不是没有浪费的代码,提高效率.
这是任何主题的重要部分,现在您了解它,这将大大提高您的主题建设技能.