简码内容显示两次或显示在页面底部
shortcode content is showed twice or at the bottom of the page
我的短代码有问题,它应该出现在 post div 中,但它显示在页面内容的末尾(页面底部)。
这是代码:
add_shortcode('registru', "show_registru");
function show_registru()
{
global $wpdb;
$list_inregistrari = $wpdb->get_results('SELECT * FROM ' . $wpdb->prefix . 'wprc_ong_casa ORDER BY data_inregistrare ASC');
$sold_init = $wpdb->get_var('SELECT valoare FROM ' . $wpdb->prefix . 'wprc_solduri LIMIT 1');
ob_start();
print_table($list_inregistrari, $sold_init);
return ob_get_clean();
}
如果我尝试使用 ob_get_content() 而不是 ob_get_clean() table 将显示两次,一次在 post div 一次在页面底部。
我也试过这样做(它仍然在页面底部):
ob_start();
print_table($list_inregistrari, $sold_init);
$return = ob_get_contents();
ob_clean();
return $return;
*print_table函数只是回显了一些HTML代码,所以我也尝试将所有带有HTML代码的字符串放入一个变量,然后 return 它,但仍然没有。
知道了!所以问题是 print_table
中的元素缺少结束 </table>
标记。
为你的函数试试这个(注意倒数第二行):
</tr>
<?php
endforeach;
front_table_footer($total_incasari, $total_plati, $sold_init);
echo '</table>'; // needs a closing tag
}
我的短代码有问题,它应该出现在 post div 中,但它显示在页面内容的末尾(页面底部)。 这是代码:
add_shortcode('registru', "show_registru");
function show_registru()
{
global $wpdb;
$list_inregistrari = $wpdb->get_results('SELECT * FROM ' . $wpdb->prefix . 'wprc_ong_casa ORDER BY data_inregistrare ASC');
$sold_init = $wpdb->get_var('SELECT valoare FROM ' . $wpdb->prefix . 'wprc_solduri LIMIT 1');
ob_start();
print_table($list_inregistrari, $sold_init);
return ob_get_clean();
}
如果我尝试使用 ob_get_content() 而不是 ob_get_clean() table 将显示两次,一次在 post div 一次在页面底部。
我也试过这样做(它仍然在页面底部):
ob_start();
print_table($list_inregistrari, $sold_init);
$return = ob_get_contents();
ob_clean();
return $return;
*print_table函数只是回显了一些HTML代码,所以我也尝试将所有带有HTML代码的字符串放入一个变量,然后 return 它,但仍然没有。
知道了!所以问题是 print_table
中的元素缺少结束 </table>
标记。
为你的函数试试这个(注意倒数第二行):
</tr>
<?php
endforeach;
front_table_footer($total_incasari, $total_plati, $sold_init);
echo '</table>'; // needs a closing tag
}