Gravity Forms (WordPress-plugin)

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Sinds 2020 is Gravity Forms m'n standaard formulieren-plugin, op advies van een specialist. Ik denk dat ik 'm ok vind. De belangrijkste dingen gaan heel soepel. Waarschijnlijk zijn het de nag-screens om maar de betaalde versie te kopen, waar ik het meeste moeite mee heb. En dat het de complete backend-interface van WordPress overneemt. Verder is-ie prima.

Dit artikel gaat tot op heden (okt. 2021) vrijwel uitsluitend over de WP-CLI-commando's om Gravity Forms en bijbehorende formulieren te beheren.

Licensering

Het is een betaalde plugin. Zonder licentie doet-ie nix.

  • Als ik sites kloon, is de gekloonde licentie ok - Itt. tot een andere plugin (naam vergeten) waarbij de licentie URL-afhankelijk was
  • Als ik alleen de plugin kopiëer en plak, is de licentie niet ok.

WP-CLI

Installation

Gravity Forms has quite a library of WP-CLI commands, but these need to be separately installed as a plugin:

wp plugin install gravityformscli --activate

Disable or enable a form?

I have the impression that you cannot disable or enable a form through a dedicated WP-CLI command.

Example using SQL:

cd $site_path
sql="update wp_gf_form set is_active=0 where id=1"
wp db query "$sql"

Database-model

Basic form settings - wp_gf_form

Basic form settings are stored in table wp_gf_form. Example:

$ select * from wp_gf_form;

+----+----------------+---------------------+--------------+-----------+----------+
| id | title          | date_created        | date_updated | is_active | is_trash |
+----+----------------+---------------------+--------------+-----------+----------+
|  1 | Contact form   | 2019-08-05 08:38:28 | NULL         |         0 |        0 |
|  3 | Selection Tool | 2020-12-23 09:01:02 | NULL         |         1 |        0 |
+----+----------------+---------------------+--------------+-----------+----------+

Fields:

* id             MEDIUMINT(10)   PK   NN   UN   AI
* title          VARCHAR(150)         NN
* date_created   DATETIME             NN
* data_updated   DATETIME                            Default: NULL
* is_active      TINYINT(10)          NN             Default: 1
* is_trash       TINYINT(10)          NN             Default: 0

Form definitions - wp_gf_form_meta

Volledige definities van formulieren vind je in tabel wp_gf_form_meta. Ik denk dat het JSON-code is. Voordeel boven reguliere serialised data: Het aantal bytes per veld is niet vastgelegd. Je kunt het dus veel gemakkelijker zelf bewerken. De verschillende kolommen:

  • form_id: Dezelfde formulier-ID als via de WP-CLI
  • display_meta: Lijkt dezelfde formulierdefinitie te zijn als die je krijgt via WP-CLI
  • entries_grid_meta: Onduidelijke serialised data - Heeft ogenschijnlijk gelukkig niets te maken met formulier zelf
  • confirmations: Complete definities van verzend-bevestigingen
  • notifications: Complete definities van de notificatie-emails die naar beheerders wordt gestuurd.

ReCAPTCHA add-on

Google's ReCAPTCHA can be integrated into forms:

After installation, the add-on does appear amongst plugins:

$ wp plugin list | grep gravity

gravityforms	        active	none	2.6.7
gravityformscli	        active	none	1.4
gravityformsrecaptcha	active	none	1.1

See also