Skip to content

Instantly share code, notes, and snippets.

View tillkruss's full-sized avatar
🏠
Working from home

Till Krüss tillkruss

🏠
Working from home
View GitHub Profile
@tillkruss
tillkruss / disable-search.php
Last active July 6, 2020 10:30
Disable WordPress front-end search functionality.
<?php
if ( ! is_admin() ) {
add_action( 'parse_query', function( $query ) {
if ( $query->is_search ) {
unset( $_GET['s'], $_POST['s'], $_REQUEST['s'] );
$query->set( 's', '' );
$query->is_search = false;
$query->set_404();
header( $_SERVER[ 'SERVER_PROTOCOL' ] . ' 404 Not Found' );
@tillkruss
tillkruss / disable-feeds.php
Last active December 11, 2015 18:09
Disable all WordPress feeds.
<?php
add_action( 'do_feed_rdf', function() { wp_redirect( home_url(), 301 ); exit; }, 1);
add_action( 'do_feed_rss', function() { wp_redirect( home_url(), 301 ); exit; }, 1);
add_action( 'do_feed_rss2', function() { wp_redirect( home_url(), 301 ); exit; }, 1);
add_action( 'do_feed_atom', function() { wp_redirect( home_url(), 301 ); exit; }, 1);
add_action( 'init', function() {
remove_action( 'wp_head', 'feed_links', 2 );
remove_action( 'wp_head', 'feed_links_extra', 3 );
});
@tillkruss
tillkruss / image-link-type.php
Last active December 22, 2017 01:03
Change default "image link" type in WordPress.
@tillkruss
tillkruss / gist:4616592
Last active December 11, 2015 14:48
Force disable WordPress developer plugins in production environments. Depended on WP_STAGE constant. Use as MU plugin.
<?php
/*
Plugin Name: Disable Developer Plugins
Description: Force disables developer plugins in production environments.
*/
$dev_plugins = array(
'debug-bar/debug-bar.php',
'debug-bar-cron/debug-bar-cron.php',
'debug-bar-extender/debug-bar-extender.php',
@tillkruss
tillkruss / filename-based-cache-busting.php
Last active January 23, 2018 02:30
Filename-based cache busting for WordPress.
<?php
// changes CSS and JavaScript URLs from `css/style.css?ver=1.3.3.7` to `css/style.1.3.3.7.css`
if ( ! is_admin() ) {
foreach ( array( 'style_loader_src', 'script_loader_src' ) as $filter ) {
add_filter( $filter, function( $url ) {
// abort if `$url` doesn't start with `WP_CONTENT_URL`