Not with a setting. GeoDirectory moderates new listings only: New listing default status at GeoDirectory > Settings > General decides whether a new listing is published straight away or waits as Pending. When the owner edits a listing that is already published, it keeps its status and the changes show as soon as they save.
It works this way because sending a published listing back to Pending takes it off the site. Its page and links stop working until you approve it again, which hurts visitors and search engines.
Get an email when a listing is edited
- Go to GeoDirectory > Settings > Emails > Admin emails.
- Under Listing edited, tick Enable email.
- Edit the subject and body if you like, and save.
You then get an email each time a user edits a listing (not when an admin does), so you can check the change and fix or unpublish it. To send these emails to another address, see changing the recipient of admin notification emails.
Force edits back to Pending
If you accept that edited listings go offline until approved, this snippet sets a published listing to Pending whenever someone other than an admin saves it from the front end. Add it with the Code Snippets plugin or in your child theme’s functions.php.
/**
* Send published GeoDirectory listings back to Pending when a non-admin edits them.
*/
function my_gd_edits_need_approval( $post_data, $is_revision ) {
if ( ! current_user_can( 'manage_options' ) && ! empty( $post_data['ID'] ) && get_post_status( $post_data['ID'] ) === 'publish' ) {
$post_data['post_status'] = 'pending';
}
return $post_data;
}
add_filter( 'geodir_ajax_update_post_data', 'my_gd_edits_need_approval', 10, 2 );
Approve the listing again by publishing it in the backend. For the rest of the moderation workflow see Guide to moderating listings.