Skip to content

Kalpa-Services/mmg-wp-plugin

MMG Checkout for WooCommerce Plugin - Developer Contribution Guide

FOSSA Status

Project Overview

MMG Checkout for WooCommerce is a WordPress plugin that integrates with WooCommerce to provide a secure payment gateway for MMG Merchants. This guide is for developers who want to contribute to the project.

Development Prerequisites

  • WordPress 6.0+
  • WooCommerce 7.0+
  • PHP 7.4+
  • mbstring extension
  • Familiarity with WordPress plugin development
  • Understanding of payment gateway integrations
  • Knowledge of RSA encryption/decryption

Setting Up the Development Environment

  1. Configure devbox on your local machine.

  2. Clone the repository:

    git clone https://github.com/Kalpa-Services/mmg-wp-plugin.git
  3. Navigate to project directory. Doing so should automatically install all the required environment dependencies. If not run devbox install.

  4. Run composer install project dependencies.

  5. Run devbox services up to start all services.

  6. Run mysql -u root to connect to the database and create a new database for wordpress.

  7. Create a new directory called wordpress in devbox.d and run the following commands inside it:

    curl -O https://wordpress.org/latest.tar.gz
    tar -xzvf latest.tar.gz
    mv wordpress/* .
    rm -rf wordpress latest.tar.gz
  8. Configure your wp-config.php file and navigate to http://localhost:8082 to complete the WordPress setup.

  9. Navigae to devbox.d/wordpress/wp-content/plugins and run the following command:

    ln -s /path/to/project/mmg-wp-plugin kalpa-mmg-checkout
  10. Activate plugin in the WordPress admin panel.

Coding Standards

Testing

  • Ensure all new features or bug fixes include appropriate unit tests
  • Test the plugin with various WordPress and WooCommerce versions
  • Verify compatibility with popular WordPress themes

Submitting Changes

  1. Create a new branch for your feature or bug fix
  2. Make your changes and commit them with clear, concise commit messages
  3. Push your branch and create a pull request
  4. Ensure your PR description clearly explains the changes and their purpose

Security Considerations

Documentation

  • Update the README.md file with any new features or changes to installation/configuration steps
  • Document any new functions or classes using PHPDoc standards

Getting Help

For questions or support, please open an issue on the GitHub repository or contact the maintainers directly.

License

This project is licensed under GPL v2 or later. Ensure all contributions comply with this license.

FOSSA Status