【问题标题】:ACF repeater field Date formatACF 转发器字段 日期格式
【发布时间】:2018-04-12 11:22:01
【问题描述】:

我有一个新问题要问你,我正在尝试将转发器字段的日期格式更改为法语!

<?php $rows = get_field( 'evenement' ); ?>
<?php
$first_row_date = $rows[0]['date_debut_evenement'];
$last_row = end( $rows );
$last_row_date = $last_row['date_debut_evenement']; 
?>

<?php if( $last_row_date != $first_row_date ) : ?> 
<div class="bloc-date">
Du <?php echo $first_row_date; ?> au <?php echo $last_row_date; ?>
</div>
<?php else: ?>
<div class="bloc-date">
Le <?php echo $first_row_date; ?>
</div>
<?php endif; ?>

在另一个页面中,我的代码运行良好,显示了法语格式的日期:

<?php 
    $dateformatstring = "D d M Y";
    $start_date = strtotime(get_sub_field('date_debut_evenement', false, false));
    $finish_date = strtotime(get_sub_field('date_fin_evenement', false, false));
    ?>      

    <div class="bloc-date" style="display:inline-block;">
    <?php if ($start_date == $finish_date) {
    echo date_i18n($dateformatstring, $start_date);
    } else {
    echo "Du "; echo date_i18n($dateformatstring, $start_date); echo " au ";
    echo date_i18n($dateformatstring, $finish_date);
    }?>     
    </div>

谢谢!

【问题讨论】:

  • 那么...到底是什么问题?如果你让它在一个地方工作,只需调整相同的解决方案。
  • 问题出在行上,我不知道使用哪个代码来获取子字段的 last_row 并更改日期的格式!我不知道它很清楚:)

标签: date repeater advanced-custom-fields


【解决方案1】:

您应该尝试使用false 第二个参数检索您的evenement 字段,如下所示:
$rows = get_field( 'evenement', false, false );
第一个 false 代表当前帖子,而第二个告诉 ACF 获取原始数据,而不是尝试将其转换为另一种日期格式。

然后通过插入 $dateformatstring = "D d M Y"; 行并使用 date_i18n() 来调整工作示例中的代码。

【讨论】:

    猜你喜欢
    • 2020-09-20
    • 2013-04-09
    • 2022-10-17
    • 2020-12-22
    • 2015-01-31
    • 2020-04-04
    • 2018-10-06
    • 1970-01-01
    • 2019-09-04
    相关资源
    最近更新 更多