Skip to content

Instantly share code, notes, and snippets.

View afragen's full-sized avatar

Andy Fragen afragen

View GitHub Profile
@afragen
afragen / auto-flush-object-cache.php
Last active December 25, 2022 10:25
Catches 'PHP Fatal error Allowed memory size of xxxxxxx bytes exhausted' and 'RedisException' debug.log messages and flushes object cache.
<?php
/**
* Auto-flush object cache.
*
* @package Fragen\Auto_Flush_Cache
*
* Plugin Name: Auto-Flush Object Cache
* Plugin URI: https://gist.github.com/afragen/d46d3cc2c7e07d99f921560dfbb70246
* Description: Auto-flush the object cache when error log records PHP Fatal error for allowed memory size.
* Version: 0.7.0
@afragen
afragen / rollback-testing.php
Last active November 7, 2022 13:28
Plugin to simulate plugin/theme update failure for testing Rollback Update Failure feature plugin.
<?php
/**
* Rollback Update Testing
*
* @package rollback-update-testing
* @author Andy Fragen <andy@thefragens.com>
* @license MIT
*/
/**
@afragen
afragen / git-updater-fastspring-popup.php
Created November 3, 2022 23:34
Add javascript for FastSpring's Git Updater popup store.
<?php
/**
* Add FastSpring popup store script for Git Updater.
*
* @package FastSpringPopUpStore
*
* Plugin Name: FastSpring Popup Store for Git Updater
* Plugin URI: https://gist.github.com/afragen/e7819dd1e17be5792c299dbef989d446
* Description: Add FastSpring popup store javascript for Git Updater.
* Version: 0.1.0
@afragen
afragen / add-plugin-dependency-api.php
Last active September 3, 2022 00:15
Add to Dependencies tab via Git Updater PRO REST API
<?php
/**
* Add Plugin Dependency via REST API.
*
* @package Fragen\Plugin_Dependency_API
*
* Plugin Name: Add Plugin Dependency via REST API
* Plugin URI: https://gist.github.com/afragen/ba3fc125fb0ecd242b1b162153d6adf9
* Description: Add plugin dependency data to Dependencies tab via REST API endpoint and allow for Install Now button to function.
* Version: 0.11.3
@afragen
afragen / trick-auto-update.php
Created August 24, 2022 20:03
Allows one to mash the WP Crontrol 'Run now' link with abandon.
/**
* Trick `WP_Automatic_Updater` into thinking there is no existing lock.
*
* By default, the auto-updater will only run once every hour even if
* the cron job is manually fired. That makes it hard to run multiple tests
* in a short period of time.
*/
add_filter(
'option_auto_updater.lock',
function ($value) {
@afragen
afragen / gist-oembed.php
Last active August 5, 2022 19:56
WordPress plugin to embed gists or gist files.
<?php
/**
* Gist oEmbed.
*
* @package Fragen\Gist_OEmbed
*
* Plugin Name: Gist oEmbed
* Plugin URI: https://gist.github.com/afragen/36ab01da116aadd27a3f4d85cce90390
* Description: oEmbed Gist or files within Gists.
* Version: 0.6.2
@afragen
afragen / auto-update-fatal-error-check.php
Last active August 3, 2022 17:55
Run the Rollback code if the plugin has an activation error.
<?php
/**
* Auto-update fatal error check.
*
* @package AutoUpdateFatalErrorCheck
*
* Plugin Name: Auto-update Fatal Error Check
* Plugin URI: https://gist.github.com/afragen/518819349528dba930cf7845180d5274
* Description: Check for a PHP error on plugin auto-update and deactivate plugin if one exists.
* Version: 0.4.2
<?php
/**
* Auto-update fatal error check test plugin.
*
* @package AutoUpdateFatalErrorCheck
*
* Plugin Name: Auto-update Fatal Error Check Test Plugin
* Plugin URI: https://github.com/afragen/fatal-plugin
* Description: Set local version to 0 and comment code from plugin for testing.
* Version: 0.1.1
<?php
/**
* Plugin Name: GlotPress for Git Updater
* Plugin URI: https://gist.github.com/afragen/4574e1ce54a621351e5eb18ac686f8f3
* Description: This plugin is used for site testing.
* Version: 0.1
* Author: Andy Fragen
* License: MIT
* Requires at least: 5.2
* Requires PHP: 7.1
@afragen
afragen / tribe-ical-outlook-modify.php
Last active June 8, 2022 21:07
Modify Event Calendar iCal feed properties for Outlook
<?php
//Add the following to your theme's functions.php
add_filter( 'tribe_ical_properties', 'tribe_ical_outlook_modify', 10, 2 );
function tribe_ical_outlook_modify( $content ) {
$properties = preg_split ( '/$\R?^/m', $content );
$searchValue = "X-WR-CALNAME";
$fl_array = preg_grep('/^' . "$searchValue" . '.*/', $properties);
$key = array_values($fl_array);
$keynum = key($fl_array);