数组在wordpress中的含义

时间:2014-03-23 07:57:02

标签: php arrays wordpress

所以我正在使用wordpress并使用以下代码,我得到以下内容。我知道这必须是一个基本问题,但我想知道这意味着什么:

[1012] => Array ( [0] => 1 ) [1013] => Array ( [0] => 0 ) [1014] => Array ( [0] => 0 ) [1018] => Array ( [0] => 0 )

PHP:

<?php
 $all_meta_for_user = get_user_meta(get_current_user_id());
 print_r( $all_meta_for_user );
?>

1 个答案:

答案 0 :(得分:2)

此数据是用户的元数据https://codex.wordpress.org/Function_Reference/get_user_meta

正如您所说,这是您的元数据。这里有两件事:首先,我将所有数据存储在一个密钥中,然后我将删除不需要的单元素数组:

[my_plugin] => Array( [1012] => 1, [1013] => 0 ...)

这降低了您的数据与其他插件数据混合,发生冲突等的可能性。此外,由于可能不需要第二个数组,因此可以更轻松地访问它。

当你拥有它时,只需要访问这样的值:

if ($all_meta_for_user['my_plugin'][$id] == 1) show_the_post()

其中$ id是帖子ID。

要使用单个密钥,我会做这样的事情(未经测试):

$posts_meta_for_user = get_user_meta(get_current_user_id(), 'my_plugin', true); if (is_array($posts_meta_for_user)) { $posts_meta_for_user[$new_id] = $new_value; update_user_meta(get_current_user_id(), 'my_plugin', $posts_meta_for_user); } else { $posts_meta_for_user = array($new_id => $new_value); add_user_meta(get_current_user_id(), 'my_plugin', $awesome_level); }

请注意,我们只获得名为&#39; my_plugin&#39;的元值。并通过检查它是一个数组测试它已经有一个值。如果是,我们会更新它,如果不是,我们会创建一个新的。 $new_id是您要存储的帖子ID,$new_value是值。