Skip to content

Instantly share code, notes, and snippets.

View kadamwhite's full-sized avatar

K Adam White kadamwhite

View GitHub Profile
@kadamwhite
kadamwhite / block-hierarchy-tracker.php
Last active October 8, 2023 19:55
Block Hierarchy Tracker
<?php
/**
* Plugin Name: Track Rendering Context
* Plugin Author: K. Adam White
* Plugin Description: A system for tracking the rendering of blocks on the page.
*
* USAGE
*
* Activate plugin, then on any page on the site, add ?blocks_log to the URL.
* The block hierarchy will be rendered to the error log.
@kadamwhite
kadamwhite / data-cameraCount.csv
Created September 30, 2015 12:44
Processing line chart
date cameraCount
20120701 1
20130315 2
20130605 1
20130708 2
20131229 3
20140316 4
20140729 5
20150223 6
20150426 5
@kadamwhite
kadamwhite / tracking.js
Created April 23, 2012 13:41
A more flexible SiteCatalyst link tracking script wrapper
// Wrapper function for native Omniture SiteCatalyst link tracking (s.tl())
var trackLink = function (referenceObject, trackingData, targetReportSuite) {
if (typeof referenceObject === 'undefined' || typeof trackingData === 'undefined') {
// If you're missing your settings object or any variables/events to fire, you fail
return;
}
var linkTrackVarsArray = [],
// Get values out of the configuration object
tEvents = trackingData.events, // String || undefined
tVars = trackingData.variables, // Object || undefined
@kadamwhite
kadamwhite / candy.zsh_theme
Created March 28, 2023 18:11
Customized Candy theme for oh-my-zsh
PROMPT=$'
$(git_prompt_info)[%{$fg[magenta]%}%m%{$reset_color%}%{$fg[white]%}:%{$fg[magenta]%}%~%{$reset_color%}]\
%{$fg[magenta]%}%D{[%H:%M:%S]} %{$reset_color%}%# '
ZSH_THEME_GIT_PROMPT_PREFIX="[%{$fg[magenta]%}"
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}]"
ZSH_THEME_GIT_PROMPT_DIRTY=" %{$fg[red]%}*%{$fg[magenta]%}"
ZSH_THEME_GIT_PROMPT_CLEAN=""
@kadamwhite
kadamwhite / efficient-api-resource-fetch-demo.js
Last active February 19, 2023 05:56
Example of how to compose multiple API requests to efficiently fetch related resources.
/**
* WP Post object. Only properties needed by the code are included.
*
* @typedef {object} WPPost
* @property {number} id ID of post.
* @property {number} author Post author ID.
* @property {number[]} categories IDs of associated categories.
* @property {number[]} tags IDs of associated tags.
* @property {number} featured_media ID of featured image.
*/
@kadamwhite
kadamwhite / ExcludeMediaQueriesPlugin.js
Created April 22, 2021 15:07
A Webpack plugin to remove media queries matching certain patterns from a generated CSS file.
/**
* This file defines the project-level Webpack production configuration. It
* combines configs from all relevant plugins and themes into one single
* array (a "multi-configuration" Webpack setup) and runs those builds in
* a single pass.
*/
const { basename, extname } = require( 'path' );
const postcss = require( 'postcss' );
const filtermq = require( 'postcss-filter-mq' );
@kadamwhite
kadamwhite / ffmpeg-cheat-sheet.md
Last active November 5, 2022 13:38
ffmpeg command "cheat sheet"

ffmpeg cheat-sheet

Video

Compressing x265

ffmpeg -i INPUT_FILE.mkv -c copy -pix_fmt yuv420p10le -c:v libx265 -preset slow -crf 27 -profile:v main10 OUTPUT_FILE.mkv
@kadamwhite
kadamwhite / README.md
Created September 23, 2022 00:13
Cool bug (potential WP core bug?) where meta with multiple rows registered as "single" prevents REST update.

Reproduction Steps

  1. Clone these files into a plugin directory
  2. Activate plugin (will populate several postmeta table rows about most recent posts)
  3. Open that post in the editor
  4. See the textbox in the Publish Status panel with label "Edit me:"
  5. Put any string into that input
  6. Try to save
  7. Encounter error Updating failed. Could not update the meta value of example_post_meta in database.
<?php
/**
* Format a backtrace in a way that makes sense to me visually.
* Command-click on filenames in terminal output to jump to them.
*
* @param array $backtrace
* @return string
*/
function backtrace_to_log( array $backtrace ) : string {
$table = [ [ ' file', 'function' ], [ '---------', '--------' ] ];
@kadamwhite
kadamwhite / phpcs-changed-files.sh
Created March 4, 2021 15:16
Bash script to run PHPCS against only files which have changed since branching off a specific base branch.
#/usr/bin/env bash
# Usage:
#
# Run this script (via an npm run alias) with no arguments to compute the
# issues in files changed since you branched from "development."
#
# npm run lint:php:changed
#
# Pass a specific branch name as the first argument to determine which files