Skip to content

Instantly share code, notes, and snippets.

View Tabrisrp's full-sized avatar

Rémy Perona Tabrisrp

View GitHub Profile
@Tabrisrp
Tabrisrp / rocket-clean-cache-after-order.php
Last active January 9, 2024 18:31
Clear WP Rocket cache after an order is made
<?php
/**
* Plugin Name: WP Rocket clean post cache after WC order
* Description: Clean the cache for each product ordered after a completed WooCommerce order
* Author: WP Rocket team
* License: GNU General Public License v3 or later
* License URI: http://www.gnu.org/licenses/gpl-3.0.html
*/
// Basic security, prevents file from being loaded directly.
<?php
$user_agent = $_SERVER['HTTP_USER_AGENT'];
if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'WP-Rocket' ) === false ) {
if ( strpos( $_SERVER['HTTP_X_ROCKET'], 'WP-Rocket' ) === false ) {
die( 'BAD_UA_XR: ' . ( isset( $_SERVER['HTTP_USER_AGENT'] ) ? htmlspecialchars( $_SERVER['HTTP_USER_AGENT'] ) : 'not set' ) . ' & ' . ( isset( $_SERVER['HTTP_X_ROCKET'] ) ? htmlspecialchars( $_SERVER['HTTP_X_ROCKET'] ) : 'not set' ) );
}
$user_agent = $_SERVER['HTTP_X_ROCKET'];
}
@Tabrisrp
Tabrisrp / gist:8fd06872d1b9f0971296
Created April 14, 2015 14:48
WordPress customizer custom tinymce control javascript
( function( $ ) {
wp.customizerCtrlEditor = {
init: function() {
$(window).load(function(){
$('textarea.wp-editor-area').each(function(){
var tArea = $(this),
id = tArea.attr('id'),
@Tabrisrp
Tabrisrp / gist:d81457723533c5ebcbce
Created April 14, 2015 14:52
WordPress customizer_register TinyMCE control
function register_theme_customizer() {
$wp_customize->add_section( 'editor', array(
'title' => 'Editeur',
'description' => 'Editeur TinyMCE',
'priority' => 300
) );
$wp_customize->add_setting( 'theme[editor_content]', array(
'default' => '',
'transport' => 'postMessage',
@Tabrisrp
Tabrisrp / gist:13348dbcd2bbb0d9406f
Created April 14, 2015 14:32
WordPress customizer custom tinymce control
class Text_Editor_Custom_Control extends WP_Customize_Control
{
public $type = 'textarea';
/**
** Render the content on the theme customizer page
*/
public function render_content() { ?>
<label>
<span class="customize-control-title"><?php echo esc_html( $this->label ); ?></span>
<?php
@Tabrisrp
Tabrisrp / remove-wpr-admin-bar-menu.php
Last active January 2, 2022 09:12
Remove WP Rocket Admin Bar Menu
add_action( 'wp_rocket_loaded', function() {
remove_action( 'admin_bar_menu', 'rocket_admin_bar', PHP_INT_MAX );
} );
// Exclude page from cache but keep optimizations.
add_action( 'wp_rocket_loaded', function() {
// Exclude post type with ID = 1.
if ( is_single(1) ) {
add_filter( 'do_rocket_generate_caching_files', '__return_false' );
}
} );
@Tabrisrp
Tabrisrp / clean-domain-post-publish.php
Created November 30, 2018 16:05
Clean domain on post publish
add_action( 'wp_rocket_loaded', function() {
add_action( 'clean_post_cache', function( $post_id ) {
rocket_clean_domain();
} );
} );
@Tabrisrp
Tabrisrp / remove-powered-by.php
Created November 26, 2018 17:04
Remove X-Powered-By
add_filter( 'rocket_htaccess_files_match', function( $rules ) {
$rules = '<IfModule mod_alias.c>' . PHP_EOL;
$rules .= '<FilesMatch "\.(html|htm|rtf|rtx|txt|xsd|xsl|xml)$">' . PHP_EOL;
$rules .= '<IfModule mod_headers.c>' . PHP_EOL;
$rules .= 'Header unset Pragma' . PHP_EOL;
$rules .= 'Header append Cache-Control "public"' . PHP_EOL;
$rules .= 'Header unset Last-Modified' . PHP_EOL;
$rules .= '</IfModule>' . PHP_EOL;
$rules .= '</FilesMatch>' . PHP_EOL . PHP_EOL;
$rules .= '<FilesMatch "\.(css|htc|js|asf|asx|wax|wmv|wmx|avi|bmp|class|divx|doc|docx|eot|exe|gif|gz|gzip|ico|jpg|jpeg|jpe|json|mdb|mid|midi|mov|qt|mp3|m4a|mp4|m4v|mpeg|mpg|mpe|mpp|otf|odb|odc|odf|odg|odp|ods|odt|ogg|pdf|png|pot|pps|ppt|pptx|ra|ram|svg|svgz|swf|tar|tif|tiff|ttf|ttc|wav|wma|wri|xla|xls|xlsx|xlt|xlw|zip)$">' . PHP_EOL;
@Tabrisrp
Tabrisrp / mobile-cache-file-tablet.php
Created November 8, 2018 13:30
Serve mobile cache files to tablet
add_filter( 'rocket_cache_mobile_files_tablet', function( $version ) {
return 'mobile';
} );