rmp-up / wp-fixtures
WordPress中表现式的固定数据持久化(以及一些插件)
Requires
- php: ~7.0|8.0.*
- nelmio/alice: ~3
Requires (Dev)
- bamarni/composer-bin-plugin: 1.4.*
- johnpbloch/wordpress: >=4.7.0
- squizlabs/php_codesniffer: ~3
- wpackagist-plugin/woocommerce: 3.*
- wpackagist-plugin/yith-woocommerce-product-bundles: 1.1.*
Suggests
- wp-cli/wp-cli: Allows using 'wp fixture' on CLI
Conflicts
- johnpbloch/wordpress: <4.5.0
- symfony/property-access: ~5
This package is auto-updated.
Last update: 2024-09-16 00:44:45 UTC
README
WordPress固定数据生成器
WordPress中表现式的固定数据持久化(以及一些插件)。
在开发针对客户特定问题的解决方案时,GDPR和流式数据是非常繁琐的。Faker 和 Alice 已经为 Symfony、Nette、Zend 和现在为 WordPress 提供了支持,以便...
- ...使用 wp-cli 或纯 PHP 创建数据。
- ...只需几行 YAML 就可以生成大量的页面、文章、评论、产品等。
- ...用特定的用例来填充 WordPress 进行测试
总体目标是 简单性 和 不浪费时间(对我来说和你),我们通过在 YAML 中使用原始的 WordPress 结构而不是重新发明轮子来实现这一点。
到目前为止,我们为以下提供了助手
- WordPress 4.6 - 5.4,例如文章、页面、用户、选项等。
下面是如何使用一个小 Yaml-文件向数据库中添加大量条目的示例,或者阅读文档以了解更多关于实体和可能性的信息。
安装
下载或只是
composer install --dev rmp-up/wp-fixtures
我们大多数情况下需要 Alice 也需要的软件(在 Packagist.org 上查看更多详细信息)
- PHP
- WordPress
可选
- wp-cli 2,它可以处理 YAML 并为您填充数据库
测试不断扩展以覆盖更广泛的范围(参见 Travis CI)。
使用方法
让我们定义一个简单的页面,随机用户的多篇文章以及大量评论
WP_Post: page_1: # Well known wp_insert_post() structure post_type: page post_title: Imprint post_content: | Beth Doe Meestreet 42 1337 Muskegon meta_input: simple: 1 flat: # will append like add_post_meta - penny - claire - emily - lucy complex: # will be serialized company: True TV best: Ellen # or with abbreviated field-names post_{1..10}: author: '<wpUser()>' title: '<sentence()>' content: '<realText()>' WP_Comment: # 100 comments randomly spread among posts comment_{2..102}: post_ID: '@post_<numberBetween(1,10)>' content: '<realText()>'
其他可能的实体
- 选项
- WP_Comment
- WP_Post
- WP_Role
- WP_Site
- WP_Term
- WP_User
许可
版权 2019 Mike Pretzlaw (mike-pretzlaw.de)
特此授予任何获得本软件及其相关文档副本(“软件”)的人免费使用软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本的权利,以及允许向软件提供方提供软件的人这样做,前提是满足以下条件
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
本软件按“现状”提供,不提供任何明示或暗示的保证,包括但不限于适销性、针对特定目的的适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论此类责任是基于合同、侵权或其他方式,均源于、因之或与此软件或其使用或其他交易有关。