Skip to content

Instantly share code, notes, and snippets.

Avatar

Mark Jaquith markjaquith

View GitHub Profile
@markjaquith
markjaquith / alloptions-optimizer.php
Created September 11, 2022 23:08
Proof of concept alloptions optimizer
View alloptions-optimizer.php
<?php
/**
* Plugin Name: Alloptions Optimizer
* Author: Mark Jaquith
*/
class AllOptionsOptimizer {
private static $usedOptions = [];
private static $allOptions = [];
private static $allOptionsBytes;
@markjaquith
markjaquith / commit.sh
Created August 1, 2022 15:48
git commit helper
View commit.sh
#!/bin/zsh
function maybeBail() {
if [[ $? -ne 0 ]]; then
exit 1
fi
}
TYPE=$(gum choose "fix" "feat" "docs" "style" "refactor" "test" "chore" "revert")
maybeBail
@markjaquith
markjaquith / admin-links-new-tab.php
Created April 25, 2022 19:46
WordPress plugin to open external links in a new tab in the WordPress admin
View admin-links-new-tab.php
@markjaquith
markjaquith / Disable-ACF-UI.php
Created January 12, 2021 08:28
Disable ACF UI
View Disable-ACF-UI.php
<?php
// Block the ACF settings UI entirely, except on local dev.
if (! defined('WP_LOCAL_DEV') || ! WP_LOCAL_DEV) {
add_filter('acf/settings/show_admin', '__return_false');
add_filter('acf/settings/capability', function () { return 'do_not_allow'; });
}
@markjaquith
markjaquith / README.md
Created April 11, 2019 17:29
Identify images that are displayed wider than their natural width (which results in them looking blurry)
View README.md
  1. Paste this into your browser console.
  2. Start resizing the window.
  3. Any images that are ever displayed in a blurry fashion will throw an error and get faded out to 0.05 opacity.
@markjaquith
markjaquith / gform-stripe-use-older-api.php
Created February 25, 2018 01:56
Force Gravity Forms Stripe add-on to use an older version of the Stripe API, so subscriptions work
View gform-stripe-use-older-api.php
<?php
add_action( 'gform_stripe_post_include_api', function() {
if ( method_exists( '\Stripe\Stripe', 'setApiVersion' ) ) {
\Stripe\Stripe::setApiVersion( '2016-07-06' );
}
});
View plugin.php
<?php
/**
* Plugin Name: YOUR PLUGIN NAME
*/
include( dirname( __FILE__ ) . '/lib/requirements-check.php' );
$your_plugin_requirements_check = new YOUR_PREFIX_Requirements_Check( array(
'title' => 'YOUR PLUGIN NAME',
'php' => '5.4',
View block-unnecessary-image-queries.php
<?php
/*
Plugin Name: Block WordPress attachment queries
Description: Blocks MySQL queries for WordPress attachments that are on domains we know will never resolve to a local WordPress attachment ID.
Author: Mark Jaquith
*/
add_filter( 'query', function( $query ) {
global $wpdb;
@markjaquith
markjaquith / readme.md
Last active June 11, 2017 15:19
For WordPress, a method to re-index a multi-dimensional array by the (unique) value of a given array key
View readme.md

Okay, so, let's say you have some data like this:

$things = [
  0 => [ 'id' => 123, 'title' => '123 Title', 'content' => '123 Content' ],
  1 => [ 'id' => 456, 'title' => '456 Title', 'content' => '456 Content' ],
  2 => [ 'id' => 789, 'title' => '789 Title', 'content' => '789 Content' ],
];
@markjaquith
markjaquith / home-page-redirect.php
Last active February 7, 2021 15:00 — forked from davidzack/gist:194f37444c9d68630308ee416381ef61
If user is logged in, and on the front page, redirect to /?firstName=FIRST&lastName=LAST
View home-page-redirect.php
<?php
function home_page_first_last_name_redirect() {
if ( is_front_page() && is_user_logged_in() && ! isset( $_GET['firstName'] ) ) {
$user = wp_get_current_user();
$url = add_query_arg( array(
'firstName' => $user->first_name,
'lastName' => $user->last_name,
));
wp_redirect( $url );