Skip to content

Instantly share code, notes, and snippets.

@AysadKozanoglu
Created May 30, 2019 19:25
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save AysadKozanoglu/1b3dfe4c4664bd05fa736b5bd5ff3e83 to your computer and use it in GitHub Desktop.
Save AysadKozanoglu/1b3dfe4c4664bd05fa736b5bd5ff3e83 to your computer and use it in GitHub Desktop.
Disable admin-ajax on the front-end of WordPress sites and cache the resulting 404.
<?php
if(
strpos( $_SERVER['HTTP_REFERER'], 'wp-admin' ) === false &&
strpos( $_SERVER['REQUEST_URI'], 'admin-ajax.php' ) !== false
) {
header( 'Cache-Control: max-age=30000, must-revalidate' );
header( 'Expires: ' . gmdate( 'D, d M Y H:i:s', strtotime( '+5000 minutes' ) ) . ' GMT' );
header( 'Last-Modified: ' . gmdate( 'D, d M Y H:i:s', strtotime( '-5000 minutes' ) ) . ' GMT' );
header( $_SERVER["SERVER_PROTOCOL"]." 404 Not Found" );
die;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment