2017-04-24 44 views
0

使用插件我可以通过使用[insert_php]作为标签在页面上使用PHP,但是,每当我尝试使用SQL时,它似乎都不起作用。 我尝试使用:在wordpress上使用SQL页面

global $wpdb; 
$prepared = $wpdb->get_row(
    "SELECT SiteID, SiteName 
    FROM $wpdb->Site 
     WHERE SiteID = 1"); 

echo $prepared->SiteName; 
echo "test"; 

所有我得到的是页面上的测试,我已经测试,看看我的sql语句有错,它似乎是工作的罚款,所以我猜有一个问题与$ wpdb或我输出数据的方式。

+0

检查什么' “SELECT SITEID,网站名称FROM $ wpdb->网站,SITEID = 1”'真的是,这里是你的错误 – Peter

+0

@彼得我有我正在寻找的数据。网站是我创建的表格 –

回答

0

WordPress.org has a lot of detailed information in their reference.

我想尝试参考$wpdb->Site就是为什么你的代码是不工作可能的犯罪嫌疑人。您需要了解表格中的确切字段才能获取您的信息。

Here is a reference for the wp_site table.我想你实际上是在寻找'域'字段,而不是'sitename'。

+0

我创建了一个名为Site的表格,并将数据转储到它中,我正在尝试检索该数据现在 –

+0

是该表格在与其他WordPress数据相同的数据库中名为“Site”的表格吗? 我的建议是为了防止名称为“Site”的表与名称“Site”之间的名称冲突对于WordPress来说意义重大,那就是将您的表称为其他名称,可能是前缀“my_”,例如“my_Site”,然后尝试使用以下查询: ' SELECT SiteID,SiteName FROM $ wpdb-> my_Site WHERE SiteID = 1' – phpenthusiast

+0

它似乎仍然没有工作 –

0

尝试用表的实际名称替换$wpdb->Site。因为$wpdb->table_name只适用于默认的wp表格,所以我也会首先得到类似的错误。

编辑 应该是这样的: SELECT SiteID, SiteName FROM Site WHERE SiteID = 1

+0

它不是一个默认的WP表,它是我自己添加的一个 –

+0

好吧。您可以将其替换为您想要使用的实际表名,而不是使用$ wpdb-> table_name –