在wordpress“wp config.php”文件中读写配置值。

wpconfigr的Python项目详细描述


WP配置器

CircleCI

用于在wordpresswp-config.php文件中读取和写入配置值的python包。

概述

默认的wp-config.php可能如下所示:

<?phpdefine('DB_NAME','database_name_here');

wpconfigr将帮助您将文件更新为:

<?phpdefine('SOMETHING_ENTIRELY_NEW','garnet');define('DB_NAME','my_blog');

wpconfigr公开两个函数:

    {< CD5> }将更新名称{^ ^ }如果不存在,则返回名称属性^ {< CD6> }或^ {CD9}}的值。

安装

pip install wpconfigr

命令行用法

将值写入wp config.php

命名参数:

  • --filename:文件wp-config.php的完整路径和文件名。
  • --key:要创建/更新的属性的名称。
  • --value:要设置的字符串值。
  • --set-true:将值设置为booleantrue
  • --set-false:将值设置为booleanfalse
  • --log-level:(可选)日志级别。
python -m wpconfigr --filename  /www/wp-config.php \
                    --key       DB_NAME \
                    --value     my_blog \
                    --log-level info

从wp config.php读取值

如上所述,但不要指定值(通过--value--set-true--set-false参数)。

python -m wpconfigr --filename /www/wp-config.php \
                    --key      DB_NAME

代码使用

更新包含wp-config.php内容的字符串:

fromwpconfigrimportWpConfigStringconfig=WpConfigString(config_string)config.set('DB_NAME','my_blog')updated_config_string=config.content

直接更新wp-config.php文件:

fromwpconfigrimportWpConfigFileconfig=WpConfigFile(filename)config.set('DB_NAME','my_blog')# File is updated immediately after each property update.

读取属性值:

db_name=config.get('DB_NAME')

开发

先决条件

wp configr需要python 3.x。

安装依赖项

pip install -e .[dev]

运行测试

python test.py

更改日志

v1.4-2018年12月6日

  • 修复了读取和更新已注释属性的错误。

v1.3-2018年12月02日

  • 添加了--set-true--set-false命令行标志。

v1.2-2018年12月02日

  • 如果没有任何更改,则不再重新写入配置文件。

v1.1-2018-12-02

  • 添加日志记录。
    • 测试运行记录所有内容。
    • 默认情况下,仅从命令行日志运行CRITICAL,但可以使用新的可选--log-level参数覆盖。
  • 使文档更加清晰,并修复了代码示例中的错误。
  • FLOAT替换了对FRACTIONAL的内部命名引用。这个词在v1.0版中完全被我遗忘了。
  • 修复了一些代码格式化和Pylint警告。
  • 忽略源代码管理中的HTML报表。

v1.0-2018-12-01

  • 初次发布。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
数组Java For Loop没有输出(我认为)它应该如何输出   java Maven可以在一个模块中打包两个jar,使用相同的文件名但不同的图表集吗?   java OData读取单个实体最佳实践   java为什么我的代码在以下条件下返回false?   java QueryDsl投影元素集合   在为Java Swing元素实现ActionListener时,如何解决静态引用错误?   libGDX设置允许我使用java8,它在Android中崩溃   如何将日期从shell脚本传递到java即时数据类型   java如何向JList添加复选框和图像   java如何编写这个Listview?   java Eclipse每项目构建设置   java如何将spring引导应用程序指向外部jar的logback。xml   java更改EditText的下划线/样式。。。。。不是链接,而是水平滚动文本   java JPQL:使用复合键建模具有多个关系的查询实体   javascript如何获取Java中的最后32个字节   sql检查Java Derby中是否存在架构   java如何从视图中获取MVC Spring控制器中jstl select的所有项   java gson在需要对象时遇到空数组问题