Tusaha Maqaalka
WordPressWaxaa jira maqaal ku dhex jira oo ku dheggan, laakiin asal ahaan bogga sare oo keliya ayaa la taageeraa si uu u muujiyo maqaallada dhegdhegaysan.
Bogagga kale ee kaydka (sida boggaga qaybta, boggaga tag, boggaga qoraaga, iyo bogga taariikhda) kama soo bandhigi karaan maqaallo dhegdheg ah xagga sare, kaliya siday u kala horreeyaan.
wax badan oo lagu sameeyo WordPressSEOsxb, rajee inaad xalliso mashaakilkan.
Dhab ahaantii, waxaan kaliya u baahanahay inaan tixraacno koodhka bogga guriga ee wp-includes/query.php oo aan wax yar ka beddelno, si sare ee bogga kaydka (sida bogga qaybta, bogga tab, bogga qoraaga iyo bogga taariikhda ) sidoo kale waxay soo bandhigi kartaa maqaalka ugu sarreeya.
Koodhka maqaalka dhegdheg ee WordPress
Fadlan geli koodka soo socda faylka functional.php mawduucaaga hadda ▼
//让WordPress分类、标签、存档和作者页显示置顶文章 add_filter('the_posts', 'putStickyOnTop' ); function putStickyOnTop( $posts ) { if ( is_series() || 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) && !empty($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 ( !empty($sticky_posts) && !empty($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 ( !empty($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; } //置顶文章添加样式 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; }
Tilmaamaha isticmaalka koodka maqaalka dhejiska ah
1) Haddii aad rabto in bogga kaydku soo bandhigo dhammaan maqaallada ugu sarreeya, fadlan tirtir 11-43 khadadka koodka;
2) Haddii aadan rabin inaad ku muujiso maqaalka ugu sarreeya bogga qaybta, fadlan ku dar ▼ safka 3
if(
U beddelo ▼
// abc是分类的名称 if ( is_category( 'abc' ) ||
3) Haddii aadan rabin inaad ku muujiso maqaalka ugu sarreeya bogga tab, fadlan ▼ safka 3aad
if(
u beddel:
// abc是标签的名称
if ( is_tag( 'abc' ) ||
4) Haddii aadan rabin in bogga qoraagu soo bandhigo maqaalka ugu sarreeya, fadlan ▼ safka 3aad
if(
U beddelo ▼
// abc是作者的昵称
if ( is_author( 'abc' ) ||
5) Haddii aadan rabin bogga qaybta gaarka ah si aad u muujiso maqaalka ugu sarreeya, ku dheji
if(
U beddel:
// series是自定义分类、abc是自定义分类名称 if ( is_series( 'abc' ) ||
Koodhka sare waxa uu kaliya u shaqaynayaa loop-ka wayn, hadii aad isticmaalayso WP_Query ama query_posts si aad u hesho liis qoraalo ah oo ku yaal bogga kaydka, oo aad rabto in aad muujiso boostada ku dheggan liisaska sare.
Waxaad ku tirtiri kartaa koodka soo socda ee safka 3 (waxaa laga yaabaa inay keento tirada maqaallada la soo bandhigay inay ka duwan yihiin waxaad dejisay) ▼
|| !is_main_query()
Kudar qaabka maqaalka sare
Haddii aad rabto in aad qaabab ku darto boostada dhegdhegaysan, ku dar koodkan soo socda functional.php oo ku dar fasal magac leh oo dhegdheg leh.
Mawduucyada guud ee WordPress waxay yeelan doonaan koodka CSS ee qaabka maqaalka ugu sarreeya, waxaad sidoo kale ku dari kartaa caadada ▼
//置顶文章添加样式 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; }
- Saamaynta qaabka maqaalka sare ee bogga qaybta,Chen WeiliangQaybaha maqaalka blog:Nambarka gacanta ee Shiinaha
- (Mawduuca beddelku wuu dhacay)
Waxaa jira hab kale oo lagu sameeyo boggaga kaydka qaybta WordPress inay muujiyaan maqaallada WordPress ee ugu sarreeya▼
Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) la wadaagay "Sidee loo sameeyaa qaybta WordPress/tag/bogga qoraaga oo muujiya maqaallo dhegdheg leh? , si ay kuu caawiyaan.
Ku soo dhawoow inaad wadaagto xiriirka maqaalkan:https://www.chenweiliang.com/cwl-878.html
Ku soo dhawoow kanaalka Telegramka ee Chen Weiliang's blog si aad u hesho wararkii ugu dambeeyay!
📚 Hagahan waxa uu ka kooban yahay qiimo aad u weyn, 🌟Tani waa fursad naadir ah, ha seegin! ⏰⌛💨
Share iyo like saar hadaad jeceshahay!
Wadaagistaada iyo jeceylkaaga ayaa ah dhiirigelintayada joogtada ah!