mickey-kay / better-font-awesome-library
WordPress的更好Font Awesome库
- dev-master
- 2.0.3
- 2.0.2
- 2.0.1
- 2.0.0
- 2.0.0-beta7
- v2.0.0-beta6
- 2.0.0-beta5
- v2.0.0-beta4
- v2.0.0-beta3
- v2.0.0-beta2
- v2.0.0-beta1
- v2.0.0-beta
- 1.4.7
- v1.4.6
- v1.4.5
- v1.4.4
- dev-dependabot/npm_and_yarn/decode-uri-component-0.2.2
- dev-dependabot/npm_and_yarn/minimatch-3.0.8
- dev-dependabot/npm_and_yarn/getobject-1.0.2
- dev-dependabot/npm_and_yarn/grunt-1.5.3
- dev-dependabot/npm_and_yarn/path-parse-1.0.7
- dev-dependabot/npm_and_yarn/lodash-4.17.21
- dev-bugfix/version-fix
- dev-feature/js-support
- dev-bugfix/remove-test-code
- dev-bugfix/add-missing-files
- dev-feature/fa-5
- dev-update-deps
- dev-npm-build-spec
This package is auto-updated.
Last update: 2024-09-26 03:19:22 UTC
README
将Font Awesome集成到您的WordPress项目的最简单方法。
目录
简介
更好的Font Awesome库允许您自动将最新可用的Font Awesome版本集成到您的WordPress项目中,包括相应的CSS、短代码和TinyMCE图标短代码生成器。此外,它还生成您创建自定义功能所需的所有数据。
功能
- 自动获取最新可用的Font Awesome版本,这意味着您不再需要手动更新主题/插件中包含的版本。
- 生成一个易于使用的PHP对象,其中包含您正在使用的Font Awesome版本的有关所有相关信息,包括:版本、样式表URL、可用的图标数组和使用的前缀(
icon
或fa
)。 - CDN速度 - Font Awesome CSS从超级快速且可靠的jsDelivr CDN获取。
- 包含一个TinyMCE下拉短代码生成器。
- 包含Font Awesome的本地副本,以备远程获取失败时使用(或您可以使用
bfa_fallback_directory_path
过滤器指定自己的副本)。 - 使用transient优化速度和性能。
安装
建议通过Composer安装更好的Font Awesome库
composer require mickey-kay/better-font-awesome-library
或者,您可以选择手动安装库,这对于开发和/或自定义构建非常有用
git clone https://github.com/MickeyKay/better-font-awesome-library.git
cd better-font-awesome-library
npm run build
使用
-
将/better-font-awesome-library文件夹复制到您的项目中。
-
将以下代码添加到您的插件主文件或主题的functions.php文件中。
add_action( 'init', 'my_prefix_load_bfa' ); /** * Initialize the Better Font Awesome Library. * * (see usage notes below on proper hook priority) */ function my_prefix_load_bfa() { // Include the main library file. Make sure to modify the path to match your directory structure. require_once ( dirname( __FILE__ ) . '/better-font-awesome-library/better-font-awesome-library.php' ); // Set the library initialization args (defaults shown). $args = array( 'include_v4_shim' => false, 'remove_existing_fa' => false, 'load_styles' => true, 'load_admin_styles' => true, 'load_shortcode' => true, 'load_tinymce_plugin' => true, ); // Initialize the Better Font Awesome Library. Better_Font_Awesome_Library::get_instance( $args ); }
- 如果需要,可以使用更好的Font Awesome库对象手动包含Font Awesome CSS、输出可用图标列表、创建您自己的短代码等等。
使用说明
更好的Font Awesome库旨在与Better Font Awesome WordPress插件一起使用。插件在init
钩子(优先级5
)上初始化此库(使用自己的初始化参数)。当在项目中使用更好的Font Awesome库时,您有两个选项
- 稍后初始化,以确保任何Better Font Awesome插件设置覆盖您的设置(这是默认行为,如上所示,在
init
钩子上以默认优先级10
初始化库)。 - 尽早初始化,以“接管”并防止Better Font Awesome设置产生影响。
初始化参数($args)
以下参数可以用于使用Better_Font_Awesome_Library::get_instance( $args )
初始化库
$args['include_v4_shim']
(布尔值) 包含Font Awesome v4 shim CSS样式表以支持旧版图标。
true
false
(默认值)
$args['remove_existing_fa']
(布尔值) 尝试删除现有的Font Awesome样式和短代码。这可以防止与其他主题/插件冲突,但不能保证。
true
false
(默认值)
$args['load_styles']
(布尔值) 自动在网站的前端加载 Font Awesome CSS,使用 wp_enqueue_scripts()
。
true
(默认值)false
- 如果您不想在前端加载 Font Awesome CSS,或者希望自行加载,请使用此选项。
$args['load_admin_styles']
(布尔值) 使用 admin_enqueue_scripts()
自动在网站的 管理员 部分加载 Font Awesome CSS。
true
(默认值)false
- 如果您不想在管理员部分加载 Font Awesome CSS,或者希望自行加载,请使用此选项。
$args['load_shortcode']
(布尔值) 加载包含的 [icon]
快捷方式。
true
(默认值)false
load_tinymce_plugin
(布尔值) 加载可用的图标(基于活动 Font Awesome 版本)的 TinyMCE 下拉列表,并生成 [icon]
快捷方式。
true
(默认值)false
已弃用
$args['version'] (2.0.0)
现在库默认始终使用 Font Awesome 的最新可用版本。
(字符串) 您想使用的 Font Awesome 版本。
'latest'
(默认值)- 总是使用最新可用版本。'3.2.1'
- 任何现有的 Font Awesome 版本号。
$args['minified'] (2.0.0)
现在库默认始终使用压缩 CSS。
(布尔值) 使用压缩的 Font Awesome CSS。
true
(默认值)- 使用压缩 CSS。false
- 使用未压缩 CSS。
短代码
如果将 $args['load_shortcode']
或 $args['load_tinymce_plugin']
初始化参数设置为 true
,则 Better Font Awesome Library 将包含一个 [icon]
快捷方式,可以使用以下方式使用
[icon name="star" class="2x spin" unprefixed_class="my-custom-class"]
名称
无前缀的图标名称(例如,star)。版本特定的前缀将自动添加。
类
无前缀的 Font Awesome 图标类。版本特定的前缀将自动添加到每个类。
无前缀_class
您希望保留无前缀的任何其他类(例如,my-custom-class)。
样式
要使用的特定图标样式(例如,brand 与 solid)。
快捷方式输出
以下快捷方式
[icon name="moon" style="solid" class="2x spin" unprefixed_class="my-custom-class"]
. . . 将生成以下 HTML
<i class="fas fa-moon fa-2x fa-spin my-custom-class "></i>
更好的Font Awesome库对象
可以使用以下代码访问 Better Font Awesome Library 对象:Better_Font_Awesome_Library::get_instance();
该对象有以下公共方法
get_version()
(字符串) 返回正在使用的 Font Awesome 的活动版本。
get_stylesheet_url()
(字符串) 返回 Font Awesome 样式表 URL。
get_stylesheet_url_v4_shim()
(字符串) 返回 Font Awesome v4 shim 样式表 URL。
get_icons()
(数组) 返回关联数组,包含活动 Font Awesome 版本中所有可用图标的十六进制值(索引,例如 \f000)和无前缀图标名称(值,例如 rocket)。
get_release_icons()
(数组) 返回与 Font Awesome GraphQL API 提供的格式完全相同的图标数据。
get_release_assets()
(数组) 返回最新 Font Awesome 版本的图标资产(CSS/JS)数据。
get_prefix()
(字符串) 返回用于图标 CSS 类的版本相关前缀('fa' 或 'icon')。
get_errors()
(数组) 返回所有库错误,包括 API 和 CDN 获取失败。
已弃用
get_api_data() (2.0.0)
现在库不再依赖于 jsDelivr CDN。
(对象) 返回远程 jsDelivr CDN 的版本数据(使用 jsDelivr API)。包括所有可用版本和最新版本。
示例
// Initialize the library with custom args. Better_Font_Awesome_Library::get_instance( $args ); // Get the active Better Font Awesome Library Object. $my_bfa = Better_Font_Awesome_Library::get_instance(); // Get info on the Better Font Awesome Library object. $version = $my_bfa->get_version(); $stylesheet_url = $my_bfa->get_stylesheet_url(); $prefix = $my_bfa->get_prefix(); $icons = $my_bfa->get_icons(); // Output all available icons. foreach ( $icons as $icon ) { echo $icon . '<br />'; }
过滤器
Better Font Awesome Library 应用以下过滤器
bfa_init_args
在解析默认参数后应用,但在使用它们获取任何 Font Awesome 数据之前。
参数
$init_args
(数组)
bfa_wp_remote_get_args
应用于所有 wp_remote_get()
调用的参数(如果需要,可以用来调整超时)。
参数
$wp_remote_get_args
(数组)
bfa_fallback_release_data_path
应用于回退发布数据 JSON 文件的路径。可以用来指定替代回退数据文件。
参数
$fallback_release_data_path
(字符串)
bfa_release_data_transient_expiration
该值控制插件多久检查一次 Font Awesome 的最新更新版本。可以用来增加/减少检查频率。
参数
$api_expiration
(整数) (默认:WEEK_IN_SECONDS
)
bfa_icon_list
应用于从 Font Awesome 样式表中生成的图标数组,在将其分配给 Better Font Awesome Library 对象的 $icons
属性之前。
参数
$icons
(数组)
bfa_icon_class
应用于每个图标 <i>
元素输出的类。
参数
$class
(字符串)
bfa_icon_tag
应用于每个图标输出的标签。默认是 'i',输出 <i>
。
参数
$tag
(字符串)
bfa_icon
应用于为每个图标输出的整个 <i>
元素。
参数
$output
(字符串)
bfa_show_errors
应用于布尔值,以确定是否抑制在管理员中通常显示的所有 Font Awesome 警告。
参数
$show_errors
(true)
已弃用
bfa_fallback_directory_path
现在已被类似的 bfa_fallback_release_data_path
过滤器替换。 在设置任何回退 CSS 信息之前应用于回退目录路径。可以用来指定替代回退目录以替换默认回退目录。
路径必须指向本地非远程目录。
参数
$path
(字符串)
bfa_api_transient_expiration (2.0.0)
这些数据现在来自 GraphQL API。新的 bfa_release_data_transient_expiration
替换了此旧过滤器。
应用于 API(版本信息)瞬态 过期。可以用来增加/减少过期时间。
参数
$api_expiration
(整数)
bfa_css_transient_expiration (2.0.0)
这些数据现在不再必要。
应用于 CSS 样式表数据瞬态 过期。可以用来增加/减少过期时间。
参数
$css_expiration
(整数)
bfa_force_fallback (2.0.0)
不应再需要强制回退。
应用于布尔值,以确定是否强制加载包含的 Font Awesome 回退版本。如果遇到延迟或超时问题,这可能很有用。
参数
$force_fallback
(false)
bfa_prefix (2.0.0)
由于 v5+ 的更新,始终无需修改图标前缀。
应用于在将其分配给 Better Font Awesome Library 对象的 $prefix
属性之前 Font Awesome 前缀('fa' 或 'icon')。
参数
$prefix
(字符串)
待办事项
有想法吗?提交问题或添加拉取请求!
- 添加关于手动更新回退版本的 README 部分。
- 移除现有的 FA? - 移动到更晚的钩子,使其能够通过短代码(基本上是 wp_footer)工作
致谢
特别感谢以下人员和他们的插件,为灵感和支持
- Font Awesome Icons by Rachel Baker
- Font Awesome More Icons by Web Guys
- Font Awesome Shortcodes by FoolsRun
- 德米特里·阿库洛夫和jsDelivr的超级团队jsDelivr
还要感谢以下帮助测试和品质保证的各位