【问题标题】:Wordpress custom table - get data out a foreach loopWordpress 自定义表格 - 从 foreach 循环中获取数据
【发布时间】:2017-01-08 21:30:21
【问题描述】:

我想要实现的是: 我有一个包含几行的自定义表。 每行都是与页面链接的项目(行的“页面”字段是页面的名称),因此当我打开一个页面时,我会获得链接到该页面的所有项目。

我设法获得了与页面名称对应的行。但是我不知道如何管理数组。

想法是将变量传递给页面模板,以便自动填充正确的数据。

global $wpdb;
$mytitle = get_the_title();

$results = $wpdb->get_row($wpdb->prepare('SELECT * FROM wp_mytable WHERE page = %s', $mytitle));

$item-list = array();

foreach ($results as $r)
{
    $item-name = $r->name;
    $item-description = $r->desc;

    $item-list = "some html code with $item-name and $item-description";
}

在页面模板中,我将只使用<?php echo $item-list; ?> 以获取该页面的所有项目。

但它似乎不起作用。

任何帮助将不胜感激。
谢谢。

【问题讨论】:

    标签: php wordpress foreach


    【解决方案1】:

    如果你想获取多个数据,那么你应该使用get_results() 而不是get_row()

    试试这个代码。

    global $wpdb;
    $mytitle = get_the_title();
    
    $results = $wpdb->get_results($wpdb->prepare('SELECT * FROM ' . $wpdb->prefix . 'mytable WHERE page = %s', $mytitle));
    
    $item_list = '<ul>';
    foreach ($results as $r)
    {
        $item_name = $r->name;
        $item_description = $r->desc;
        $item_list .= '<li>' . $item_name . ' ' . $item_description . '</li>';
    }
    $item_list .='</ul>';
    

    现在$item_list 保存列表HTML,以便通过将其作为&lt;?php echo $item_list; ?&gt; 回显来使用它。

    希望这会有所帮助!

    【讨论】:

    • 谢谢!像魅力一样工作!
    猜你喜欢
    • 2021-04-24
    • 1970-01-01
    • 1970-01-01
    • 2019-06-03
    • 1970-01-01
    • 1970-01-01
    • 2017-08-31
    • 1970-01-01
    • 2019-07-11
    相关资源
    最近更新 更多