問題描述
當您激活 wordpress 主題時,找出要更改文件的文件總是很麻煩。任何想法如何簡化事情?
但另一方面,考慮到 get_template_part 功能,這可能是不可能的。你説什麼?
最佳解決方案
掛接到 template_include 上,設置一個全局註釋由主題設置的模板,然後將該值讀回到頁腳或標題中,以查看為給定視圖調用哪個模板。
我在 Get name of the current template file 之前談過這個過濾器鈎子,但是去抓住一個 copy of that code,並將它放在主題的 functions.php 文件中。
然後打開主題的 header.php 或 footer.php(或任何你喜歡的地方),並使用類似以下內容打印出當前模板。
<div><strong>Current template:</strong> <?php get_current_template( true ); ?></div>
如果您想在生產站點上使用此功能,並將該信息與 non-administrator 用户保持一致,請添加一些條件邏輯。
<?php
// If the current user can manage options(ie. an admin)
if( current_user_can( 'manage_options' ) )
// Print the saved global
printf( '<div><strong>Current template:</strong> %s</div>', get_current_template() );
?>
現在,您可以跟蹤使用什麼模板的視圖,同時將該信息與訪問者保持一致。
次佳解決方案
那麼,如果你想要的是檢查哪個模板文件被用來生成當前的頁面,那麼你不需要用你的手弄髒代碼;)
有這個方便的插件叫做 Debug Bar 。在許多情況下,這是一個很好的幫手,包括你的幫助。你一定要檢查一下 – 對於我和許多其他人來説,它是一個 must-have 伴侶,用於任何 WP 開發。
我附上了一個可以讓你愛上的屏幕截圖
要使調試欄工作,您需要啓用 wp_debug 和 wp_savequeries 選項。默認情況下,這些選項處於禁用狀態。
在進行任何更改之前,請注意以下幾點:
- 不要在生產環境中做,除非網站不能滿足很多流量。
- 完成調試後,請確保禁用網站的選項 (特別是 wp_savequeries 選項,因為它會影響性能) 。
進行更改:
- 通過 ftp 客户端打開
wp_config.php文件。 - 搜索
wp_debug選項。編輯到define( 'WP_DEBUG', true );。如果該行不存在,請將其添加到該文件。 - 同樣,編輯或添加行
define( 'SAVEQUERIES', true );到文件。 - 保存。你準備好調試了
更多信息:Codex
第三種解決方案
在每個相關模板文件中的 get_header 行之後添加以下代碼:
<!-- <?php echo basename( __FILE__ ); ?> -->
在您的瀏覽器> 查看源代碼,模板名稱將作為您的 HTML 代碼中的註釋顯示。
<!-- page.php -->
第四種方案
我使用這個方便的功能,只顯示超級管理員的當前模板:
function show_template() {
if( is_super_admin() ){
global $template;
print_r($template);
}
}
add_action('wp_footer', 'show_template');
希望有幫助。 🙂
第五種方案
我發現的最簡單的方法是將 WordPress 功能包含在 body 標籤上。它將根據您正在查看的頁面 (前面的頁面,頁面的頁面等) 添加幾個類。
在這裏查看:http://codex.wordpress.org/Function_Reference/body_class
此外,它有助於在這些頁面上使用 CSS 定位元素。
瞭解 David R 所提到的模板層次結構 (http://codex.wordpress.org/Template_Hierarchy) 也是一個好主意。
第六種方案
還有另外一個專門用於此目的的 bare-bones 插件。我傾向於安裝調試欄,因為這些其他功能看起來很有用,但是這一個更為基礎,特別是為此目的:http://wordpress.org/extend/plugins/what-the-file/
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。
