Skip to content

Latest commit

 

History

History
171 lines (118 loc) · 7.45 KB

README.md

File metadata and controls

171 lines (118 loc) · 7.45 KB

Content Fuzzyfyr Module for Magento® 2

ci Coverage Status Mastodon Follow

The Content Fuzzyfyr module for Magento® 2 fills up empty content fields - and if needed - switches real content with dummy content. This is for development purposes, e.g. save time to prepare test data and being compliant to GDPR.

Features:

  • Fill up empty content and image fields with dummy content - completely automated
  • Match GDPR compliance for development, when using production data
  • Export your production database already matching GDPR compliance
  • Use parameters to control the sections required to be filled up with dummy content

Installation

The preferred way of installing hivecommerce/magento2-content-fuzzyfyr is through Composer. Simply add hivecommerce/magento2-content-fuzzyfyr as a dependency:

composer.phar require hivecommerce/magento2-content-fuzzyfyr

Optional you can download the latest version here and install the decompressed code in your projects directory under app/code/HiveCommerce/ContentFuzzyfyr.

Post-Install

After the installment of the module source code, the module has to be enabled by the Magento® 2 CLI.

bin/magento module:enable HiveCommerce_ContentFuzzyfyr

System Upgrade

After enabling the module, the Magento® 2 system must be upgraded.

If the system mode is set to production, run the compile command first. This is not necessary for the developer mode.

bin/magento setup:di:compile

To upgrade the system, the upgrade command must be run.

bin/magento setup:upgrade

User Guide

Find the complete user guide here.

How to use

CLI

Content Fuzzyfyr

The Content Fuzzyfyr Module for Magento® 2 provides an Magento® 2 CLI command dev:content:fuzzyfyr to modify existing content (or only empty fields with the --only-empty flag) to be switched with some defined default value:

bin/magento dev:content:fuzzyfyr [options]

Note: Be aware the command only runs in non-production mode to avoid messing up production data on mistake.

You may want to switch to default or developer mode to run the command:

bin/magento deploy:mode:set developer

List of flags

Option Description
--only-empty Use dummy content only if the original data is equal to empty
--force Allow execution in production mode (not recommended!)
--categories Apply dummy content to categories (content, meta description)
--cms-blocks Apply dummy content to CMS Blocks (content)
--cms-pages Apply dummy content to CMS Pages (content, meta description)
--customers Apply dummy content to customers (Last name, address, email, password)
--products Apply dummy content to products (description)
--users Apply dummy content to users (Last name, email)

List of options

Option Value Description
--dummy-content-text String Used as dummy text content. Defaults to 'Lorem ipsum.'
--dummy-content-password String Used as dummy text content. Defaults to 'lorem42'
--dummy-content-email String Used as dummy email content. Defaults to 'lorem.ipsum.%1$[email protected]'
--dummy-content-url String Used as dummy url content. Defaults to 'https://lor.emips.um/foo/bar/'
--dummy-content-phone String Used as dummy phone content. Defaults to '+49 (0) 600 987 654 32'
--dummy-content-image-path String Used as dummy image content. Defaults to './assets/dummy_image.png'

How to apply custom code

An event is triggered, called hc_content_fuzzyfyr_event. Listening to this event, expect the following parameters in the Observer data:

'configuration' => \HiveCommerce\ContentFuzzyfyr\Model\Configuration

Content Export

The Content Fuzzyfyr Module for Magento® 2 provides an Magento® 2 CLI command dev:content:export to export an database dump with already fuzzyfied content for existing content (or only empty fields with the --only-empty flag)
switched with some defined default value:

bin/magento dev:content:export [options]

Note: Running the code activates maintenance mode. The maintenance mode will be disabled, if the command has run successfully or erroneous and the maintenance mode has been disabled in the beginning. But it is recommended to check manually on production system after running the command.

List of flags

Option Description
--only-empty Use dummy content only if the original data is equal to empty
--categories Apply dummy content to categories (content, meta description)
--cms-blocks Apply dummy content to CMS Blocks (content)
--cms-pages Apply dummy content to CMS Pages (content, meta description)
--customers Apply dummy content to customers (Last name, address, email, password)
--products Apply dummy content to products (description)
--users Apply dummy content to users (Last name, email)

List of options

Option Value Description
--dummy-content-text String Used as dummy text content. Defaults to 'Lorem ipsum.'
--dummy-content-password String Used as dummy text content. Defaults to 'lorem42'
--dummy-content-email String Used as dummy email content. Defaults to 'lorem.ipsum.%1$[email protected]'
--dummy-content-url String Used as dummy url content. Defaults to 'https://lor.emips.um/foo/bar/'
--dummy-content-phone String Used as dummy phone content. Defaults to '+49 (0) 600 987 654 32'
--backup-output String Path where the database dump is placed. Defaults to './var/backups/'

How to apply custom code

An event is triggered, called hc_content_export_event. Listening to this event, expect the following parameters in the Observer data:

'configuration' => \HiveCommerce\ContentFuzzyfyr\Model\Configuration

Administration

Content Export

The Content Fuzzyfyr Module for Magento® 2 extends the Magento® 2 administration backup area with an additional option to trigger the export of a GDPR compliant database dump. The database dump will have fuzzyfied customers and user data.

Navigate through the main navigation and selecting System > Backup:

alt text

The backup area is extended by the new button GDPR conform Database Backup (Content Fuzzyfyr):

alt text

By clicking on this button, a wizard is opened to configure the backup - mainly the name of the backup file:

alt text

If the wizard is confirmed, the GDPR compliant backup will be created and visibile in the existing backup list:

alt text

Contribution

Feel free to contribute to this module by reporting issues or create some pull requests for improvements.

License

The Content Fuzzyfyr Module for Magento® 2 is released under the Apache 2.0 license.