Registrar, minificar y unificar recursos CSS y JavaScript en WordPress.
Esta biblioteca es soportada por versiones de PHP 5.6 o superiores y es compatible con versiones de HHVM 3.0 o superiores.
La mejor forma de instalar esta extensión es a través de Composer.
Para instalar PHP WP_Register library, simplemente escribe:
composer require josantonius/wp-register
El comando anterior sólo instalará los archivos necesarios, si prefieres descargar todo el código fuente puedes utilizar:
composer require josantonius/wp-register --prefer-source
También puedes clonar el repositorio completo con Git:
git clone https://github.com/josantonius/wp-register.git
O instalarlo manualmente:
wget https://raw.githubusercontent.com/josantonius/wp-register/master/src/class-wp-register.php
Métodos disponibles en esta biblioteca:
WP_Register::add($type, $data);
Atributo | Descripción | Tipo | Requerido | Predeterminado |
---|---|---|---|---|
$type | 'script' o 'style' | string | Sí |
Atributo | clave | Descripción | Tipo | Requerido | Predeterminado |
---|---|---|---|---|---|
$data | Settings | array | Sí | ||
name | ID único | string | Sí | ||
url | URL del archivo | string | Sí | ||
version | Versión | string | No | false | |
footer | Solo para scripts - Fijar en footer | boolean | No | true | |
attr | Solo para scripts - Atributo (defer/sync) | string | No |
@return → boolean
WP_Register::unify($id, $params, $minify);
Atributo | Descripción | Tipo de dato | Requerido | Por defecto |
---|---|---|---|---|
$id | Action hook name | string | Yes | |
$params | Path urls | mixed | Yes | |
$minify | Minimize file content | boolean | No | false |
@return → boolean true
WP_Register::is_added($type, $name);
Atributo | Descripción | Tipo de dato | Requerido | Por defecto |
---|---|---|---|---|
$type | 'script' or 'style' | string | Yes | |
$name | Script or style ID | string | Yes |
@return → boolean
WP_Register::is_added($type, $name);
Atributo | Descripción | Tipo de dato | Requerido | Por defecto |
---|---|---|---|---|
$type | 'script' or 'style' | string | Yes | |
$name | Script or style ID | string | Yes |
@return → boolean true
Para utilizar esta clase con Composer:
require __DIR__ . '/vendor/autoload.php';
use Josantonius\WP_Register;
Si la instalaste manualmente, utiliza:
require_once __DIR__ . '/class-wp-register.php';
use Josantonius\WP_Register\WP_Register;
Ejemplo de uso para esta biblioteca:
WP_Register::add('script', [
'name' => 'HTML_script',
'url' => 'http://josantonius.com/js/html5.js'
]);
WP_Register::add('script', [
'name' => 'NavigationScript',
'url' => 'http://josantonius.com/js/navigation.js',
'place' => 'admin',
'deps' => ['jquery'],
'version' => '1.1.3',
'footer' => true,
'params' => ['date' => date('now')],
]);
Adicionalmente se crea un nonce para cada script utilizando su nombre. En este ejemplo, sería accesible desde JavaScript utilizando NavigationScript.nonce
.
wp_verify_nonce($nonce, 'NavigationScript');
En el caso de scripts creados desde plugins se guarda como parámetro la ruta del directorio de plugins. En este ejemplo, seríá accesible desde JavaScript utilizando NavigationScript.pluginUrl
.
WP_Register::add('style', [
'name' => 'EditorStyle',
'url' => 'http://josantonius.com/js/editor-style.css'
]);
WP_Register::add('style', [
'name' => 'DefaultStyle',
'url' => 'http://josantonius.com/js/style.css',
'place' => 'admin',
'deps' => [],
'version' => '1.1.3',
'media' => 'all'
])
WP_Register::unify('UniqueID', 'http://josantonius.com/min/');
WP_Register::unify('UniqueID', 'http://josantonius.com/min/', true);
- Unificar especificando diferentes urls para las rutas donde se guardarán los estilos y los scripts
WP_Register::unify('UniqueID', [
'styles' => 'http://josantonius.com/min/css/',
'scripts' => 'http://josantonius.com/min/js/'
]);
- Unificar y minimizar especificando diferentes urls para las rutas donde se guardarán los estilos y los scripts
WP_Register::unify('UniqueID', [
'styles' => 'http://josantonius.com/min/css/',
'scripts' => 'http://josantonius.com/min/js/'
], true);
WP_Register::is_added('script', 'HTML_script');
WP_Register::is_added('script', 'NavigationScript');
WP_Register::is_added('style', 'EditorStyle');
WP_Register::is_added('style', 'DefaultStyle');
WP_Register::remove('script', 'HTML_script');
WP_Register::remove('script', 'NavigationScript');
WP_Register::remove('style', 'EditorStyle');
WP_Register::remove('style', 'DefaultStyle');
Para ejecutar las pruebas necesitarás Composer y seguir los siguientes pasos:
git clone https://github.com/josantonius/wp-register.git
cd WP_Register
composer install
Ejecutar pruebas unitarias con PHPUnit:
composer phpunit
Ejecutar pruebas de estándares de código para WordPress con PHPCS:
composer phpcs
Ejecutar pruebas con PHP Mess Detector para detectar inconsistencias en el estilo de codificación:
composer phpmd
Ejecutar todas las pruebas anteriores:
composer tests
Si este proyecto te ayuda a reducir el tiempo de desarrollo, puedes patrocinarme para apoyar mi trabajo 😊
Este repositorio tiene una licencia MIT License.
Copyright © 2017-2022, Josantonius