欧美精品一区二区不卡_麻豆免费在线_国产精品推荐精品_国产传媒一区_你懂的亚洲视频_一本色道久久综合亚洲精品小说_亚洲综合图区_国产一区二区久久久_色婷婷国产精品_а√天堂中文资源在线bt

WordPress分類與標簽等存檔頁實現置頂的方法

本文實例講述了WordPress分類與標簽等存檔頁實現置頂的方法。具體分析如下:

在wordpress中默認能置頂文章就是只有首頁了,如果我們希望分類/標簽等存檔頁也能置頂文章我們需要二次開發。

現在參考wp-includes/query.php中首頁置頂的代碼,稍微修改一下,可以讓分類頁、標簽頁、作者頁和日期頁等存檔頁面也能像首頁一樣在頂部顯示其范圍內的置頂文章,把下面的代碼放到當前主題下的functions.php中就可以了。

add_filter('the_posts', 'putStickyOnTop' );
function putStickyOnTop( $posts ) {
if(is_home() || !is_main_query() || !is_archive())
return $posts;

 

global $wp_query;
$sticky_posts = get_option('sticky_posts');

if ( $wp_query->query_vars['paged'] <= 1 && is_array($sticky_posts) && !emptyempty($sticky_posts) && !get_query_var('ignore_sticky_posts') ) { $stickies1 = get_posts( array( 'post__in' => $sticky_posts ) );
foreach ( $stickies1 as $sticky_post1 ) {
// 判斷當前是否分類頁
if($wp_query->is_category == 1 && !has_category($wp_query->query_vars['cat'], $sticky_post1->ID)) {
// 去除不屬于本分類的文章
$offset1 = array_search($sticky_post1->ID, $sticky_posts);
unset( $sticky_posts[$offset1] );
}
if($wp_query->is_tag == 1 && has_tag($wp_query->query_vars['tag'], $sticky_post1->ID)) {
// 去除不屬于本標簽的文章
$offset1 = array_search($sticky_post1->ID, $sticky_posts);
unset( $sticky_posts[$offset1] );
}
if($wp_query->is_year == 1 && date_i18n('Y', strtotime($sticky_post1->post_date))!=$wp_query->query['m']) {
// 去除不屬于本年份的文章
$offset1 = array_search($sticky_post1->ID, $sticky_posts);
unset( $sticky_posts[$offset1] );
}
if($wp_query->is_month == 1 && date_i18n('Ym', strtotime($sticky_post1->post_date))!=$wp_query->query['m']) {
// 去除不屬于本月份的文章
$offset1 = array_search($sticky_post1->ID, $sticky_posts);
unset( $sticky_posts[$offset1] );
}
if($wp_query->is_day == 1 && date_i18n('Ymd', strtotime($sticky_post1->post_date))!=$wp_query->query['m']) {
// 去除不屬于本日期的文章
$offset1 = array_search($sticky_post1->ID, $sticky_posts);
unset( $sticky_posts[$offset1] );
}
if($wp_query->is_author == 1 && $sticky_post1->post_author != $wp_query->query_vars['author']) {
// 去除不屬于本作者的文章
$offset1 = array_search($sticky_post1->ID, $sticky_posts);
unset( $sticky_posts[$offset1] );
}
}

$num_posts = count($posts);
$sticky_offset = 0;
// Loop over posts and relocate stickies to the front.
for ( $i = 0; $i < $num_posts; $i++ ) {
if ( in_array($posts[$i]->ID, $sticky_posts) ) {
$sticky_post = $posts[$i];
// Remove sticky from current position
array_splice($posts, $i, 1);
// Move to front, after other stickies
array_splice($posts, $sticky_offset, 0, array($sticky_post));
// Increment the sticky offset. The next sticky will be placed at this offset.
$sticky_offset++;
// Remove post from sticky posts array
$offset = array_search($sticky_post->ID, $sticky_posts);
unset( $sticky_posts[$offset] );
}
}
// If any posts have been excluded specifically, Ignore those that are sticky.
if ( !emptyempty($sticky_posts) && !emptyempty($wp_query->query_vars['post__not_in'] ) )
$sticky_posts = array_diff($sticky_posts, $wp_query->query_vars['post__not_in']);
// Fetch sticky posts that weren't in the query results
if ( !emptyempty($sticky_posts) ) {
$stickies = get_posts( array(
'post__in' => $sticky_posts,
'post_type' => $wp_query->query_vars['post_type'],
'post_status' => 'publish',
'nopaging' => true
) );
foreach ( $stickies as $sticky_post ) {
array_splice( $posts, $sticky_offset, 0, array( $sticky_post ) );
$sticky_offset++;
}
}
}

return $posts;
}

代碼說明:

1、如果你想讓存檔頁也都顯示全部置頂文章,那么就刪掉11-43行的代碼;

2、如果不想在某分類頁顯示置頂文章,將第 3 行的

if(
//改成:
// abc是分類名稱
if ( is_category( 'abc' ) ||

3、如果不想某標簽頁顯示置頂文章,將第 3 行的代碼

if(
//改成:
// abc是標簽名稱
if ( is_tag( 'abc' ) ||

4、如果不想某作者頁顯示置頂文章,將第 3 行的

if(
//改成:
// abc是作者昵稱
if ( is_author( 'abc' ) ||

5、以上代碼只對主循環有效,如果你在存檔頁使用WP_Query或query_posts來獲取文章列表,又像讓這些列表頂部顯示置頂文章,可以把第3行代碼中的以下代碼刪掉(注意:可能會導致文章顯示數量跟你設置的不一樣):

代碼如下:

!is_main_query()

置頂樣式:如果你想給置頂文章添加樣式,將以下代碼添加到functions.php中,會給置頂文章添加一個名為 sticky 的class,具體的css代碼,再自行自定義:

add_filter('post_class', 'addStickyClass' ,10,3 );
function addStickyClass( $classes, $class, $post_id ){
if( is_sticky() && is_category() && !isset( $classes['sticky'] ) ){
$classes[] = 'sticky';
}
return $classes;
}

希望本文所述對大家的WordPress建站有所幫助。

欧美精品一区二区不卡_麻豆免费在线_国产精品推荐精品_国产传媒一区_你懂的亚洲视频_一本色道久久综合亚洲精品小说_亚洲综合图区_国产一区二区久久久_色婷婷国产精品_а√天堂中文资源在线bt
国产午夜精品福利| 亚洲成av人片在线| 无吗不卡中文字幕| 国产精品一二三在| 亚洲一区二区在线免费看| 欧美96一区二区免费视频| 99精品欧美一区二区三区小说| 欧美一区二区视频在线| 欧美精品777| 中文字幕一区二区三区不卡在线| 奇米影视一区二区三区| 91影院在线观看| 亚洲人一区二区| 久久综合av免费| 偷拍与自拍一区| 99国产精品久久久久久久久久| 神马影院我不卡午夜| 精品国产伦一区二区三区观看体验 | 国产精品swag| 91福利视频网站| 中国色在线观看另类| 蜜臂av日日欢夜夜爽一区| 91香蕉视频在线下载| 一本久久精品一区二区| 国产三区在线成人av| 裸体在线国模精品偷拍| 精品欧美一区二区精品久久| 欧美久久久久久久久久 | 国产精品美女黄网| 欧美三片在线视频观看| 亚洲女人的天堂| 高清日韩电视剧大全免费| 日韩欧美一区二区三区四区| 精品久久久久久最新网址| 天使萌一区二区三区免费观看| 91美女片黄在线观看| 欧美自拍偷拍一区| 最新日韩在线视频| 风间由美一区二区三区在线观看| 亚洲国产精品一区在线观看不卡| 亚洲精品一线二线三线无人区| 天堂久久久久va久久久久| 99精品国产高清一区二区| 欧美日韩国产一二三| 亚洲激情欧美激情| 91在线你懂得| 91天堂素人约啪| 91福利小视频| 亚洲美女视频在线观看| 成人激情文学综合网| 在线视频欧美区| 亚洲精品视频观看| 91青青草免费在线看| 欧美人成免费网站| 午夜视频久久久久久| 国产欧美日韩伦理| 精品免费日韩av| 极品美女销魂一区二区三区| 午夜免费电影一区在线观看| 国产欧美一区在线| 大陆成人av片| 欧美性猛片aaaaaaa做受| 一卡二卡欧美日韩| 国产一区二区自拍| www国产成人| 国产成人在线视频网站| 色美美综合视频| 亚洲自拍偷拍综合| 激情视频一区二区| 国产日韩欧美亚洲| 成人黄色在线看| 欧美精品日韩精品| 免费观看久久久4p| 亚洲综合视频一区| 一区二区免费看| 久久精品国产理论片免费| 久久精品欧美一区二区三区麻豆| 国产成人亚洲综合色影视| 欧洲av在线精品| 婷婷丁香激情综合| 一区二区视频在线看| 久久99精品久久久久久青青日本| 国产精品一二三四五| 色综合视频一区二区三区高清| 亚洲欧美日韩小说| 国产精品区免费视频| 久久精品一级爱片| 99久久国产综合精品麻豆| 欧美一区二区视频在线观看 | 久久国产一区| 国产精品二三区| 成人免费看片网址| 日本不卡高清视频一区| √…a在线天堂一区| 国产传媒一区二区三区| 国产女人aaa级久久久级| 91同城在线观看| 久久综合国产精品| av电影一区二区| 久久一区二区三区四区| 成人av网站在线| 欧美成人a在线| 成人av在线播放网站| 欧美成人艳星乳罩| 成人av电影在线| 欧美精品一区二区久久久 | 51精品国自产在线| 国产精品亚洲一区二区三区在线| 在线电影国产精品| 国产精品主播直播| 日韩一区二区视频在线观看| 国产成人99久久亚洲综合精品| 91精品国产91久久综合桃花| 高清不卡在线观看| 精品久久久久久综合日本欧美| 99视频精品在线| 国产亚洲精品超碰| 国产亚洲欧美一区二区三区| 1区2区3区精品视频| 欧美三级电影在线播放| 香蕉久久夜色精品国产使用方法| 一本一道久久a久久精品综合| 日韩精彩视频在线观看| 欧美影视一区在线| 国产精品主播直播| 精品国产一区二区亚洲人成毛片| 91九色在线免费视频| 国产精品看片你懂得| 秋霞在线观看一区二区三区| 午夜精品久久久久久久久久久| 日本乱码高清不卡字幕| 精品写真视频在线观看| 日韩一区二区三区三四区视频在线观看| 成人手机在线视频| 国产清纯白嫩初高生在线观看91| 久久99九九| 午夜精品久久久久久久蜜桃app| 欧美亚洲综合在线| 国产成人aaa| 欧美国产综合色视频| 欧美二区在线| 日韩av电影天堂| 日韩一区二区三区四区| 超碰国产精品久久国产精品99| 亚洲久本草在线中文字幕| 致1999电视剧免费观看策驰影院| 韩国中文字幕2020精品| 欧美mv和日韩mv的网站| 国产区二精品视| 五月激情丁香一区二区三区| 欧美精品国产精品| 91麻豆6部合集magnet| 亚洲乱码中文字幕综合| 91福利社在线观看| 懂色av中文字幕一区二区三区| 亚洲国产岛国毛片在线| 激情综合五月婷婷| 久久久久久久电影| 日韩成人av网站| 国产综合色视频| 国产欧美精品一区| 亚洲砖区区免费| 国产91精品精华液一区二区三区 | 亚洲国产美国国产综合一区二区| 欧美午夜电影网| 99re成人精品视频| 亚洲综合成人在线视频| 91.com在线观看| 国产伦精品一区二区三区四区免费 | 91美女精品福利| 亚洲一区在线观看网站| 欧美久久高跟鞋激| 国产区欧美区日韩区| 日本美女一区二区三区视频| 精品日韩在线观看| 欧美日本韩国一区二区三区| 久久国产成人午夜av影院| 国产午夜精品一区二区三区四区| 视频一区亚洲 | 欧美一级午夜免费电影| 久久精品一区二区三区不卡免费视频| 全国精品久久少妇| 久久精品亚洲乱码伦伦中文| 一区二区三区四区不卡| av在线不卡免费看| 亚洲国产日韩a在线播放| 欧美电影免费观看完整版| 欧美日韩精品不卡| 风流少妇一区二区| 亚洲最大成人网4388xx| 日韩欧美国产wwwww| 日韩少妇中文字幕| 99久免费精品视频在线观看| 午夜久久电影网| 久久久精品中文字幕麻豆发布| 一区二区三区视频| 高清一区二区三区视频| 久久福利视频一区二区| 中文字幕一区二区三区四区 | 国产视频视频一区|