我如何才能在json响应中获得我的选项?

时间:2017-08-18 作者:Owaiz Yusufi

我制作了一个函数,可以下载一个JSON文件,其中包含WordPress中的所有选项,以及我在主题选项页面中制作的自己的选项,效果很好。

Here is the code:

$options = get_alloptions(); // Get all options data, return array

    foreach ($options as $key => $value) {
        $value = maybe_unserialize($value);
        $need_options[$key] = $value;
    }

$json_file = json_encode($need_options);

So what\'s the problem:

问题是下载的文件中有太多的选项,我想限制它们,这意味着我只想要我在主题选项中所做的选项。

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

您不应该逐个保存主题的选项。在这种情况下,您应该分别调用它们中的每一个,或者将它们存储在一个数组中,然后运行循环以获取它们的值:

$options = array( \'option1\', \'option2\', \'option3\');
foreach( $options as $option ){
    // The rest of your code
}
但正确的方法总是将主题的所有选项序列化并存储在单个选项中。看看this 我的答案,你可以在代码中找到实现这一点的函数。

另一种方法是为您的选项使用唯一的前缀。例如,使用something- 作为前缀,然后选中该字符串的检索选项:

$options = get_alloptions(); // Get all options data, return array

    foreach ($options as $key => $value) {
        if( stristr( $key, \'something-\' ) )  {
            $value = maybe_unserialize($value);
            $need_options[$key] = $value;
        }
    }

$json_file = json_encode($need_options);

结束

相关推荐

如何将json数据发送到jQuery

我有一个问题,我想发送一些数组到jquery,一旦有人点击了特定的元素,我可以看到我不能向任何输入添加数组,所以我决定用json编码数组。但我被困在那里,因为我无法从jquery的输入字段中获取json数据。我使用字段类名在jquery中获取json数据。请有人帮忙,因为我正在构建一个WP短代码,我想将所有属性发送到jquery。提前感谢