Skip to content

Instantly share code, notes, and snippets.

View bradyvercher's full-sized avatar

Brady Vercher bradyvercher

View GitHub Profile
@bradyvercher
bradyvercher / bind.js
Last active October 25, 2016 16:10
Bind event listeners with optional debounce and throttle modes using vanilla JavaScript.
/**
* Bind event listeners with optional debounce and throttle modes.
*
* @param {object} el The object to bind an event to.
* @param {string} eventType The type of event to listen for.
* @param {object} handler The callback handler.
* @param {object} options Options to modify behavior.
* - delay: Time in milliseconds. Behavior depends on mode.
* - init: Whether the handler should be called when registered. Default is false.
* - mode: 'debounce' or 'throttle'. Default is false.
@bradyvercher
bradyvercher / url-tokens.php
Last active May 21, 2016 17:46
Basic URL signing functions for WordPress
<?php
/**
* Basic URL Signing functions for WordPress.
*
* @author Brady Vercher (twitter.com/bradyvercher)
* @link http://www.blazersix.com/blog/protect-your-products-and-improve-your-systems-with-signed-urls/
*/
/**
* Sign a URL to ensure it hasn't been tampered with.
<?php
/**
* Return a base64 encoded SVG icon for use as a data URI.
*
* @param string $path Path to SVG icon.
* @return string
*/
function audiotheme_encode_svg( $path ) {
$path = path_is_absolute( $path ) ? $path : AUDIOTHEME_DIR . $path;
@bradyvercher
bradyvercher / desaturate-menu-image-icons.php
Created December 13, 2013 16:48
WordPress: Desaturate admin menu icons added as images before WordPress 3.8 to keep them from stealing attention.
<?php
/**
* Plugin Name: Desaturate Menu Image Icons
* Description: Desaturate admin menu icons added as images before WordPress 3.8 to keep them from stealing attention.
* Version: 1.0.0
* Author: Brady Vercher
* Author URI: http://www.blazersix.com/
* License: GPL-2.0+
* License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/
@bradyvercher
bradyvercher / hidpi-gallery-thumbnails.php
Created November 1, 2013 21:30
WordPress: Use HiDPI thumbnails with the same aspect ratio as the original image in gallery shortcodes.
@bradyvercher
bradyvercher / wp-revisions-bookmarklet.md
Created October 25, 2013 16:18
A bookmarklet to convert [#####] text nodes on a page to links pointing to the corresponding changeset on WordPress Trac.

Bookmarklet

(function e(t){var n=/\[([0-9]{5})\]/m;if(t.childNodes.length>0){for(var r=0;r<t.childNodes.length;r++){e(t.childNodes[r])}}if(3===t.nodeType&&n.test(t.nodeValue)){var i=t.nodeValue.match(n).pop(),s=document.createElement("a");s.appendChild(document.createTextNode(i));s.setAttribute("href","http://core.trac.wordpress.org/changeset/"+i+"/trunk");t.parentNode.insertBefore(s,t.nextSibling);t.parentNode.insertBefore(document.createTextNode(" ["),t.nextSibling);t.parentNode.insertBefore(document.createTextNode("]"),s.nextSibling);t.nodeValue=t.nodeValue.replace(n,"")}})(document.body)

Source

( function traverse( node ) {
@bradyvercher
bradyvercher / infinite-wp-list-tables.php
Last active December 20, 2015 08:39
WordPress Plugin: Infinite scroll support for WP List Tables in the WordPress admin panel.
<?php
/**
* Plugin Name: Infinite WP List Tables
* Description: Infinite scroll support for WP List Tables in the WordPress admin panel.
* Version: 0.1.0
* Author: Brady Vercher
* Author URI: http://www.blazersix.com/
* License: GPL-2.0+
* License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/
@bradyvercher
bradyvercher / gist:5033090
Created February 25, 2013 20:40
WordPress: Better Internal Link Search modifier to search for posts within a particular category. http://wordpress.org/support/topic/filter-by-categories
<?php
/**
* Search for posts in a category.
*
* <code>-categ:{category slug} {query}</code>
*/
function bils_category_search( $results, $args ) {
$post_types = get_post_types( array( 'public' => true ), 'objects' );
$search_args = array(
@bradyvercher
bradyvercher / gist:5025368
Created February 24, 2013 20:06
WordPress: Better Internal Link Search modifier to limit search results to a particular post type.
<?php
/**
* Search for a post type.
*
* <code>-cpt:{post_type} {query}</code>
*/
function bils_cpt_search( $results, $args ) {
$search_args = array(
'post_status' => 'any',
'post_type' => $args['modifier'][1],
@bradyvercher
bradyvercher / gist:4343518
Created December 20, 2012 07:19
WordPress: Filter default image sizes on read to set custom sizes in a theme. Based on approach by Tammy Hart: http://10up.com/blog/2012/12/enforcing-wordpress-image-sizes-within-your-theme/
<?php
add_filter( 'pre_option_thumbnail_crop', 'themename_default_image_options' );
add_filter( 'pre_option_thumbnail_size_h', 'themename_default_image_options' );
add_filter( 'pre_option_thumbnail_size_w', 'themename_default_image_options' );
add_filter( 'pre_option_medium_size_h', 'themename_default_image_options' );
add_filter( 'pre_option_medium_size_w', 'themename_default_image_options' );
add_filter( 'pre_option_large_size_h', 'themename_default_image_options' );
add_filter( 'pre_option_large_size_w', 'themename_default_image_options' );
function themename_default_image_options( $value ) {