Skip to content

Instantly share code, notes, and snippets.

View webaware's full-sized avatar

Ross McKay webaware

View GitHub Profile
@webaware
webaware / contiguous-usa.php
Created January 19, 2024 21:41
GF Address Enhanced: Filter USA states to only have the Lower 48 + DC. Add this to a plugin, or functions.php in your theme.
<?php
/**
* Filter USA states to only have the Lower 48 + DC
*/
add_filter('gf_address_enhanced_smart_states_script_data', function(array $script_data) : array {
if (isset($script_data['states']['United States'])) {
// Alaska, Hawaii, and the Armed Forces codes
$remove = ['AK', 'HI', 'AA', 'AE', 'AP'];
@webaware
webaware / plugin-download.php
Last active October 24, 2024 03:45
Add download links to WordPress plugins with updates available
<?php
/*
Plugin Name: Plugin Download
Plugin URI: https://gist.github.com/webaware/4a4f2dca44b1c10fb9a8fe85a5f90f40
Update URI: plugin-download
Description: add download links to plugins with updates available
Version: 0.0.2
Author: WebAware
Author URI: https://shop.webaware.com.au/
*/
@webaware
webaware / network-lister.php
Last active May 14, 2023 03:56
Simple dashboard widget for listing WordPress multisite sites, and accompanying shortcode for the front end.
<?php
/*
Plugin Name: Network Lister
Plugin URI: https://gist.github.com/webaware/b914967f0ce8110c775cd12ddc546283
Update URI: network-lister
Description: simple dashboard widget for listing network sites
Version: 0.0.5
Author: WebAware
Author URI: https://shop.webaware.com.au/
*/
@webaware
webaware / chequerboard.css
Last active April 17, 2023 23:23
Give something a grey / white chequerboard background, in two lines of CSS. Stolen from somewhere on Stack Overflow IIRC.
.my-element {
background-image: conic-gradient(#ddd 25%, #fff 25%, #fff 50%, #ddd 50%, #ddd 75%, #fff 75%);
background-size: 40px 40px;
}
<?php
/*
Plugin Name: GF Countries for WooCommerce
Plugin URI: https://gist.github.com/webaware/985156c48d8fea3cc77d9a9c624aad18
Update URI: gf-countries-woo
Description: restrict Gravity Forms addresses to WooCommerce-allowed countries
Version: 2
Author: WebAware
Author URI: https://shop.webaware.com.au/
*/
@webaware
webaware / video.twig
Last active November 30, 2022 02:14
Replace the HTML for the standard WordPress video shortcode, simplifying it to just a video element without extra wrapping divs, buttons, etc. See blog post https://snippets.webaware.com.au/howto/wordpress-video-in-the-block-editor/
<video class="project-video" controls controlslist="nodownload" playsinline disablePictureInPicture
{%- if video.autoplay %} autoplay muted {%- endif -%}
{%- if video.preload %} preload="{{ video.preload }}" {%- endif -%}
{%- if video.loop %} loop {%- endif -%}
{%- if video.width %} width="{{ video.width }}" {%- endif -%}
{%- if video.height %} height="{{ video.height }}" {%- endif -%}
{%- if video.poster %} poster="{{ video.poster }}" {%- endif -%}
>
{%- for source in video.sources -%}
@webaware
webaware / Makefile
Created June 9, 2022 08:37
Build web-ready videos from .mov and .mp4 sources
SRC := Brightscape.mov FUNK-instagram-mockup.mp4
SRC_MOV := $(filter %.mov,$(SRC))
SRC_MP4 := $(filter %.mp4,$(SRC))
JPG := $(patsubst %.mov, out/%-vid.jpg, $(SRC_MOV)) $(patsubst %.mp4, out/%-vid.jpg, $(SRC_MP4))
MP4 := $(patsubst %.mov, out/%.mp4, $(SRC_MOV)) $(patsubst %.mp4, out/%.mp4, $(SRC_MP4))
VP9 := $(patsubst %.mov, out/%.webm, $(SRC_MOV)) $(patsubst %.mp4, out/%.webm, $(SRC_MP4))
.PHONY: all jpg mp4 vp9
@webaware
webaware / Makefile
Created May 20, 2022 10:21
how an old fart builds JS, JSX, SCSS, and lints them plus PHP for a WP theme
.PHONY: all favicons lint lint-js lint-php lint-twig lint-css css-compile css-postcss
all:
@echo please see Makefile for available builds / commands
# optimise branding tiles and build the favicon
FAVICON_DIR := images/favicons
favicons: $(FAVICON_DIR)/favicon.ico
@webaware
webaware / gf-email-route-by-country.php
Created April 21, 2022 04:27
adapt Gravity Forms notification rules based on country in an Address field
<?php
if (!defined('ABSPATH')) {
exit;
}
/**
* adapt notification rules based on country in Address field
* - set Send To email address to a trigger value
* - set Value to the address field ID
@webaware
webaware / gf-countries-restrict.php
Last active January 23, 2022 06:44
restrict Gravity Forms addresses to USA, Canada; with support for GF Address Enhanced
<?php
/*
Plugin Name: GF Countries Restrict
Plugin URI: https://gist.github.com/webaware/2a9e72a94290fa8a9c7d6d60c9ae052a
Update URI: gf-countries-restrict
Description: restrict Gravity Forms addresses to USA, Canada
Version: 1
Author: WebAware
Author URI: https://shop.webaware.com.au/
*/