《PHP教程:解析WordPress中的post_class與get_post_class函數》要點:
本文介紹了PHP教程:解析WordPress中的post_class與get_post_class函數,希望對您有用。如果有疑問,可以聯系我們。
PHP應用post_class()
post_class 是 WordPress 內置的一個用于顯示文章 class 名稱的函數,該函數通常會為每一篇文章生成獨一無二的 clss 值,如果你需要制作你自己的主題,而且還需要一點個性的話,那你最好駐足一下,使用該函數并配合靈活的 css 代碼,我們可以制作出個性化十足的 WordPress 博客.
PHP應用post_class 函數描述
該函數通常會為每一篇文章生成獨一無二的 clss 值,可以很方便使用于文章所在的節點中.
PHP應用函數使用
向其他的諸如 header_image、wp_title這樣的 WordPress 標簽函數一樣,不帶 get 的函數通常是會直接顯示出來而不返回任何值.
PHP應用
<post id="post-<?php the_ID(); ?>" <?php post_class(); ?> > <?php the_content ;?> </post>
PHP應用是的,也許你已經注意到了,使用 post_class 函數時我們甚至不需要這樣去寫 clss=“post_class()”;.
PHP應用實例結果
不賣關子,結果如下
PHP應用
<post id="post-888" class="post-888 post type-post status-publish format-standard hentry category-2 tag-wordpress" > 文章內容 </post>
PHP應用以使用為主的函數講完了,
下面照舊給出函數源代碼:
想要了解更多關于該函數,以及get_post_class函數請關注后期文章.
PHP應用
/**
* Display the classes for the post div.
*
* @since 2.7.0
*
* @param string|array $class One or more classes to add to the class list.
* @param int $post_id An optional post ID.
*/
function post_class( $class = '', $post_id = null ) {
// Separates classes with a single space, collates classes for post DIV
echo 'class="' . join( ' ', get_post_class( $class, $post_id ) ) . '"';
}
PHP應用get_post_class 詳解
get_post_class 是 post_class 函數的基本實現,在 WordPress 中其他一些帶 get 的函數一樣,該函數將會有一個返回值,而該返回值將是一個包含當前文章基本信息的數組,get_post_class 函數主要用來給每篇文章生成獨一無為的 class 值而被封裝出來的.
PHP應用如果你是一個要求不高的人的話,那么 post_class 這個函數其實已經足夠你折騰了.如果你是一個有著精神潔癖的人,不想自己的 WordPress 網站有太多無用代碼的話,那你可以繼續往下看.
PHP應用get_post_class函數詳解
該函數主要用來生成一個當前文章相關信息的數組,該數組所含信息我們往往用來作為文章層中的 class 值.
就像我上面提到的 post_class 函數,就是利用了本函數生成的 class 值.
并且該函數支持插入你自己的 class 值,一合并到返回數組中.
以上是我本人的理解,當然你也可以看一下官方的手冊.
PHP應用比較費解的手冊內容如下:
WordPress Themes have a template tag for the post HMTL tag which will help theme authors to style more effectively with CSS. The Template Tag is called get_post_class. This function returns different post container classes which can be added, typically, in the index.php, single.php, and other template files featuring post content, typically in the HTML
PHP應用tag.
函數用法
PHP應用
<?php get_post_class($class, $post_id); ?>
PHP應用如果在循環中,并且不需要插入自定義class值的話,該函數可不接受任何參數.
PHP應用函數參數
$class:自定義 class 值,可以使字符串也可以死數組.
PHP應用$post_id:文章ID
PHP應用使用實例
PHP應用
$MyClass = get_post_class();
var_dump($MyClass);
PHP應用輸出結果:
PHP應用
array(9) {
[0]=>
string(8) "post-249"
[1]=>
string(4) "post"
[2]=>
string(9) "type-post"
[3]=>
string(14) "status-publish"
[4]=>
string(15) "format-standard"
[5]=>
string(6) "hentry"
[6]=>
string(18) "category-catcatcat"
[7]=>
string(8) "tag-tag1"
[8]=>
string(8) "tag-tag2"
}
PHP應用進階實例
PHP應用
$MyClass = get_post_class('index-post',249);
//或
$MyClass = get_post_class(array( 'index-post'),249);
var_dump($MyClass);
PHP應用輸出結果:
PHP應用
array(10) {
[0]=>
string(8) "post-249"
[1]=>
string(4) "post"
[2]=>
string(9) "type-post"
[3]=>
string(14) "status-publish"
[4]=>
string(15) "format-standard"
[5]=>
string(6) "hentry"
[6]=>
string(18) "category-catcatcat"
[7]=>
string(8) "tag-tag1"
[8]=>
string(8) "tag-tag2"
[9]=>
string(10) "index-post"
}
PHP應用總結
根據函數的源代碼,我們可以看出,本函數 class 值羅列的順序為:
歡迎參與《PHP教程:解析WordPress中的post_class與get_post_class函數》討論,分享您的想法,維易PHP學院為您提供專業教程。
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/7918.html