This is a list of advanced JavaScript learning resources from people who responded to this [Tweet][13] and this [Tweet][20].
-
[You Don't Know JS][3]
-
[Frontend Masters courses by Kyle Simpson][12]
-
[@mpjme][6]'s [YouTube videos][5]
The ability to use PHP 4 style constructors is getting removed from PHP. Without an update, many plugins will eventually no longer work (this is PHP breaking this backwards compatibility, not WordPress)
One of the more common uses of the PHP 4 style constructor (as opposed to PHP 5 style __construct()
) are plugins with widgets calling WP_Widget::WP_Widget()
and/or parent::WP_Widget()
and/or {object}->WP_Widget()
Note: Starting in WordPress 4.3, regardless of the PHP version in use on a server, WordPress will throw a deprecated notice when one of the PHP 4 style constructors is called specifically for widgets.
Basically instead of doing these:
To install, you need to have the WordPress i18n library on your computer. Check it out using SVN:
sudo svn co http://i18n.svn.wordpress.org/tools/trunk/ /usr/lib/wpi18n
You don't have to put the library in /usr/lib/wpi18n
, but if you don't put it there, make sure to set the $WP_I18N_LIB
environment variable in your .bashrc
or .bash_profile
file (with no trailing slash):
export WP_I18N_LIB="/path/to/i18n/lib"
NOTE: This is no longer an experiment! You can use the accessibility inspector in Chrome Devtools now, including a fantastic color contrast inspection tool. Read more: https://developers.google.com/web/updates/2018/01/devtools#a11y
Just like any good element inspector helps you debug styles, accessibility inspection in the browser can help you debug HTML and ARIA exposed for assistive technologies such as screen readers. There's a similar tool in Safari (and reportedly one in Edge) but I like the Chrome one best.
As an internal Chrome experiment, this tool differs from the Accessibility Developer Tools extension in that it has privileged Accessibility API access and reports more information as a result. You can still use the audit feature in the Chrome Accessibility Developer Tools, or you could use the aXe Chrome extension. :)
To enable the accessibility inspector in Chrome stable:
<?php | |
/* | |
* Plugin Name: Commercial Client | |
* Plugin URI: http://pento.net/ | |
* Description: A sample client plugin for showing updates for non-WordPress.org plugins | |
* Author: pento | |
* Version: 0.1 | |
* Author URI: http://pento.net/ | |
* License: GPL2+ | |
*/ |
<?php | |
// Font Awesome v. 4.6. | |
function jt_get_font_icons() { | |
return array( | |
'fa-glass' => 'f000', | |
'fa-music' => 'f001', | |
'fa-search' => 'f002', | |
'fa-envelope-o' => 'f003', |
function removeDropCap(settings, name) { | |
if (name !== 'core/paragraph') { | |
return settings; | |
} | |
let newSettings = Object.assign({}, settings); | |
if (newSettings.supports && | |
newSettings.supports.__experimentalFeatures && | |
newSettings.supports.__experimentalFeatures.typography && | |
newSettings.supports.__experimentalFeatures.typography.dropCap) { | |
newSettings.supports.__experimentalFeatures.typography.dropCap = false |
/** | |
* Add support for correct UTF8 orderby for post_title (äöå) | |
* | |
* @param string $orderby ordering clause for query | |
* | |
* @return string ordering clause for query | |
*/ | |
add_filter('posts_orderby', function($orderby) use ($wpdb) { | |
if(strstr($orderby, 'post_title')) { |
const listMapper = (list, template) => list.map(template).join('\n') | |
const objectMapper = (object, template) => Object.entries(object).map(template).join('\n') | |
console.log( | |
listMapper( | |
[ | |
'red', | |
'blue', | |
'green' | |
], |
<?php | |
add_action( 'wp_enqueue_scripts', 'jt_enqueue_scripts' ); | |
function jt_enqueue_scripts() { | |
wp_enqueue_script( 'wp-api' ); | |
wp_enqueue_script( 'wp-util' ); | |
} | |
add_action( 'wp_footer', 'jt_print_post_template', 25 ); |