从帖子标题中批量提取日期并放入ACF自定义域

时间:2019-02-16 作者:onei0120

我有一个名为“事件”的自定义帖子类型,大约有700篇帖子,标题的格式如下:

活动名称-2019年1月1日

我需要在另一个字段中隔离日期。我正在使用高级自定义字段,并在事件自定义帖子类型中添加了日期字段。

我需要编写一个脚本,从每个标题中提取日期,并将其插入自定义字段。

我该怎么做?我尝试过编写SQL语句,但就是无法使其正常工作。我需要一些指导。

1 个回复
SO网友:Krzysiek Dróżdż

好的,下面是应该实现这个技巧的函数:

function modify_events_to_use_new_field() {
    $events = get_posts( array(
        \'post_type\' => \'event\',
        \'post_status\' => \'any\',
        \'posts_per_page\' => -1
    ) );

    foreach ( $events as $event ) {
        if ( preg_match(\'@^(.*) - ([^-]*)$@\', $event->post_title, $matches) ) { 
            // you\'ll have to modify the POST_META_KEY to the real name of your custom field
            update_post_meta( $event->ID, \'<POST_META_KEY>\', date(\'Ymd\', strtotime($matches[2]) ) );
        }
    }
}
现在,您必须更改其中自定义字段的名称并运行该函数。

相关推荐

Posts feed number of posts

祝大家节日快乐!我希望你能帮我解决这个“小”问题:)我正在使用基于Elara 它以不同的格式在首页和归档页上显示帖子提要。主要区别在于,在首页上,该设计最适合8篇文章,而在存档页上,它最适合导航前的10篇文章。但是,没有指定不同限制的选项。据我所知,饲料是由以下因素控制的:<?php /** * The loop / blog feed * * @package elara */ ?> <div id=\"blog