我在Wordpress user meta中有一个自定义字段,它将数据存储在序列化数组中。我想检索数组的数量。例如:a:2:{blah blah}
<小时>我的桌子的屏幕截图
我尝试了以下代码,但不起作用。它应该打印2
$number = $wpdb->get_var("
SELECT count(*)
FROM wp_usermeta
WHERE meta_key=\'bookmark_posts\' AND meta_value LIKE \'%".get_current_user_id()."%\'
");
if ( $number !== \'\' ) {
echo \'Total bookmarks (\' . $number . \')\';
}
我有一个错误日志。(john\\u newsite是数据库名称)
WordPress database error Table \'john_newsite.wp_usermeta\' doesn\'t
exist for query SELECT count(*) FROM wp_usermeta WHERE
meta_key=\'bookmark_posts\'
edit:
我刚刚尝试了以下代码。它可以工作,但会计算所有用户的书签总数。如何限制当前登录用户的结果?
$meta_key=\'bookmark_posts\';
$number = $wpdb->get_var( $wpdb->prepare(
"SELECT sum(meta_value)
FROM $wpdb->postmeta
WHERE meta_key = %s",
$meta_key
) );
echo "{$number}";