Skip to content

Instantly share code, notes, and snippets.

@kopepasah
Last active December 11, 2015 21:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kopepasah/4665849 to your computer and use it in GitHub Desktop.
Save kopepasah/4665849 to your computer and use it in GitHub Desktop.
Use LESS in a live WordPress theme.
<?php
if ( ! function_exists( 'less_filter_stylesheet_uri' ) ) {
function less_filter_stylesheet_uri( $stylesheet_uri, $stylesheet_dir_uri ) {
$current_user = wp_get_current_user();
if ( $current_user->ID == '1' )
$src = $stylesheet_dir_uri . '/style.less';
else
$src = $stylesheet_dir_uri . '/style.min.css';
return $src;
}
add_filter( 'stylesheet_uri', 'less_filter_stylesheet_uri', 10, 2 );
}
<?php
if ( ! function_exists( 'less_add_theme_stylesheet' ) ) {
function less_add_theme_stylesheet() {
$current_user = wp_get_current_user();
if ( ! builder_disable_theme_stylesheets() ) {
if ( $current_user->ID == '1' )
echo '<link rel="stylesheet/less" href="' . get_stylesheet_uri() . '" type="text/css" media="screen" />' . "\n";
else
echo '<link rel="stylesheet" href="' . get_stylesheet_uri() . '" type="text/css" media="screen" />' . "\n";
}
}
add_action( 'builder_add_stylesheets', 'less_add_theme_stylesheet', 0 );
}
<?php
if ( ! function_exists( 'less_enqueue_scripts' ) ) {
function less_enqueue_scripts() {
$current_user = wp_get_current_user();
/**
* Let's enqueue less to use in the for me
* only. That is user ID 1 or user kopepasah.
*/
if ( $current_user->ID == '1' )
wp_enqueue_script( 'lesscss', get_stylesheet_directory_uri() . '/js/less.min.js' );
}
add_action( 'wp_enqueue_scripts', 'less_enqueue_scripts' );
}
<?php
if ( ! function_exists( 'less_remove_stylesheets' ) ) {
function less_remove_stylesheets() {
remove_action( 'builder_add_stylesheets', 'builder_add_theme_stylesheet', 0 );
}
add_action( 'init', 'less_remove_stylesheets' );
}
lessc --yui-compress style.less > style.min.css
<?php
$current_user = wp_get_current_user();
if ( $current_user->ID == '1' )
echo '<link rel="stylesheet/less" href="' . get_stylesheet_uri() . '" type="text/css" media="screen" />' . "\n";
else
echo '<link rel="stylesheet" href="' . get_stylesheet_uri() . '" type="text/css" media="screen" />' . "\n";
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment