//二开自动更新文章日期为当天发布。
//设置宝塔面板中的定时任务,通过访问带有?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');
还没有评论呢,快来抢沙发~