Wordpress教程 2023年06月25日
0 收藏 0 点赞 712 浏览 1606 个字

在这个代码中,我们首先获取当前分类的ID ($cat_id) 和所有置顶文章的ID数组 ($sticky_posts)。

然后,我们使用 WP_Query 分别查询当前分类下的置顶文章和最新发布的文章。对于置顶文章,我们设置查询参数,包括 post__in 用于指定置顶文章ID数组,category__in 用于限制只查询当前分类,以及 ignore_sticky_posts 设置为 1,忽略其他位置的置顶文章。

对于最新发布的文章,我们使用分类ID ($cat_id) 并排除置顶文章的ID数组 ($sticky_posts),以确保只显示最新发布的非置顶文章。

最后,我们使用默认的 have_posts()the_post() 循环来显示置顶文章和最新发布的文章。

请确保将上述代码嵌入到适当的WordPress主题文件中,并根据需要自定义HTML和样式。

<?php
$cat_id = get_queried_object_id();
$sticky_posts = get_option('sticky_posts');

// 查询当前分类下的置顶文章
$sticky_args = array(
  'post__in' => $sticky_posts,
  'category__in' => array($cat_id),
  'ignore_sticky_posts' => 1
);
$sticky_query = new WP_Query($sticky_args);

// 查询当前分类下的最新发布文章
$new_posts_args = array(
  'cat' => $cat_id,
  'post__not_in' => $sticky_posts
);
$new_posts_query = new WP_Query($new_posts_args);

// 显示置顶文章
if ($sticky_query->have_posts()) :
  while ($sticky_query->have_posts()) : $sticky_query->the_post();
    ?>
    <li>
      <div class="pbox"><a href="<?php the_permalink(); ?>" rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow" ><img src="<?php echo get_template_directory_uri(); ?>/timthumb.php?src=<?php echo post_thumbnail_src(); ?>&h=500&w=500&zc=1" border="0" alt="<?php the_title(); ?>"></a></div>
      <p><a href="<?php the_permalink(); ?>" rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow" ><?php the_title(); ?></a></p>
    </li>
    <?php
  endwhile;
  wp_reset_postdata();
endif;

// 显示最新发布的文章
if ($new_posts_query->have_posts()) :
  while ($new_posts_query->have_posts()) : $new_posts_query->the_post();
    ?>
    <li>
      <div class="pbox"><a href="<?php the_permalink(); ?>" rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow" ><img src="<?php echo get_template_directory_uri(); ?>/timthumb.php?src=<?php echo post_thumbnail_src(); ?>&h=500&w=500&zc=1" border="0" alt="<?php the_title(); ?>"></a></div>
      <p><a href="<?php the_permalink(); ?>" rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow" ><?php the_title(); ?></a></p>
    </li>
    <?php
  endwhile;
  wp_reset_postdata();
endif;
?>

微信扫一扫

支付宝扫一扫

版权: 转载请注明出处:https://www.mizhanw.com/blog/2550.html

相关推荐
实现 WordPress 自动更新所有文章的发布日期为当天的日期
//二开自动更新文章日期为当天发布。 //设置宝塔面板中的定时任务,通过访问带有?update_posts=run的链接触发文章更新.如:c…
日期:2024-09-22 点赞:0 阅读:46
WooCommerce订单列表显示购买产品
// 为 Legacy CPT-based 订单添加自定义列 add_filter('manage_edit-shop_order_colu…
日期:2024-09-20 点赞:0 阅读:99
WooCommerce Order 类的所有Get方法,以面向对象的方法获取订单数据
在开发WooCommerce插件或者与第三方系统交互时,我们需要获取 WooCommerce 订单的数据,WooCommerce的 WC_O…
日期:2024-09-20 点赞:0 阅读:56
为WooCommerce后台订单列表添加按自定义字段功能
  // 添加自定义列到订单列表 add_filter('manage_woocommerce_page_wc-orders_co…
日期:2024-09-20 点赞:0 阅读:60
添加删除 WooCommerce 数据列表中的数据列
转载:添加删除 WooCommerce 数据列表中的数据列 _WordPress智库 (wpzhiku.com) 在 WooCommerce…
日期:2024-09-20 点赞:0 阅读:71
WooCommerce的结账页面的订单摘要中,在商品数量后添加加减按钮
关于 WooCommerce 结账页面的定制内容在网上有大量讨论。为什么呢?因为结账页面无疑是任何 WooCommerce 网站的关键页面!…
日期:2024-08-11 点赞:0 阅读:126
发表评论
暂无评论

还没有评论呢,快来抢沙发~