Last Updated on 2021-11-23 by Clay
在眾多網站主題當中,有些可能會提供不同功能的頁面(page),這些頁面可能有著漂亮的介面與神奇的功能,但是當你到網站後台一看:嗯?怎麼整個頁面是空著的呢!
我不能保證其實現原理一定如本篇文章所記錄,但有一種可能的方法就是,它通過撰寫了一些 PHP 函式來修改了特定的頁面。
你可以參考文末我所附的連結來實作一個簡單的小外掛(plugin)來試試看本文所記錄的功能、甚至是直接添加在主題模板的 functions.php 文件中。
如何使用 PHP 修改頁面內容
其實現原理很單純,那就是利用 WordPress 所提供的鉤子(hook)來完成。我們在頁面的內容中判斷頁面的標題,假設頁面標題跟我們指定的頁面標題相同(在這裡是 Test Page),那們我們就可以修改 $content
中的內容。
// Try to edit the specific page
add_filter( 'the_content', 'change page_content' );
function change_page_content( $content ) {
if ( get_the_title() == 'Test Page' ) {
$content = '<p> Hello! This is the page that you can change the content</p>';
}
return $content;
}
我們可以看到在後台,這篇文章是一副空白的樣子。
然而一但到網站上去看,馬上便會發現多出了我們定義的文字。
除了確認標題之外,也存在著確認文章 ID、文章 slug 等等不同的方式,大家可以盡情地嘗試看看。
References
- https://wordpress.stackexchange.com/questions/112858/output-the-title-inside-the-content
- https://wordpress.stackexchange.com/questions/12684/what-params-are-available-with-the-content-filter