PHPackages                             itinerisltd/gfe-preset - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Security](/categories/security)
4. /
5. itinerisltd/gfe-preset

ActiveWordpress-muplugin[Security](/categories/security)

itinerisltd/gfe-preset
======================

Utilities for Gravity Forms Encrypted Fields.

0.2.0(3y ago)330.7k↓83.3%1MITPHPPHP ^7.4 || ^8.0

Since Feb 13Pushed 3y ago1 watchersCompare

[ Source](https://github.com/ItinerisLtd/gfe-preset)[ Packagist](https://packagist.org/packages/itinerisltd/gfe-preset)[ Docs](https://itinerisltd.github.io/gfe-preset/)[ RSS](/packages/itinerisltd-gfe-preset/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (2)Versions (6)Used By (0)

GFE Preset
==========

[](#gfe-preset)

[![Packagist Version](https://camo.githubusercontent.com/a6b3953d197258e46bd30a6a1507561694451c2596b69bfd27123f4bb3722e86/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6974696e657269736c74642f6766652d7072657365742e737667)](https://packagist.org/packages/itinerisltd/gfe-preset)[![PHP from Packagist](https://camo.githubusercontent.com/75d3cd1ba8a275830cdcb347cdf9a44e94a9f02fda81ef80011fbba812870632/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f6974696e657269736c74642f6766652d7072657365742e737667)](https://packagist.org/packages/itinerisltd/gfe-preset)[![Packagist Downloads](https://camo.githubusercontent.com/e20fdd1c7551c61bc6c2153efa6ff39f67ed5bd4fde3dbd4b2fc4622fe69f569/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6974696e657269736c74642f6766652d7072657365742e737667)](https://packagist.org/packages/itinerisltd/gfe-preset)[![GitHub License](https://camo.githubusercontent.com/02f7d3d9a94f787dbeba14a014e3d0179e216077ce8222939d305662492c30bf/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f6974696e657269736c74642f6766652d7072657365742e737667)](https://github.com/ItinerisLtd/gfe-preset/blob/master/LICENSE)[![Hire Itineris](https://camo.githubusercontent.com/28070f6fe57ce0e650e45ceddf0f294c6ebb8e5248af50e801ed5d81026c076c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f486972652d4974696e657269732d6666363962342e737667)](https://www.itineris.co.uk/contact/)

- [Goal](#goal)
- [Minimum Requirements](#minimum-requirements)
- [Installation](#installation)
- [Usage](#usage)
    - [Normal WordPress](#normal-wordpress)
    - [Bedrock](#bedrock)
- [Warnings](#warnings)
- [FAQ](#faq)
    - [Why `GFE_PRESET_WEBSITE_KEY` and `GFE_PRESET_ENCRYPTION_KEY` must be defined?](#why-gfe_preset_website_key-and-gfe_preset_encryption_key-must-be-defined)
    - [Should I reuse `GFE_PRESET_WEBSITE_KEY` and `GFE_PRESET_ENCRYPTION_KEY`?](#should-i-reuse-gfe_preset_website_key-and-gfe_preset_encryption_key)
    - [I have installed this plugin. Does it mean my WordPress site is *unhackable*?](#i-have-installed-this-plugin-does-it-mean-my-wordpress-site-is-unhackable)
    - [Will you add support for older PHP versions?](#will-you-add-support-for-older-php-versions)
    - [It looks awesome. Where can I find some more goodies like this?](#it-looks-awesome-where-can-i-find-some-more-goodies-like-this)
    - [This isn't on wp.org. Where can I give a ⭐️⭐️⭐️⭐️⭐️ review?](#this-isnt-on-wporg-where-can-i-give-a-%EF%B8%8F%EF%B8%8F%EF%B8%8F%EF%B8%8F%EF%B8%8F-review)
- [Testing](#testing)
- [Feedback](#feedback)
- [Change Log](#change-log)
- [Security](#security)
- [Credits](#credits)
- [License](#license)

Goal
----

[](#goal)

By default [Gravity Forms Encrypted Fields](https://codecanyon.net/item/gravity-forms-encrypted-fields/18564931) generate **website key** automatically on web servers which violates [12-factor principle](https://12factor.net/) and makes backing up difficult.

[GFE Preset](https://github.com/ItinerisLtd/gfe-preset) overrides the **website key** via PHP constants so that the key always in a *known state*.

Moreover, encrypting with *unknown* encryption keys means you can't decrypt if disasters happen. Better safe than worry. GFE Preset triggers [`wp_die`](https://codex.wordpress.org/Function_Reference/wp_die) if [required constants](https://github.com/ItinerisLtd/gfe-preset/tree/better-checks#usage) not defined.

Besides, [GFE Preset](https://github.com/ItinerisLtd/gfe-preset) provides similar overrides to:

- CodeCanyon license key
- encryption key (also known as encryption password)

Minimum Requirements
--------------------

[](#minimum-requirements)

- PHP v7.2
- WordPress v5.0
- [Gravity Forms Encrypted Fields](https://codecanyon.net/item/gravity-forms-encrypted-fields/18564931) v4.4.2

Installation
------------

[](#installation)

```
$ composer require itinerisltd/gfe-preset
```

Usage
-----

[](#usage)

### Normal WordPress

[](#normal-wordpress)

Define these 3 constants in `wp-config.php`:

```
// Required:
define('GFE_PRESET_WEBSITE_KEY', 'aaa');
define('GFE_PRESET_ENCRYPTION_KEY', 'bbb'); // Also kown as **encryption password**

// Optional:
define('GFE_PRESET_LICENSE_KEY', 'zzz');
```

### [Bedrock](https://github.com/roots/bedrock)

[](#bedrock)

Define these 3 constants in `config/application.php`:

```
// Required:
Config::define('GFE_PRESET_WEBSITE_KEY', 'aaa');
Config::define('GFE_PRESET_ENCRYPTION_KEY', 'bbb'); // Also kown as **encryption password**

// Optional:
Config::define('GFE_PRESET_LICENSE_KEY', 'zzz');
```

Warnings
--------

[](#warnings)

- You must save [Gravity Forms Encrypted Fields](https://codecanyon.net/item/gravity-forms-encrypted-fields/18564931) setting page whenever:

    - installing/activating the plugins
    - updating the plugins
    - changing the [constants](#usage)
- You should run "ENCRYPTION TESTING AND VERIFICATION" on the plugin settings page
- You should backup all the [constants](#usage)
- You should backup **website key and encryption password** shown on the plugin settings page

    - Without both **website key and encryption password**, you can't decrypt the data
- You should practice backing up and restoring the whole WordPress installation from time to time
- Normal [Gravity Forms Security Best Practices](https://docs.gravityforms.com/security/) still applies
- [Gravity Forms Encrypted Fields](https://codecanyon.net/item/gravity-forms-encrypted-fields/18564931) backup, verification, usage procedures still apply

    - You must read the [plugin readme](https://codecanyon.net/item/gravity-forms-encrypted-fields/18564931) and notices on the plugin setting page in full, and follow the instructions

FAQ
---

[](#faq)

### Why `GFE_PRESET_WEBSITE_KEY` and `GFE_PRESET_ENCRYPTION_KEY` must be defined?

[](#why-gfe_preset_website_key-and-gfe_preset_encryption_key-must-be-defined)

This is to prevent encrypting with unknown (not backed up) website key and encryption key, which end up with a *unrestorable database* (data is encrtpyed but you can't decrypt them).

### Should I reuse `GFE_PRESET_WEBSITE_KEY` and `GFE_PRESET_ENCRYPTION_KEY`?

[](#should-i-reuse-gfe_preset_website_key-and-gfe_preset_encryption_key)

No!

Each WordPress installation (enviroment) should have its own set of `GFE_PRESET_WEBSITE_KEY` and `GFE_PRESET_ENCRYPTION_KEY`, i.e: staging and production servers should use different keys.

### I have installed this plugin. Does it mean my WordPress site is *unhackable*?

[](#i-have-installed-this-plugin-does-it-mean-my-wordpress-site-is-unhackable)

No website is *unhackable*.

To have a secure WordPress site, you have to keep all these up-to-date:

- WordPress core
- PHP
- this plugin
- all other WordPress themes and plugins
- everything on the server
- other security practices
- your mindset

### Will you add support for older PHP versions?

[](#will-you-add-support-for-older-php-versions)

Never! This plugin will only works on [actively supported PHP versions](https://secure.php.net/supported-versions.php).

Don't use it on **end of life** or **security fixes only** PHP versions.

### It looks awesome. Where can I find some more goodies like this?

[](#it-looks-awesome-where-can-i-find-some-more-goodies-like-this)

- Articles on [Itineris' blog](https://www.itineris.co.uk/blog/)
- More projects on [Itineris' GitHub profile](https://github.com/itinerisltd)
- More plugins on [Itineris' wp.org profile](https://profiles.wordpress.org/itinerisltd/#content-plugins)
- Follow [@itineris\_ltd](https://twitter.com/itineris_ltd) and [@TangRufus](https://twitter.com/tangrufus) on Twitter
- Hire [Itineris](https://www.itineris.co.uk/services/) to build your next awesome site

### This isn't on wp.org. Where can I give a ⭐️⭐️⭐️⭐️⭐️ review?

[](#this-isnt-on-wporg-where-can-i-give-a-️️️️️-review)

Thanks! Glad you like it. It's important to let my boss knows somebody is using this project. Instead of giving reviews on wp.org, consider:

- tweet something good with mentioning [@itineris\_ltd](https://twitter.com/itineris_ltd) and [@TangRufus](https://twitter.com/tangrufus)
- star this [Github repo](https://github.com/ItinerisLtd/gfe-preset)
- watch this [Github repo](https://github.com/ItinerisLtd/gfe-preset)
- write blog posts
- submit pull requests
- [hire Itineris](https://www.itineris.co.uk/services/)

Testing
-------

[](#testing)

```
# Code style checks.
$ composer style:check
```

Pull requests without tests will not be accepted!

Feedback
--------

[](#feedback)

**Please provide feedback!** We want to make this library useful in as many projects as possible. Please submit an [issue](https://github.com/ItinerisLtd/gfe-preset/issues/new) and point out what you do and don't like, or fork the project and make suggestions. **No issue is too small.**

Change Log
----------

[](#change-log)

Please see [CHANGELOG](./CHANGELOG.md) for more information on what has changed recently.

Security
--------

[](#security)

If you discover any security related issues, please email  instead of using the issue tracker.

Credits
-------

[](#credits)

[GFE Preset](https://github.com/ItinerisLtd/gfe-preset) is a [Itineris Limited](https://www.itineris.co.uk/) project created by [Tang Rufus](https://typist.tech).

Full list of contributors can be found [here](https://github.com/ItinerisLtd/gfe-preset/graphs/contributors).

License
-------

[](#license)

[GFE Preset](https://github.com/ItinerisLtd/gfe-preset) is licensed under the [MIT License](https://opensource.org/licenses/MIT). Please see [License File](./LICENSE) for more information.

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity28

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 73.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~690 days

Total

3

Last Release

1266d ago

PHP version history (2 changes)0.1.0PHP ^7.2

0.2.0PHP ^7.4 || ^8.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/c1b05c8ed4ea3f68173555264d0226d5faeb7f315ed9df91890c351ef576ce72?d=identicon)[TangRufus](/maintainers/TangRufus)

---

Top Contributors

[![tangrufus](https://avatars.githubusercontent.com/u/2259834?v=4)](https://github.com/tangrufus "tangrufus (14 commits)")[![codepuncher](https://avatars.githubusercontent.com/u/8135396?v=4)](https://github.com/codepuncher "codepuncher (5 commits)")

---

Tags

functionality-pluginwordpresswordpress-mupluginwordpresssecurityencryptionwpgravityformsgravity-forms

### Embed Badge

![Health badge](/badges/itinerisltd-gfe-preset/health.svg)

```
[![Health](https://phpackages.com/badges/itinerisltd-gfe-preset/health.svg)](https://phpackages.com/packages/itinerisltd-gfe-preset)
```

###  Alternatives

[ass/xmlsecurity

The XmlSecurity library is written in PHP for working with XML Encryption and Signatures

955.6M30](/packages/ass-xmlsecurity)[nzo/url-encryptor-bundle

The NzoUrlEncryptorBundle is a Symfony Bundle used to Encrypt and Decrypt data and variables in the Web application or passed through URL

961.0M2](/packages/nzo-url-encryptor-bundle)[brain/nonces

OOP package for WordPress to deal with nonces.

26227.1k1](/packages/brain-nonces)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
