get_header和get_footer如何工作而不包含任何外部文件?

时间:2018-08-02 13:38:31

标签: php wordpress

我对wordpress存有疑问。我正在学习从零开始开发wordpress主题,但感到有些困惑...

如果要从php的另一个页面调用特定函数,则必须放置“ include(filename)”关键字,但是如果在Wordpress中调用“ get_header”和“ get_footer()”而没有“ include(文件名)”,那么它仍然有效..

为什么要工作.. ??

以下是我的源代码。

<?php

get_header();

?>

<h1>This is my index</h1>
<?php get_footer();?>

1 个答案:

答案 0 :(得分:1)

正如@Alex Howansky提到的那样,核心功能在get_header()get_footer()之类的wordpress中声明。这些功能就像一条链。

方法如下:

  1. get_header()中定义了实际的wp-includes/general-template.php函数
  2. get_header()调用locate_template()方法来查找模板文件
  3. locate_template()调用load_template()方法,
  4. load_template()方法包括require_once()函数来加载模板文件。 load_template()locate_template()方法在wp-includes/template.php
  5. 中定义

希望有帮助! :)