我正在使用倒计时元素(可能是 Elementor)来显示帖子中 ACF 字段中存储的时间的倒计时。倒计时需要一个完整的日期时间 - 它不能只使用时间。每天3个帖子的时间将固定 - 上午9点,上午10点和上午11点。
所以我想使用 php 将字段更新为今天的日期,但保留每个帖子中的时间。这可能会在页面加载时发生,函数可以检查日期是否设置为今天,如果没有则更新它。但关键是时间必须保持不变。
这个想法是,当加载帖子时,它将始终显示倒计时,例如。上午 10 点,无论哪一天。
#wordpress #acf
我见过很多代码来更新整个日期字段,但不维护时间元素。
所以这似乎适用于单个帖子 ID,我如何概括特定自定义帖子类型中的所有帖子?
function update_acf_datetime_field() {
// Assuming you have the post ID and your ACF field name
$post_id = 120; // Replace with your actual post ID
$field_name = 'date_time'; // Replace with your actual ACF field name
// Get the current value of the ACF datetime field
$current_datetime = get_field($field_name, $post_id);
// If the field has a value, update only the date part to today
if ($current_datetime) {
$today_date = date('Y-m-d');
$updated_datetime = $today_date . substr($current_datetime, 10); // Preserve the time part
update_field($field_name, $updated_datetime, $post_id);
}
}
// Call the function to update the ACF datetime field
update_acf_datetime_field();