У меня установлен объект Post на странице настроек. Но когда я пытаюсь получить post_field для объекта post и отобразить его через функцию в функциях. php, это не работает. Он просто возвращается пустым. Он прекрасно работает, когда я добавляю тот же код вне функции в теме TwentyTwenty по умолчанию.
Вот код для отношения:
add_action('genesis_after_homebottom_widget_area', 'add_food_festivals');
function add_food_festivals() {
$posts = get_field('food_festival_post', 'option');
if( $posts ): ?>
<?php foreach( $posts as $p ): // variable must NOT be called $post (IMPORTANT) ?>
<section id="featured-post-6" class="widget featured-content featuredpost">
<div class="widget-wrap">
<h4 class="widget-title widgettitle">Food Festivals</h4>
<article class="post-1050 post type-post status-publish format-standard has-post-thumbnail category-food-festivals entry">
<a href="<?php echo get_the_permalink($p->ID);?>" title="Oak Street Po-Boy Festival, New Orleans, LA" class="alignnone">
<?php $image = get_field('food_festival_image', 'option');
if( !empty( $image ) ): ?>
<img src="<?php echo esc_url($image['url']); ?>" alt="<?php echo esc_attr($image['alt']); ?>" />
<?php endif; ?>
</a>
<header class="entry-header">
<h2 class="entry-title">
<a href="<?php echo get_the_permalink($p->ID);?>"><?php the_title($p->ID);?></a>
</h2>
</header>
</article>
<p class="more-from-category"><a href="https://sunsetandsewanee.com/category/food-festivals/" title="Food Festivals">More Food Festivals ></a></p>
</div>
</section>
<?php endforeach; ?>
<?php endif; ?>
}
А также пробовал с объектом post:
add_action('genesis_after_home-bottom_widget_area', 'add_food_festivals');
function add_food_festivals() {
$post_object = get_field('food_festival_post', 'option');
if( $post_object ):
// override $post
$post = $post_object;
setup_postdata( $post );
?>
<section id="featured-post-6" class="widget featured-content featuredpost">
<div class="widget-wrap">
<h4 class="widget-title widgettitle">Food Festivals</h4>
<article class="post-1050 post type-post status-publish format-standard has-post-thumbnail category-food-festivals entry">
<a href="<?php echo get_the_permalink();?>" title="Oak Street Po-Boy Festival, New Orleans, LA" class="alignnone">
<?php $image = get_field('food_festival_image', 'option');
if( !empty( $image ) ): ?>
<img src="<?php echo esc_url($image['url']); ?>" alt="<?php echo esc_attr($image['alt']); ?>" />
<?php endif; ?>
</a>
<header class="entry-header">
<h2 class="entry-title">
<a href="<?php echo get_the_permalink();?>"><?php the_title();?></a>
</h2>
</header>
</article>
<p class="more-from-category"><a href="https://sunsetandsewanee.com/category/food-festivals/" title="Food Festivals">More Food Festivals ></a></p>
</div>
</section>
<?php wp_reset_postdata(); // IMPORTANT - reset the $post object so the rest of the page works correctly ?>
<?php endif; ?>
}
Я пробовал несколько решений, включая добавление $global post;
в начало функции. Очевидные части были проверены (Имя поля установлено правильно в ACF. Поле установлено как возвращаемое как Post Object и т. Д. c).
Если я запускаю var_dump в поле get_field, они возвращают пустое массив. array(0) { }