Is there any danger in deleting all transients?

For development I would advise to always work with WP_DEBUG set to true and do the following: $key = ‘transient_key’; if( !WP_DEBUG && ( false !== ($transient = get_transient($key)) ){ /* Generate transient manually */ $expiration = 24*60*60;//How long to keep for set_transient($key,$transient, $expiration); } In general – it should be fine deleting transients, as … Read more

Prevent WordPress from sending Cache-control http header

Thanks to @chrisguitarguy’s answer, you can control the http headers sent by WordPress via the “send_headers” hook. Here is the function I added to my theme’s functions.php file, and that solved the issue with the Varnish server. function varnish_safe_http_headers() { header( ‘X-UA-Compatible: IE=edge,chrome=1’ ); session_cache_limiter(”); header(“Cache-Control: public, s-maxage=120”); if( !session_id() ) { session_start(); } } … Read more

Getting failure when using filemtime() with wp_enqueue_style

It’s because you’re retrieving it via URL, but filemtime() requires a path. Use get_stylesheet_directory() instead. That returns a path: function pro_styles() { wp_enqueue_style( ‘child-style’, get_stylesheet_directory_uri() .’/child-style.css’, array(), filemtime(get_stylesheet_directory() .’/child-style.css’), ‘all’ ); } add_action( ‘wp_enqueue_scripts’, ‘pro_styles’ );

Forcing reload of editor-style.css

There is a hook for that: ‘mce_css’. It is called in _WP_Editors::editor_settings() and you get all loaded stylesheets comma separated as the first and only parameter. Now it is easy: Use the global variable $editor_styles (here are your theme’s and parent theme’s editor stylesheets stored already), add the time of the file’s last modification as … Read more

How to cache bust a child theme style.css

@dalbaeb’s comment eventually lead to insightful discussions and a feasible solution. Thanks a lot! I believe the reason my child theme CSS was loaded using ‘ver=<parent-theme-version> was because I had followed the WP Codex on child themes 1:1. My functions.php contained this: add_action(‘wp_enqueue_scripts’, ‘theme_enqueue_styles’); function theme_enqueue_styles() { wp_enqueue_style(‘parent-style’, get_template_directory_uri() . ‘/style.css’); } The code I … Read more