Wordpress教程 2024年09月22日
0 收藏 0 点赞 90 浏览 2191 个字

//二开自动更新文章日期为当天发布。
//设置宝塔面板中的定时任务,通过访问带有?update_posts=run的链接触发文章更新.如:curl -s https://xxx.com/?update_posts=run
//或者手动访问 域名/?update_posts=run 执行更新命令。


// 版本1  将文章的日期更新为当天的完整时间(年月日、然鹅小时、分钟均为之前的时间不变),从而达到重新发布文章的效果。
// function custom_manual_update_old_posts() {
//     if (isset($_GET['update_posts']) && $_GET['update_posts'] === 'run') {
//         $posts_per_page = 100; // 每次处理 100 篇文章
//         $paged = isset($_GET['paged']) ? intval($_GET['paged']) : 1; 

//         $args = array(
//             'posts_per_page' => $posts_per_page,
//             'post_type' => 'post',
//             'post_status' => 'publish',
//             'orderby' => 'date',
//             'order' => 'ASC',
//             'paged' => $paged 
//         );

//         $old_posts = new WP_Query($args);

//         if ($old_posts->have_posts()) {
//             while ($old_posts->have_posts()) {
//                 $old_posts->the_post();
//                 $post_id = get_the_ID();

//                 $original_time = get_the_date('H:i:s', $post_id);
//                 $current_date = current_time('Y-m-d');
//                 $new_post_date = $current_date . ' ' . $original_time;

//                 $post_data = array(
//                     'ID'           => $post_id,
//                     'post_date'    => $new_post_date,
//                     'post_date_gmt'=> get_gmt_from_date($new_post_date),
//                 );
//                 wp_update_post($post_data);
//             }
//             wp_reset_postdata();
//         }

//         if ($old_posts->max_num_pages > $paged) {
//             $next_page_url = add_query_arg('paged', $paged + 1, $_SERVER['REQUEST_URI']);
//             wp_redirect($next_page_url);
//             exit;
//         }

//         echo '所有文章更新成功';
//         exit;
//     }
// }
// add_action('init', 'custom_manual_update_old_posts');



// 版本2----将文章的日期更新为当天的完整时间(年月日、小时、分钟均为当前时间),从而达到重新发布文章的效果。

function custom_manual_update_all_posts() {
    if (isset($_GET['update_posts']) && $_GET['update_posts'] === 'run') {
        $posts_per_page = 100; // 每次处理 100 篇文章
        $paged = isset($_GET['paged']) ? intval($_GET['paged']) : 1; 

        $args = array(
            'posts_per_page' => $posts_per_page,
            'post_type' => 'post',
            'post_status' => 'publish',
            'orderby' => 'date',
            'order' => 'ASC',
            'paged' => $paged
        );

        $old_posts = new WP_Query($args);

        if ($old_posts->have_posts()) {
            while ($old_posts->have_posts()) {
                $old_posts->the_post();
                $post_id = get_the_ID();
                $current_time = current_time('mysql'); 
                $post_data = array(
                    'ID'           => $post_id,
                    'post_date'    => $current_time,
                    'post_date_gmt'=> get_gmt_from_date($current_time),
                );
                wp_update_post($post_data);
            }
            wp_reset_postdata();
        }

        if ($old_posts->max_num_pages > $paged) {
            $next_page_url = add_query_arg('paged', $paged + 1, $_SERVER['REQUEST_URI']);
            wp_redirect($next_page_url);
            exit;
        }

        echo '所有文章更新成功';
        exit;
    }
}
add_action('init', 'custom_manual_update_all_posts');

 

微信扫一扫

支付宝扫一扫

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

相关推荐
WordPress标签按拼音字母层级排序教程
此教程实现标签按拼音字母(A、B、C 等字母)层级排序,并在页面上添加一个侧边竖向字母导航 <?php /* Template Nam…
日期:2024-11-07 点赞:0 阅读:31
wordpress网站编辑器启隐藏的编辑器功能
如果开启WordPress隐藏的编辑器功能就够你用了,何必安装插件呢。 如何开启隐藏的编辑器功能 WordPress默认不支持TinyMCE…
日期:2024-10-29 点赞:0 阅读:43
在WooCommerce中添加“立即购买”按钮直接跳转到结算页面
add_action( 'woocommerce_after_add_to_cart_button', 'add_content_after…
日期:2024-10-19 点赞:0 阅读:64
实现 WordPress 自动更新所有文章的发布日期为当天的日期
//二开自动更新文章日期为当天发布。 //设置宝塔面板中的定时任务,通过访问带有?update_posts=run的链接触发文章更新.如:c…
日期:2024-09-22 点赞:0 阅读:90
WooCommerce订单列表显示购买产品
// 为 Legacy CPT-based 订单添加自定义列 add_filter('manage_edit-shop_order_colu…
日期:2024-09-20 点赞:0 阅读:178
WooCommerce Order 类的所有Get方法,以面向对象的方法获取订单数据
在开发WooCommerce插件或者与第三方系统交互时,我们需要获取 WooCommerce 订单的数据,WooCommerce的 WC_O…
日期:2024-09-20 点赞:0 阅读:183
发表评论
暂无评论

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