Maqolalar katalogi
WordPressO'rnatilgan maqolani yopishtirish funktsiyasi mavjud, ammo sukut bo'yicha yopishqoq maqolalarni ko'rsatish uchun faqat yuqori sahifa qo'llab-quvvatlanadi.
Boshqa arxiv sahifalari (masalan, toifalar sahifalari, teg sahifalari, muallif sahifalari va sana sahifalari) yopishqoq maqolalarni yuqori qismida ko'rsata olmaydi, faqat standart tartibda.
WordPress bilan juda ko'p narsaSEOdo'stlar, bu muammolarni hal qilishga umid qilaman.
Aslida, biz faqat wp-includes/query.php bosh sahifasining kodiga murojaat qilishimiz va uni biroz o'zgartirishimiz kerak, shunda arxiv sahifasining yuqori qismi (masalan, toifalar sahifasi, yorliq sahifasi, muallif sahifasi va sana sahifasi kabi) ) yuqori maqolani ham ko'rsatishi mumkin.
WordPress yopishqoq maqola kodi
Iltimos, joriy mavzuingiz ostidagi functions.php fayliga quyidagi kodni kiriting ▼
//让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; }
Yopishqoq maqola kodidan foydalanish bo'yicha ko'rsatmalar
1) Agar arxiv sahifasida barcha eng yaxshi maqolalar koʻrsatilishini istasangiz, 11-43 qatorli kodlarni oʻchirib tashlang;
2) Agar siz toifa sahifasida eng yaxshi maqolani ko'rsatishni xohlamasangiz, 3-qatorga ▼ qo'shing.
if(
▼ ga o'zgartiring
// abc是分类的名称 if ( is_category( 'abc' ) ||
3) Agar yuqori maqolani yorliq sahifasida ko'rsatishni xohlamasangiz, iltimos, 3-qatorda ▼ belgisini qo'ying.
if(
ga o'zgartirish:
// abc是标签的名称
if ( is_tag( 'abc' ) ||
4) Agar muallif sahifasida yuqori maqola koʻrsatilishini istamasangiz, 3-qatorda ▼ belgisini qoʻying
if(
▼ ga o'zgartiring
// abc是作者的昵称
if ( is_author( 'abc' ) ||
5) Agar siz maxsus toifadagi sahifaning yuqori maqolani ko'rsatishini xohlamasangiz, ni qo'ying
if(
Uni quyidagicha o'zgartiring:
// series是自定义分类、abc是自定义分类名称 if ( is_series( 'abc' ) ||
Yuqoridagi kod faqat asosiy tsikl uchun amal qiladi, agar siz arxiv sahifasida postlar roʻyxatini olish uchun WP_Query yoki query_posts dan foydalanayotgan boʻlsangiz va oʻsha roʻyxatlar tepasida mahkamlangan postni koʻrsatishni istasangiz.
Siz 3-qatordagi quyidagi kodni oʻchirishingiz mumkin (koʻrsatilgan maqolalar soni siz oʻrnatganingizdan farq qilishi mumkin) ▼
|| !is_main_query()
Yuqori maqolaga uslub qo'shing
Agar siz yopishqoq postga uslublar qo'shmoqchi bo'lsangiz, functions.php saytiga quyidagi kodni qo'shing va yopishqoq postga sticky nomli sinfni qo'shing.
Umumiy WordPress mavzularida eng yaxshi maqola uslubi uchun CSS kodi bo'ladi, siz shuningdek maxsus ▼ qo'shishingiz mumkin
//置顶文章添加样式 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; }
- Kategoriya sahifasining eng yuqori maqola uslubi effekti,Chen VeyliangBlog maqolalari toifalari:Xitoy mobil raqami
- (Mavzuni o'zgartirish muddati tugagan)
WordPress turkumidagi arxiv sahifalarida WordPress maqolalarini yuqori qismida koʻrsatishning yana bir usuli bor▼
Umid qilamanki, Chen Veyliang blogi ( https://www.chenweiliang.com/ ) "Qanday qilib WordPress toifasi/teg/muallif sahifasida yopishqoq maqolalar ko'rsatilishi mumkin? , sizga yordam berish uchun.
Ushbu maqolaning havolasini baham ko'rish uchun xush kelibsiz:https://www.chenweiliang.com/cwl-878.html
Eng so'nggi yangiliklardan xabardor bo'lish uchun Chen Veyliang blogining Telegram kanaliga xush kelibsiz!
📚 Ushbu qo'llanmada katta ahamiyatga ega, 🌟Bu kamdan-kam imkoniyat, uni qo'ldan boy bermang! ⏰⌛💨
Baham ko'ring va yoqsa like!
Sizning baham ko'rish va yoqtirishlaringiz bizning doimiy motivatsiyamizdir!