Я создал пользовательский тип сообщения, называемый «товары», и пользовательскую таксономию в типе сообщения, называемом «Ингредиенты».ACF Repeater field Display
Я добавил поле ретранслятора под названием «ингредиенты-INCI» и под-поле «ингредиенты-INCI-group», которое вызывает значения из «Компонентов» таксономии.
Пользовательское Repeater поля Скриншот:
Каждый продукт имеет много ингредиентов, я хотел бы, чтобы отобразить список выбранных ингредиентов для продукта. Вот мой код шаблона:
<?php
/**
PostType Page Template: Product
*/
get_header(); ?>
\t <div id="b_primary" class="b_content-area">
\t \t <main id="b_main" class="b_site__main" role="main">
\t \t <?php while (have_posts()) : the_post(); ?>
<!-- START product information -->
<div class="toptext">If you have any enquiries, please click here to contact us.</div>
<div class="toptext">Please ensure you include all the products information that you wish to enquire about.</div>
<div class="tableproduct">
<table>
<tr>
<th><div class="tabletitle">PRODUCT NAME</div></th>
<th><div class="tableresult"><?php wp_title(); ?></div></th>
</tr>
<tr>
<td><div class="tabletitle">PRODUCT DESCRIPTION</div></td>
<td><div class="tableresult"><?php the_field('product_description'); ?></div></td>
</tr>
<tr>
<td><div class="tabletitle">BRAND</div></td>
<td><div class="tableresult"><?php the_field('brand'); ?></div></td>
</tr>
<tr>
<td><div class="tabletitle">BARCODE</div></td>
<td><div class="tableresult"><?php the_field('barcode'); ?></div></td>
</tr>
<tr>
<td><div class="tabletitle">Ingredients (INCI Name)<br><div class="tablesubtitle">NOTE: Ingredients are listed in decreasing order of quantity.</div></div></td>
<td><div class="tableresult">
\t \t <?php
// check if the repeater field has rows of data
if(have_rows('ingredients-INCI')):
\t // loop through the rows of data
while (have_rows('ingredients-INCI')) : the_row();
// display a sub field value
the_sub_field('ingredients-INCI-group');
endwhile;
else :
// no rows found
endif;
?>
</div></td>
</tr>
<tr>
<td><div class="tabletitle">Fragrance Ingredients (INCI Name)<br><div class="tablesubtitle">NOTE: Fragrance Ingredients are those which require listing under EC648/2004 on detergents.</div></div></td>
<td><div class="tableresult">
\t \t
\t \t RESULTS HERE
\t \t
</div></td>
</tr>
</table>
<div class="tabletitleother">OTHER INFORMATION</div>
<div class="tableotherresults">The above formulation is for products manufactured between <?php the_field('date_from'); ?> and <?php the_field('date_to'); ?></div>
<div class="tableyellow">INCI/CAS/Ingredient information CLICK HERE or HERE</div>
</div>
<!-- END product information -->
\t \t <?php endwhile; // End of the loop. ?>
\t \t </main><!-- #b_main -->
\t </div><!-- #b_primary -->
<?php get_sidebar(); ?>
<?php get_footer(); ?>
Этот код кажется, разорвать выход. Пожалуйста помоги!
Я пробовал это, но он ничего не тянет. – Ashley
Вы должны показывать свой контент в цикле. «$ productField» в этой переменной вы получите все значения «ингредиенты-INCI» в этом поле. Я обновил свой ответ, пожалуйста, проверьте – Dinesh
Я попробовал ваше предложение, но не имел большой удачи. Я должен был добавить в свой первый пост, что «ингредиенты-INCI-группа» извлекаются из пользовательской таксономии под названием «ингредиенты». Если я превращу это подполе в стандартное текстовое поле, он будет тянуть, хотя содержимое, однако, когда я верну его, чтобы вытащить, хотя из пользовательской таксономии это не делает. – Ashley