通过$wpdb类更改Term_id和名称

时间:2012-06-22 作者:Adige72

$s = $_POST[\'submitterms\'];
$querystr = "
            SELECT $wpdb->terms.*
            FROM $wpdb->terms
            WHERE
            lower($wpdb->terms.name) like \'%$s%\'
         ";
$pageposts = $wpdb->get_results($querystr, OBJECT);
echo \'<ul>\';
$x = 0;
while ($pageposts[$x]) {
  $post = $pageposts[$x];
  echo \'<li>\';
  echo \'<a href="\' . $post->term_id . \'">\' . $post->name . \'</a>\';
  echo \'</li>\';
  $x++;
}

echo \'</ul>\';
我能够获得包含我在文本框中键入的字符的术语名称。

但我想做的是改变term_id AS id AND name AS value 这样我就可以传递如下变量:

$post->id
$post->value
//i.e
echo \'<a href="\'.$post->id.\'">\'.$post->value.\'</a>\';
我想我需要更改MySQL代码。我该怎么办?

1 个回复
最合适的回答,由SO网友:HungryCoder 整理而成

你可以很容易地做到。您的查询应该是:

$querystr = "SELECT `term_id` AS `id`, `name` AS `value`, `slug`, `term_group` FROM {$wpdb->terms} WHERE lower($wpdb->terms.name) like \'%$s%\'";
看,这里我已经提到了所需字段的名称。对于任何其他字段,都需要明确提及字段名称。

结束

相关推荐

Php Mysql Terms

我已经在本地系统中配置了wordpress。我在wp\\u选项下的Phpmysql数据库中遇到了这些术语。谁能告诉我,这是什么意思?a:2:{s:12:\"twentyeleven\";s:7:\"/themes\";s:9:\"twentyten\";s:7:\"/themes\";}