Plugin Directory

Test out the new Plugin Directory and let us know what you think.

Gravity Forms: Post Updates

Allows you to use Gravity Forms to update any post on the front end.

Requires PHP 5.3 or greater

Allows you to use Gravity Forms to update any post on the front end. If you use the "Gravity Forms + Custom Post Types", you can even update custom post types and use custom taxonomies.


  • Supports custom field file uploading and deletion with thumbnails or mime type icons for existing items.
  • Fixed a bugs on multi selects and checkboxes.
  • Fixed bug on Categories.
  • Completely removed the ability to delete posts.
  • There are some filters to customize things now.
  • Adds non-query-var template method to setup a form.
  • Adds a really basic shortcode to setup a form (UPDATE: This is still supported, but it is better to use the addition, below, to the gravityform shortcode).
  • Adds an additional attribute to the gravityform shortcode: "update"


[gravityform id="1" update] // Loads current post for editing
[gravityform id="1" update="34"] // Loads post where ID=34 for editing

We worked with Rocketgenius, makers of Gravity Forms, to get a small upgrade added that allows us to extend their shortcode, so now you can simply add the "update" attribute to the normal "gravityform" shortcode. If you only add "update", it will load the current post in to update. If you add an integer to the update attribute, it will use that to load a post by its ID.


  1. At the heart, it is pretty similar to how it was, but now there is a nonce required to activate it.
  2. So you should use the action to create your links.
do_action('gform_update_post/edit_link', array(
    'post_id' => $post->ID,
    'url'     => home_url('/edit_post/'),
) );

Arguments (query string or array)

  • post_id (int) (optional) The id of the post you want to edit. Default: global $post->ID
  • url (string|int) (optional) Either the full url of the page where your edit form resides, or an id for the page/post where the edit form resides. Default: get_permalink()
  • text (string) (optional) The link text. Default: "Edit Post"
  • title (string) (optional) The title attribute of the anchor tag. Default: (text) parameter

Get just the URL

This will return a basic edit url

apply_filters('gform_update_post/edit_url', '');

Specify post to edit (post_id) and post that holds the edit form (url)

apply_filters('gform_update_post/edit_url', 1, home_url('/edit_post/'));

Shortcode to show the edit link


Specify post to edit (post_id) and post that holds the edit form (url)

[gform_update_post_edit_link post_id=1 url=6]


You can use the action to force a form show a specific post:

do_action('gform_update_post/setup_form', $post->ID);
do_action('gform_update_post/setup_form', array('post_id' => $post->ID, 'form_id' => $form_id));


  • post_id (int|array) (optional) The id of the post you want to edit or an array with post id and/or form id. This allows you to specify the form id, so that update functionality does not get applied to other forms on the page. Default: global $post->ID

Requires: 3.6.1 or higher
Compatible up to: 4.2.13
Last Updated: 2 years ago
Active Installs: 1,000+


4.8 out of 5 stars


Got something to say? Need help?


Not enough data

0 people say it works.
0 people say it's broken.

100,1,1 100,1,1