2016-04-12 34 views
1

我创建简单的插件工作,它在主网页的工作,但是当我创建一个链接到用户去为见informaation的另一页,它告诉我致命错误:未捕获的错误:调用一个成员函数get_results()

我的代码是:

<?php 

global $wpdb; 
$results = $wpdb->get_results("SELECT * FROM wp_customers"); 
?> 
<body> 
<table> 
    <tr> 
     <th>‌ID</th> 
     <th>Name</th> 
     <th>Family</th> 
     <th>Numbers</th> 
     <th>Tell</th> 
    </tr> 

    <?php foreach($results as $results){ 
    ?> 
    <tr> 
     <td> 
      <?php echo $results->id; ?> 
     </td> 
     <td> 
      <?php echo $results->name; ?> 
     </td> 
     <td> 
      <?php echo $results->family; ?> 
     </td> 
     <td> 
      <?php echo $results->numbers; ?> 
     </td> 
     <td> 
      <?php echo $results->tell; ?> 
     </td> 
     <?php }?> 
    </tr> 
</table> 
+0

您是否已将数据库前缀设置为“wp_”以外的内容? –

回答

1

你需要检查你有没有建立数据库前缀不是“WP_”以外的东西。

如果您在数据库中有WP_前缀,那么你必须包含自定义页面上的WP-负载文件。

require('/path/to/wp-load.php'); 
+0

你好,我在WordPress的编程是新的,这是给我的错误使用requre 我怎么能requre呢? – pouria

+0

tnx很多我做到了 – pouria

+0

这不是编写插件的正确方法,请看看这个https://codex.wordpress.org/Writing_a_Plugin –

0

如果它是一个插件,那么你应该封装你的代码中的函数,你的插件文件挂钩打开了该功能WordPress的“初始化”动作,使你应该有财产以后这样的:

function your_function_name_here($some_params){ 
    return "some results"; 
} 

add_action('init', 'your_function_name_here'); 
+0

在页面我想显示的信息,我必须写这个?或任何页面? – pouria

+0

你说这是一个插件的权利?它是一个基于短代码的插件吗?或小部件?告诉我更多,所以我可以帮助你,如果我可以。 –

+0

它很宽,我有5个PHP页面,一个用于获取信息并从用户插入到数据库,其中一个用于向用户提供信息 – pouria