Bibliotecas JavaScript são largamente utilizadas em projetos web de uma forma geral, e no WordPress não seria diferente. O CMS suporta diversas de forma nativa e disponibiliza para os desenvolvedores uma API para lidar com todas elas, podendo inclusive incluir novas, remover ou considerar uma outra versão das existentes.
Portanto, é verdadeiro afirmarmos que com o WordPress é possível fazer uso de qualquer biblioteca JavaScript mesmo que ela não venha de forma nativa na plataforma.
As bibliotecas JavaScript nativas no WP
Enquanto escrevo este post a versão atual do WordPress é a 4.5 e nela temos dezenas de bibliotecas JavaScript a disposição dos desenvolvedores de temas, plugins e do próprio core. Abaixo uma tabela completa com as bibliotecas disponíveis.
Nome da biblioteca | controlador | Se tem dependência de outra bibliteoca * |
---|---|---|
Image Cropper | Image cropper (not used in core, see jcrop) | |
Jcrop | jcrop | |
SWFObject | swfobject | |
SWFUpload | swfupload | |
SWFUpload Degrade | swfupload-degrade | |
SWFUpload Queue | swfupload-queue | |
SWFUpload Handlers | swfupload-handlers | |
jQuery | jquery | json2 (for AJAX calls) |
jQuery Form | jquery-form | jquery |
jQuery Color | jquery-color | jquery |
jQuery Masonry | jquery-masonry | jquery |
Masonry (native Javascript) | masonry | |
jQuery UI Core | jquery-ui-core | jquery |
jQuery UI Widget | jquery-ui-widget | jquery |
jQuery UI Accordion | jquery-ui-accordion | jquery |
jQuery UI Autocomplete | jquery-ui-autocomplete | jquery |
jQuery UI Button | jquery-ui-button | jquery |
jQuery UI Datepicker | jquery-ui-datepicker | jquery |
jQuery UI Dialog | jquery-ui-dialog | jquery |
jQuery UI Draggable | jquery-ui-draggable | jquery |
jQuery UI Droppable | jquery-ui-droppable | jquery |
jQuery UI Menu | jquery-ui-menu | jquery |
jQuery UI Mouse | jquery-ui-mouse | jquery |
jQuery UI Position | jquery-ui-position | jquery |
jQuery UI Progressbar | jquery-ui-progressbar | jquery |
jQuery UI Selectable | jquery-ui-selectable | jquery |
jQuery UI Resizable | jquery-ui-resizable | jquery |
jQuery UI Selectmenu | jquery-ui-selectmenu | jquery |
jQuery UI Sortable | jquery-ui-sortable | jquery |
jQuery UI Slider | jquery-ui-slider | jquery |
jQuery UI Spinner | jquery-ui-spinner | jquery |
jQuery UI Tooltips | jquery-ui-tooltip | jquery |
jQuery UI Tabs | jquery-ui-tabs | jquery |
jQuery UI Effects | jquery-effects-core | jquery |
jQuery UI Effects – Blind | jquery-effects-blind | jquery-effects-core |
jQuery UI Effects – Bounce | jquery-effects-bounce | jquery-effects-core |
jQuery UI Effects – Clip | jquery-effects-clip | jquery-effects-core |
jQuery UI Effects – Drop | jquery-effects-drop | jquery-effects-core |
jQuery UI Effects – Explode | jquery-effects-explode | jquery-effects-core |
jQuery UI Effects – Fade | jquery-effects-fade | jquery-effects-core |
jQuery UI Effects – Fold | jquery-effects-fold | jquery-effects-core |
jQuery UI Effects – Highlight | jquery-effects-highlight | jquery-effects-core |
jQuery UI Effects – Pulsate | jquery-effects-pulsate | jquery-effects-core |
jQuery UI Effects – Scale | jquery-effects-scale | jquery-effects-core |
jQuery UI Effects – Shake | jquery-effects-shake | jquery-effects-core |
jQuery UI Effects – Slide | jquery-effects-slide | jquery-effects-core |
jQuery UI Effects – Transfer | jquery-effects-transfer | jquery-effects-core |
MediaElement.js (WP 3.6+) | wp-mediaelement | jquery |
jQuery Schedule | schedule | jquery |
jQuery Suggest | suggest | jquery |
ThickBox | thickbox | |
jQuery HoverIntent | hoverIntent | jquery |
jQuery Hotkeys | jquery-hotkeys | jquery |
Simple AJAX Code-Kit | sack | |
QuickTags | quicktags | |
Iris (Colour picker) | iris | jquery |
Farbtastic (deprecated) | farbtastic | jquery |
ColorPicker (deprecated) | colorpicker | jquery |
Tiny MCE | tiny_mce | |
Autosave | autosave | |
WordPress AJAX Response | wp-ajax-response | |
List Manipulation | wp-lists | |
WP Common | common | |
WP Editor | editorremov | |
WP Editor Functions | editor-functions | |
AJAX Cat | ajaxcat | |
Admin Categories | admin-categories | |
Admin Tags | admin-tags | |
Admin custom fields | admin-custom-fields | |
Password Strength Meter | password-strength-meter | |
Admin Comments | admin-comments | |
Admin Users | admin-users | |
Admin Forms | admin-forms | |
XFN | xfn | |
Upload | upload | |
PostBox | postbox | |
Slug | slug | |
Post | post | |
Page | page | |
Link | link | |
Comment | comment | |
Threaded Comments | comment-reply | |
Admin Gallery | admin-gallery | |
Media Upload | media-upload | |
Admin widgets | admin-widgets | |
Word Count | word-count | |
Theme Preview | theme-preview | |
JSON for JS | json2 | |
Plupload Core | plupload | |
Plupload All Runtimes | plupload-all | |
Plupload HTML4 | plupload-html4 | |
Plupload HTML5 | plupload-html5 | |
Plupload Flash | plupload-flash | |
Plupload Silverlight | plupload-silverlight | |
Underscore js | underscore | |
Backbone js | backbone |
As funções para lidar com as bibliotecas JavaScript
O WordPress através da sua API permite uma extensibilidade incrível e permite aos desenvolvedores incrementar ou modificar seu comportamento por inteiro.
Com as bibliotecas JavaScript não seria diferente, há funções específicas para lidar com o assunto e cada uma com o papel bem definido e de grande auxílio para a equipe de desenvolvimento. As principais estão lidados abaixo e todas as outras podem ser consultadas através do Codex no WordPress.org.
Bibliotecas JavaScript no front-end e back-end do WordPress
O core do WordPress faz uso das bibliotecas JavaScript que compõe sua instalação para disponibilizar todas as funcionalidades do seu painel administrativo. Elas contribuem para a implementação de funcionalidades modernas e interativas que contribuem para uma melhor experiência de uso por seus usuários.
Mesmo com o uso significativo de bibliotecas JavaScript o painel do WordPress considera uma devida atenção para a questão da acessibilidade permitindo o pleno funcionamento dos seus recursos em diversas situações para privilegiar os usuários com dificuldades motoras.
Vá além
Considere conhecer a tratativa da plataforma em relação a todos os fatores e assim ganhe mais segurança e autonomia na personalização e implementação desejada com a plataforma. Mas lembre-se que grandes poderes requerem grandes responsabilidades.