kmaroff
3/26/2018 - 1:04 PM

Снипеты для ACF

//Обновление значений новых полей в уже созданных записях
<?php
  $count = (int) get_field('feedback_title');
  $count = 'значение на что маменить';
  update_field('feedback_title', $count);
?>

//Выводи ссылки на изображение по определенным размерам миниатюры (В настройке поля выбрать «Массив изображения»)

<?php 
	$image = get_sub_field('projects__bg');
	$size = 'project-bg';
	$thumb = $image['sizes'][ $size ];

		if( $image ) {
			echo $thumb; //ссылка
		}
?>


//Логический вывод кастомных полей
<?php if( get_field('check_blockquote') ): ?>
	<?php echo get_field( 'image_blockquote' ); ?>
	<?php echo get_field( 'text_blockquote' ); ?>
	<?php echo get_field( 'author_blockquote' ); ?>
<?php endif; ?>

//Вывод поля
<?php echo get_field('имя_поля'); ?>

//Вывод опции
<?php echo get_field('имя_поля', 'option'); ?>


<!-- Group -->
<?php if( have_rows('quote_photo_position') ):
	while( have_rows('quote_photo_position') ): the_row();
		?>

	<?php echo get_sub_field('quote_position'); ?>

	<?php endwhile; ?>
<?php endif; ?>
<!-- End group -->


<!-- Repeater -->
<?php
if( have_rows('quote_menu') ):
	while ( have_rows('quote_menu') ) : the_row(); ?>
	
	<?php the_sub_field('quote_menu_name'); ?>

	<?php endwhile; ?>
<?php endif; ?>
<!-- End repeater -->


//Вывод репитера со счетчиком повторов

 <?php
    if( have_rows('question') ):
      $i = 0; 
      while( have_rows('question') ): the_row(); 
      if( get_sub_field('title_question') ) $i++;
      $tCount = $i; ?>
      
      <?php echo $tCount; ?>
      <?php the_sub_field('text_question'); ?>
      <?php endwhile; ?>
    <?php endif; ?>

	
//Вывод галереи
<?php 
	$images = get_field('photo_room');
	if( $images ): ?>
		<?php foreach( $images as $image ): ?>
			<img src="<?php echo $image['url']; ?>" />
	<?php endforeach; ?>
<?php endif; ?>

// Вывод галереи с миниатюрой

<?php 
	    $images = get_field('item');
	    $size = 'thumb-new';

	    if( $images ): ?>
        <?php foreach( $images as $image ): ?>
        
        <?php echo $image['url']; ?>
        <?php echo wp_get_attachment_image( $image['ID'], $size ); ?>

	      <?php endforeach; ?>
    <?php endif; ?>

//Фоновая картинка из доп поля acf для страницы таксономии

$queried_object = get_queried_object();
if (isset($queried_object->ID)) {
  $post_id = $queried_object->ID;
} elseif (isset($queried_object->term_id)) {
  $post_id = $queried_object->taxonomy.'_'.$queried_object->term_id;
}

get_field('field_name', $post_id);


//Интеграция я карты через расширение для ACF
<?php the_yandex_map('map_club', $term) ?>


//Проверка на заполнения поля
<?php if( get_field("description_project") ): ?>
	<?php echo get_field('description_project'); ?>
	<?php else :?>
<?php endif; ?>


//Гибкий контент
<?php if( have_rows('social_option', 'option') ):
	while( have_rows('social_option', 'option') ): the_row(); ?>

	<?php if(get_row_layout() == 'social_vk_option'): ?>
	
	asasasas

	<?php elseif(get_row_layout() == 'social_fb_option'): ?>

	asasasas

	<?php elseif(get_row_layout() == 'social_inst_option'): ?>

	asasasas

	<?php endif; ?>

	<?php endwhile; ?>
	<?php endif; ?>
	
//Вывот поля из таксономии (woocommerce)
<?php
$term_id = $term->term_id;
$term = get_term($term_id);
the_field('svg-code', $term); 
?>

//Выводя поля категории товаров на любой странице
<?php
echo get_field('field', 'product_cat_' . $taxonomy_ID);
?>

//Вывод типа записи «Отношение — Записи»

<?php
global $post; // добавить если не работает вывод без переменной.
$post_objects = get_field('portfolio_service');

if( $post_objects ): ?>
	<section class="work">
		<h2 class="entry-title">Примеры работ</h2>
		<div class="work__list">
		<?php foreach( $post_objects as $post): ?>
			<?php setup_postdata($post); ?>

				<?php the_title(); ?>
				<?php the_permalink(); ?>
				<?php echo the_post_thumbnail('portfolio_thumb'); ?>
						
		<?php endforeach; ?>

	</section>
<?php wp_reset_postdata(); ?>
<?php endif; ?>