Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 52 additions & 0 deletions admin/class-purger.php
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,58 @@ public function purge_post_on_comment( $comment_id, $comment ) {

}

/**
* Purge cache when a post is being deleted (including force delete).
*
* @global object $nginx_helper_admin Nginx helper admin object.
* @global string $blog_id Blog id.
*
* @param int $post_id Post ID.
* @param WP_Post $post Post object.
*
* @return bool|void
*/
public function purge_on_before_delete_post( $post_id, $post ) {

global $nginx_helper_admin, $blog_id;

if ( ! $nginx_helper_admin->options['enable_purge'] ) {
return;
}

// Check if the post is not already in trash (force delete case).
if ( 'trash' !== $post->post_status && 'publish' === $post->post_status ) {

$exclude_post_types = apply_filters( 'rt_nginx_helper_exclude_post_types', array( 'nav_menu_item', 'revision' ) );

if ( in_array( $post->post_type, $exclude_post_types, true ) ) {
return;
}

$this->log( '# # # # #' );
$this->log( "# Post '$post->post_title' ( id " . $post->ID . ' ) force deleted.' );
$this->log( '# # # # #' );
$this->log( 'Function purge_on_before_delete_post ( post id ' . $post->ID . ' ) BEGIN ===' );

if ( 1 === (int) $nginx_helper_admin->options['purge_homepage_on_del'] ) {
$this->_purge_homepage();
}

$this->_purge_by_options(
$post->ID,
$blog_id,
true,
$nginx_helper_admin->options['purge_archive_on_del'],
$nginx_helper_admin->options['purge_archive_on_del']
);

$this->log( 'Function purge_on_before_delete_post ( post id ' . $post->ID . ' ) END ===' );
}

return true;

}

/**
* Purge post cache on comment change.
*
Expand Down
1 change: 1 addition & 0 deletions includes/class-nginx-helper.php
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,7 @@ private function define_admin_hooks() {
$this->loader->add_action( 'edit_attachment', $nginx_purger, 'purge_image_on_edit', 100, 1 );
$this->loader->add_action( 'wpmu_new_blog', $nginx_helper_admin, 'update_new_blog_options', 10, 1 );
$this->loader->add_action( 'transition_post_status', $nginx_purger, 'purge_on_post_moved_to_trash', 20, 3 );
$this->loader->add_action( 'before_delete_post', $nginx_purger, 'purge_on_before_delete_post', 20, 2 );
$this->loader->add_action( 'edit_term', $nginx_purger, 'purge_on_term_taxonomy_edited', 20, 3 );
$this->loader->add_action( 'delete_term', $nginx_purger, 'purge_on_term_taxonomy_edited', 20, 3 );
$this->loader->add_action( 'check_ajax_referer', $nginx_purger, 'purge_on_check_ajax_referer', 20 );
Expand Down
Loading