oberonlai / wp-asset
wp_enqueue_scripts 的便捷工具。
v1.0.3
2021-11-27 04:15 UTC
Requires
- php: >=7.2
This package is auto-updated.
Last update: 2024-09-27 10:46:44 UTC
README
一个简单的WordPress类,用于包含脚本和样式,由 WP_Register 修改而来
要求
安装
使用Composer安装
在终端中运行以下命令以使用 Composer 安装。
$ composer require oberonlai/wp-asset
WP Option PSR-4 自动加载,并可以使用Composer的自动加载器。以下是基本入门示例,但您的设置可能因使用Composer的方式而有所不同。
require __DIR__ . '/vendor/autoload.php'; use ODS\Asset; Asset::addScript();
请参阅Composer的 基本使用 指南,了解有关使用Composer和自动加载的详细信息。
基本用法
以下是enqueue JavaScript和CSS的基本示例。
require __DIR__ . '/vendor/autoload.php'; use ODS\Asset; add_action( 'init', function() { Asset::addScript( array( 'name' => 'my_script', 'url' => YOUR_PLUGIN_URL . 'assets/js/script.js', 'deps' => array( 'jquery' ), 'version' => YOUR_PLUGIN_VERSION, 'footer' => true, 'ajax' => false, 'admin' => false, 'params' => array() ) ) Asset::addStyle( array( 'name' => 'my_style', 'url' => YOUR_PLUGIN_URL . 'assets/css/style.css', 'version' => YOUR_PLUGIN_VERSION, 'deps' => array(), ) ) } );
在init钩子或WordPress API中调用对象时不起作用。
可用属性
注册Ajax JavaScript
当将ajax设置为true时,WP-Asset将帮助您自动生成变量ajax_url和ajax_nonce。
Asset::addScript( array( 'name' => 'my_ajax', 'url' => YOUR_PLUGIN_URL . 'assets/js/ajax.js', 'deps' => array( 'jquery' ), 'version' => YOUR_PLUGIN_VERSION, 'footer' => true, 'ajax' => true, 'params' => array( 'data1' => 'my_data_1', 'data2' => 'my_data_2', ) ) )
添加上述脚本后,您可以在脚本之前看到JS变量。
<script id="my_ajax-js-extra"> var my_ajax = {"data1":"my_data_1","data2":"my_data_2","ajax_url":"https:\/\/local.test\/wp-admin\/admin-ajax.php?action=my_ajax","ajax_nonce":"fead4137e4"}; </script>
您可以直接在脚本中使用ajax_url和ajax_nonce。
jQuery(function($){ $(document).ready(function(){ $('#btn').on('click',function(){ var data = { action: "my_ajax", nonce: my_ajax.ajax_nonce, }; $.ajax({ url: my_ajax.ajax_url, data: data, type: 'POST', dataType: "json", success: function(data){ console.log(data); }, error: function(data){ console.log(data); } }) }) }) })