የዎርድፕረስ ምድብ/መለያ/የደራሲ ገጽ ተለጣፊ ጽሑፎችን እንዴት እንደሚያሳይ?

የዎርድፕረስአብሮ የተሰራ መጣጥፍ የማጣበቅ ተግባር አለ፣ ነገር ግን በነባሪነት ተለጣፊ ጽሑፎችን ለማሳየት የላይኛው ገጽ ብቻ ነው የሚደገፈው።

ሌሎች የማህደር ገፆች (እንደ የምድብ ገጾች፣ የመለያ ገፆች፣ የደራሲ ገፆች እና የቀን ገፆች ያሉ) በነባሪ ቅደም ተከተል ብቻ ተለጣፊ መጣጥፎችን ከላይ ማሳየት አይችሉም።

ከ WordPress ጋር ብዙ የሚሠራሲኢኦጓደኞች, እነዚህን ችግሮች ለመፍታት ተስፋ ያድርጉ.

የዎርድፕረስ ምድብ/መለያ/የደራሲ ገጽ ተለጣፊ ጽሑፎችን እንዴት እንደሚያሳይ?

በእውነቱ የ wp-includes/query.php የመነሻ ገጽ ኮድ ብቻ መጥቀስ እና በትንሹ ማሻሻል አለብን ፣ ስለሆነም የማህደሩ የላይኛው ክፍል (እንደ ምድብ ገጽ ፣ ትር ገጽ ፣ የደራሲ ገጽ እና የቀን ገጽ ያሉ) ። ) እንዲሁም ከፍተኛውን ጽሑፍ ማሳየት ይችላል.

የዎርድፕረስ ተለጣፊ ጽሑፍ ኮድ

እባኮትን የሚከተለውን ኮድ አሁን ባለው ጭብጥዎ ስር በ function.php ፋይል ውስጥ ያስቀምጡ

//让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;
} 

የተጣበቀ ጽሑፍ ኮድ ለመጠቀም መመሪያዎች

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) ብጁ ምድብ ገጽ የላይኛውን ጽሑፍ እንዲያሳይ የማይፈልጉ ከሆነ፣ አስቀምጥ

if(

ቀይር ወደ፡

// series是自定义分类、abc是自定义分类名称
if ( is_series( 'abc' ) ||

በማህደር ገጹ ላይ የልጥፎችን ዝርዝር ለማግኘት WP_Query ወይም query_posts እየተጠቀሙ ከሆነ እና በእነዚያ ዝርዝሮች አናት ላይ የተሰኩ ልጥፎችን ለማሳየት ከላይ ያለው ኮድ የሚሰራው ለዋናው ሉፕ ብቻ ነው።

በመስመር 3 የሚከተለውን ኮድ መሰረዝ ይችላሉ (የታዩት መጣጥፎች ብዛት ካዘጋጁት የተለየ ሊሆን ይችላል) ▼

|| !is_main_query() 

ወደ ላይኛው መጣጥፍ ዘይቤ ያክሉ

ወደ ተለጣፊው ልጥፍ ስታይል ማከል ከፈለጉ የሚከተለውን ኮድ ወደ function.php ያክሉ እና በተጣበቀ ልጥፍ ላይ ተለጣፊ የሚል ​​ክፍል ያክሉ።

በአጠቃላይ የዎርድፕረስ ገጽታዎች ለከፍተኛው የአጻጻፍ ስልት የሲኤስኤስ ኮድ ይኖራል፣ እንዲሁም ብጁ ▼ ማከል ይችላሉ።

//置顶文章添加样式
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;
} 

የዎርድፕረስ ምድብ ማህደር ገጾች የዎርድፕረስ መጣጥፎችን ከላይ▼ እንዲያሳዩ የሚያደርግበት ሌላ መንገድ አለ።

ተስፋ Chen Weiliang ብሎግ ( https://www.chenweiliang.com/ ) የተጋራ "እንዴት የዎርድፕረስ ምድብ/መለያ/የደራሲ ገጽ ተለጣፊ ጽሑፎችን እንደሚያሳይ? , እርስዎን ለመርዳት.

እንኳን በደህና መጡ የዚህን ጽሁፍ ማገናኛ ለማጋራት፡-https://www.chenweiliang.com/cwl-878.html

አዳዲስ መረጃዎችን ለማግኘት ወደ የቼን ዌይሊያንግ ብሎግ የቴሌግራም ቻናል እንኳን በደህና መጡ።

🔔 ጠቃሚ የሆነውን "ChatGPT Content Marketing AI Tool Usage Guide" በቻናል ከፍተኛ ማውጫ ውስጥ ለማግኘት የመጀመሪያው ይሁኑ! 🌟
📚 ይህ መመሪያ ትልቅ ዋጋ አለው፣ 🌟ይህ ያልተለመደ እድል ነው፣ እንዳያመልጥዎ! ⏰⌛💨
ከወደዳችሁት ሼር እና ላይክ አድርጉ!
የእርስዎ ማጋራት እና መውደዶች ቀጣይ ማበረታቻዎቻችን ናቸው!

 

评论ሺ评论评论评论 ፡፡

የኢሜል አድራሻዎ አይታተምም ፡፡ 项 已 用 ፡፡ * 标注

ወደ ላይ ይሸብልሉ