icit / wp-less
提供与wp_enqueue_style()兼容的LESS编译器,用于快速在主题和插件中进行CSS开发。
Requires
- php: >5.2.4
- composer/installers: ~1.0
- leafo/lessphp: 0.4.0
This package is not auto-updated.
Last update: 2024-09-14 16:29:21 UTC
README
LESS是一个抽象层,它为CSS添加了一些非常强大的功能。它将加快您的开发过程,使您的生活更加轻松。从下面的链接中了解更多信息,然后返回。
该插件允许您直接编写和编辑.less
文件,由WordPress完成编译和缓存结果的CSS。它消除了在部署之前必须自己将.less
文件编译成CSS的额外步骤。
安装
如果您正在使用git克隆仓库,请执行以下操作
git clone git://github.com/sanchothefat/wp-less.git wp-less
如果您正在下载.zip
或.tar
,别忘了下载lessphp依赖项并将其复制到vendor/leafo/lessphp
目录。
然后使用以下命令安装lessphp依赖项
composer install
或者,将"icit/wp-less"添加到您的composer.json中,并添加此git仓库,例如。
{
"repositories": [
{
"type": "git",
"url": "https://github.com/sanchothefat/wp-less.git"
}
],
"require": {
"icit/wp-less": "dev-master"
}
}
用法
您可以将脚本作为标准插件安装,也可以将其作为主题或插件中的包含文件使用。
对于与主题一起使用,请将以下行添加到您的functions.php中
<?php // Include the class (unless you are using the script as a plugin) require_once( 'wp-less/wp-less.php' ); // enqueue a .less style sheet if ( ! is_admin() ) wp_enqueue_style( 'style', get_stylesheet_directory_uri() . '/style.less' ); // you can also use .less files as mce editor style sheets add_editor_style( 'editor-style.less' );
任何具有.less
后缀的已注册样式都会被编译,并重写文件URL。
您不需要在header.php
中包含到主样式表的链接。只需确保在文档头部调用wp_head()
即可。
支持所有标准LESS功能以及文件内的任何位置的@import
规则。
从PHP传递变量
您可以使用less_vars
钩子或将PHP接口部分中定义的函数传递到您的.less
文件中。
<?php // pass variables into all .less files add_filter( 'less_vars', 'my_less_vars', 10, 2 ); function my_less_vars( $vars, $handle ) { // $handle is a reference to the handle used with wp_enqueue_style() $vars[ 'color' ] = '#000000'; return $vars; } ?>
在您的.less
文件中,您可以使用变量,就像您在样式表中声明它一样。例如。
body { color: @color; }
默认变量
有2个默认变量您可以使用而不用担心上述代码
@themeurl
是当前主题目录的URL
body { background-image: url(@{themeurl}/images/background.png); }
@lessurl
是已排队的LESS文件的URL(这不会在导入文件内更改)
.plugin-title { background-image: url(@{lessurl}/images/icon.png); }
@lessurl
在您有插件或其他非主题文件夹位置中的.less文件时非常有用。
使用这些变量非常重要,因为您不能使用相对路径——编译后的CSS存储在上传文件夹中,因为它是唯一可以保证在给定的WordPress安装中能够写入的地方。因此,相对URL将损坏。
PHP接口
register_less_function()
允许您创建额外的less编译器函数,用于在您的样式表中使用,而无需自己触摸lessc
类。
register_less_function( 'double', function( $args ) { list( $type, $value, $unit ) = $args; return array( $type, $value*2, $unit ); } );
unregister_less_function()
以类似的方式工作,但它取消注册通过名称传递给它的任何编译器函数。
unregister_less_function( 'double' );
add_less_var()
使创建或修改传递给编译器的变量变得容易。两个参数都应该是字符串,因为lessc
将确定变量的类型。
add_less_var( 'brandcolour', '#ec6704' );
remove_less_var()
是add_less_var()
的反义词,只需要变量名来删除。
remove_less_var( 'brandcolour' );
进一步阅读
贡献者
感谢那些贡献和讨论帮助改进此插件的贡献者。
许可协议
本软件遵循MIT 许可协议进行许可。