wordpress模板调用函数get_template_part()


【函数介绍】

wordpress在3.0之后增加了调用指定模板到当前模板的函数get_template_part(),这样我们就可以很方便的将模板的公工部分提取出来共用,从而避免大量编写重复的代码,并且对于子主题,通过get_template_part()函数可以很容易的替换父主题的代码段。
包含了的模板文件由两部分组成,{slug}模板的短标记,{name}主模板的名称。
模板命名规则:”{slug}-{name}.php”.

【函数用法】

  1. <?php get_template_part( $slug, $name ); ?>

【参数说明】

$slug
(string) (必须) 模板别名.
Default: None
$name
(string) (可选) wordpress专用模板名称.
Default: None

【实例应用】

  1. <div id="container">
  2. <div id="content" role="main">
  3.  
  4. <?php
  5. /*
  6. * 调用loop-single.php模板文件
  7. */
  8. get_template_part( 'loop', 'single' );
  9. ?>
  10.  
  11. </div><!-- #content -->
  12. </div><!-- #container -->

假设主题文件夹wp-content/themes下父主题是twentyten子主题twentytenchild,那么PHP 的 require() 函数加载模板的顺序如下:

  1. wp-content/themes/twentytenchild/loop-index.php
  2. wp-content/themes/twentyten/loop-index.php
  3. wp-content/themes/twentytenchild/loop.php
  4. wp-content/themes/twentyten/loop.php

如果你将公用模板放置于某个目录下,比如调用主题partials文件夹下content-page.php,代码如下:

  1. <?php get_template_part( 'partials/content', 'page' ); ?>

导航条的添加:

  1. <?php get_template_part( 'nav' ); // Navigation bar (nav.php) ?>
  2. <?php get_template_part( 'nav', '2' ); // Navigation bar #2 (nav-2.php) ?>
  3. <?php get_template_part( 'nav', 'single' ); // Navigation bar to use in single pages (nav-single.php) ?>

【源文件】

get_template_part() 位于 wp-includes/general-template.php.
原文