我想使用ACF Repeater字段创建一个短代码,所以我找到了这段代码,当我尝试在我的网站上应用它时,它不起作用。我正在使用genesis框架。
我的目标是使用ACF Repeater字段和post或page中的显示表创建一个短代码。
这是我在函数中的代码。php:
function menu_loop () {
$menu = \'<div class="entry-content dishes">\';
// check if the repeater field has rows of data
if( have_rows(\'menu_sections\') ):
// loop through the rows of data
while ( have_rows(\'menu_sections\') ) : the_row();
// display a sub field value
$menu.= \'<h2>\' . get_sub_field(\'section_title\') . \'</h2>\';
if ( have_rows(\'sections_items\'));
$menu.= \'<table><thead><tr><td class="ja_name">Name</td><td class="ja_description">Description</td><td class="ja_price">Price</td></tr></thead>\';
while (have_rows(\'section_items\') ): the_row();
$menu.= \'<tr><td>\'.the_sub_field(\'dish_names\').\'</td><td>\'.the_sub_field(\'dish_description\').\'</td><td>$ \'.the_sub_field(\'dish_price\').\'</td></tr>\';
endwhile
$menu.= \'</table> \';
endwhile;
else :
// no rows found
endif; ?>
$menu.= \'</div>\';
// Code
return $menu;
}
add_shortcode(\'testimonials\', \'menu_loop\');
使用此代码显示语法错误,意外的“$菜单”(T\\u变量),应为“;”