亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > PHP > 正文

深入解析WordPress中加載模板的get_template_part函數

2024-05-04 23:42:14
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了WordPress中加載模板的get_template_part函數,其中重點講解了其函數鉤子的使用,需要的朋友可以參考下
 

最近研究官方主題 Twenty Eleven ,有一些東西網上現成的中文資料不好找,在博客里記載下來,算是分享,也算是備忘,wordpress 3.0 以后就開始便有了get_template_part() 這個函數 ,應該是為文章呈現形式提供更為多樣化的選擇而給出的新功能。

Twenty Eleven 中 實例如下:

Twenty Eleven index.php 文件
 行:21

<?php if ( have_posts() ) : ?> <?php twentyeleven_content_nav( 'nav-above' ); ?> <?php /* Start the Loop 在循環中使用以調用不同類型的文章 */ ?> <?php while ( have_posts() ) : the_post(); ?> <?php get_template_part( 'content', get_post_format() ); ?> <?php endwhile; ?>............................<?php endif; ?>

描述:
加載一個制定的模板到另一個模板里面(不同于包含header,sidebar,footer).
使得一個主題使用子模板來實現代碼段重用變得簡單

用于在模板中包含指定的模板文件,只需用指定參數slug和name就可以包含文件{slug}-{name}.php,最重要的功能是如果沒有這個文件就包含沒有{name}的.php文件文件

使用方法:

<?php get_template_part( $slug, $name ) ?>

參數:

  • $slug (必須) 通用的模板名
  • $name (可選) 指定的模板名

示例:

使用 loop.php 在子主題里面

假設主題文件夾wp-content/themes下父主題是twentyten子主題twentytenchild,那么下面的代碼:

<?php get_template_part( 'loop', 'index' ); ?>

php 的require()函數將按下面優先級包含文件

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

導航(這個例子很爛,但卻是另一種使用思路)
使用通用的nav.php文件給主題添加導航條:

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

get_template_part() 的鉤子詳解
因為在官方主題(Twenty Eleven)中 get_template_part() 函數被大量使用,所以就目前來看,該函數應該算是比較熱門的一個函數了,之前有寫過一篇文章講述該函數的具體使用方法,在這里也就不便再贅述,本文主要針對該函數的 add_action 中的 hook $tag 值進行探討,因為,WP hook 中林林總總有那么些函數在$tag 值中比較讓人費解。

與普通hook的區別
普通的hook的$tag 是一個固定值,而 get_template_part() 確是一個可變值,好吧先不說,wp這么做給我們實現一個簡單功能帶來多少麻煩,但如此設置確實給多樣化的主題實現帶來了不少方便之處。
實現這一原理的源代碼如下,截取自 WordPress 源程序。

 function get_template_part( $slug, $name = null ) {//$tag = "get_template_part_{$slug}" //也就是,get_template_part_+你當時設置的$slug值 do_action( "get_template_part_{$slug}", $slug, $name ); $templates = array(); if ( isset($name) )  $templates[] = "{$slug}-{$name}.php";  $templates[] = "{$slug}.php";  locate_template($templates, true, false);}

實例
像上面那樣說,可能也許基本上有點看不明白,好吧給點實例

 

//復習一下get_template_part($slug, $name)的用法,//如果你在主題里這樣get_template_part( 'index' , 'photo');//那么 WP 會去找主題根目錄下 index-photo.php 文件 //那么我們想掛一個函數的話就得像如下function addFunction ($slug, $name){echo $slug;}add_action("get_template_part_index","addFunction",10,2);

get_template_part() 函數詳解備忘



注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲国产精品高清久久久| 午夜精品久久久久久99热| 中文字幕欧美日韩va免费视频| 欧美激情一区二区三区久久久| 26uuu久久噜噜噜噜| 日韩欧美999| 亚洲成年人在线| 国产成人精品久久久| 日韩av三级在线观看| 国内外成人免费激情在线视频网站| 亚洲18私人小影院| 精品女厕一区二区三区| 欧美激情综合亚洲一二区| 日韩成人小视频| 亚洲毛片在线免费观看| 国产999在线观看| 欧美一级黑人aaaaaaa做受| 欧美精品在线视频观看| 亚州精品天堂中文字幕| 欧美裸体xxxx极品少妇| 97国产在线观看| 国产成人精品电影久久久| 丝袜美腿精品国产二区| 亚洲va国产va天堂va久久| 亚洲japanese制服美女| 亚洲精品www久久久久久广东| 欧美色欧美亚洲高清在线视频| 国产免费成人av| 亚洲国产日韩欧美在线动漫| 久久亚洲精品中文字幕冲田杏梨| 欧美最猛性xxxxx免费| 欧美国产日韩中文字幕在线| 成人国产亚洲精品a区天堂华泰| 国产经典一区二区| 成人欧美在线视频| 精品久久久久久久久久久久| 1769国内精品视频在线播放| 91色在线视频| 91精品视频免费| 欧美激情视频在线观看| 亚洲日韩中文字幕| 一本大道久久加勒比香蕉| 国产精品福利在线观看网址| 最新69国产成人精品视频免费| 精品少妇v888av| 国产精品日韩在线一区| 欧美黄色片视频| 97视频人免费观看| 亚洲无亚洲人成网站77777| 97超碰蝌蚪网人人做人人爽| 精品亚洲一区二区三区四区五区| 91av视频在线免费观看| 久久色在线播放| 国产国语videosex另类| 亚洲精品一区二区三区不| 成人亲热视频网站| 亚洲精品白浆高清久久久久久| 欧美高清视频一区二区| 91久久精品久久国产性色也91| 国产99久久久欧美黑人| 2020国产精品视频| 久久精品国产亚洲精品| 久久九九有精品国产23| 亚洲性视频网址| 国产精品xxx视频| 91精品国产乱码久久久久久蜜臀| 亚洲欧洲成视频免费观看| 日韩激情片免费| 97精品伊人久久久大香线蕉| 国产精品美女视频网站| 欧美激情亚洲精品| 国产在线98福利播放视频| 欧美成人激情图片网| 欧美在线观看网址综合| 亚洲美女性生活视频| 亚洲欧美综合图区| 在线一区二区日韩| 超碰日本道色综合久久综合| 国产精品中文久久久久久久| 久热99视频在线观看| 欧美日韩精品中文字幕| 成人在线中文字幕| 国产精品日韩在线观看| 久久精品国产96久久久香蕉| 啊v视频在线一区二区三区| 久久91精品国产| 欧美一区二区大胆人体摄影专业网站| 国产精品一区二区三区成人| 8090理伦午夜在线电影| 国产精品一香蕉国产线看观看| 国产精欧美一区二区三区| 亚洲国产精品人人爽夜夜爽| 国产精品羞羞答答| 国产精品视频最多的网站| 中文字幕视频一区二区在线有码| 日韩精品在线视频美女| 欧美午夜影院在线视频| www高清在线视频日韩欧美| 日本免费久久高清视频| 91亚洲国产成人久久精品网站| 亚洲欧洲av一区二区| 在线观看精品自拍私拍| 精品美女久久久久久免费| 麻豆国产精品va在线观看不卡| 国内精品一区二区三区四区| 97欧美精品一区二区三区| 欧美一级片免费在线| 国产午夜精品一区理论片飘花| 日韩欧美中文第一页| 国产成人+综合亚洲+天堂| 欧美精品久久久久久久| 欧美性极品xxxx做受| 成人福利网站在线观看| 韩国日本不卡在线| 亚洲嫩模很污视频| 日韩电影大全免费观看2023年上| 欧美亚州一区二区三区| 久久久伊人日本| 91av在线国产| 不卡在线观看电视剧完整版| 亚洲一区av在线播放| 91高清视频在线免费观看| 国产精品男人的天堂| 成人黄在线观看| 欧美视频在线免费看| 成人精品视频99在线观看免费| 日韩中文在线中文网在线观看| 91久久久久久| 69影院欧美专区视频| 国产精品高潮呻吟视频| 欧美一区二区三区免费视| 97久久久免费福利网址| 庆余年2免费日韩剧观看大牛| 日韩暖暖在线视频| 在线视频精品一| 国产精品国内视频| 亚洲欧美日韩直播| 日本在线观看天堂男亚洲| 亚洲人成自拍网站| 最近2019中文字幕一页二页| 午夜精品久久久久久久久久久久| 97国产精品久久| 欧美丝袜一区二区三区| 欧美洲成人男女午夜视频| 日本伊人精品一区二区三区介绍| 欧美日韩国产第一页| 国产极品jizzhd欧美| 日韩免费在线观看视频| 国产成人午夜视频网址| 欧美电影免费观看高清| 欧美大荫蒂xxx| 久久精品久久久久| 国产成人精品久久二区二区| 高清日韩电视剧大全免费播放在线观看| 亚洲成人精品视频在线观看| 久久精品男人天堂| 亚洲国产日韩欧美在线99| 91在线免费看网站| 国内外成人免费激情在线视频网站| 亚洲美女视频网| 狠狠躁18三区二区一区| 欧美日韩第一视频| 日本欧美黄网站| 国产成人精品在线视频|