johnpbloch / decisions
非选项
    1.0.0
    2016-03-07 02:55 UTC
This package is auto-updated.
Last update: 2024-09-10 07:14:45 UTC
README
在JSON文件中定义值,它们将覆盖数据库中相应的选项值。始终如此。
需求
- PHP 5.3- 抱歉
- 不抱歉。
 
使用方法
你真应该使用这个必须使用的插件,但这需要一些专业知识以及额外的设置。如果你不知道MU插件是如何工作的,或者不知道如何将其设置为之一,你可能真的不需要这个插件?或者你也许想更好地了解为什么你需要它?
默认情况下,它将在 ABSPATH . '.decisions.json' 中查找配置文件。您可以在配置文件中这样更改位置
define( 'JPB\Decisions\DECISIONS', 'wherever/you/want' );
您想要默认设置的任何选项都放入 standard 哈希中
{
  "standard": {
    "blogname": "Super Serial Blog Name",
    "admin_email": "john@example.com"
  }
}
在多站网络中,您可以使用特定于站点的哈希添加或覆盖标准选项。站点选项应由站点域名 + 站点路径(用斜杠分隔,并删除协议)键入(因此 http://example.com/subsite/ 变为 example.com/subsite)。特定于站点的选项位于 sites 键下
{
  "sites": {
    "example.com/subsite": {
      "admin_email": "jane@example.com"
    },
    "something-else.com/multinetwork": {
      "omgwat": "Still works"
    }
  }
}
在多站中,您还可以使用 network 哈希添加网络范围的选项
{
  "network": {
    "auth_policy": "Gandalf"
  }
}
JSON被解码为关联数组而不是对象。如果您需要一个对象,您可以将数据序列化并将序列化的字符串直接存储。所有值在使用前都通过 maybe_unserialize 传递。
我认为可能会被FA的问题
JSON?为什么不用YAML/RAML/XML/LOLSPEAK?
PHP有核心JSON解码。没有人有时间使用用户库。
关于在此插件运行之前获取的选项怎么办?
我真的帮不了你。这远远超出了80/20规则。也许可以直接设置DB值,然后短路任何尝试更新该键的尝试?
你吗?
我做到了。