Skip to content

Instantly share code, notes, and snippets.

View mindctrl's full-sized avatar

John Parris mindctrl

View GitHub Profile
@mindctrl
mindctrl / jp-disable-some-plugin-updates.php
Created September 11, 2024 17:06
Programmatically disable updates for specific WordPress plugins
<?php
/**
* Plugin Name: JP Plugin Update Disabler
* Description: Disables plugin updates for specified plugins.
* Version: 1.0
* Author: John Parris
*/
add_filter( 'http_request_args', 'jp_disable_plugin_updates', 10, 2 );
function jp_disable_plugin_updates( $args, $url ) {
if ( str_starts_with( $url, 'https://api.wordpress.org/plugins/update-check/1.1/' ) ) {
@mindctrl
mindctrl / whatever.js
Created September 11, 2024 17:00
JavaScript to unsubscribe from GitHub comments/issues/PRs/whatever
// Why? Because GitHub's UI only allows 25 at a time, and doing it manually with a mouse is annoying.
// With this you can just paste in the console and press enter, wait for reload, do it again.
// I'm sure there's a "better" way, but I did not want to dive into their API docs for a one-time thing.
// Click the Select All checkbox
var el = document.querySelector('[aria-labelledby="select-all-subscriptions-text"]');
el.click();
// Click the Unsubscribe button
var un = document.querySelector('button.ml-3');
@mindctrl
mindctrl / remove-wpforms-menus.php
Created September 5, 2024 01:18
Remove WPForms admin menu spam
<?php
add_action( 'admin_menu', function() {
remove_submenu_page( 'wpforms-overview', 'wpforms-analytics' );
remove_submenu_page( 'wpforms-overview', 'wpforms-smtp' );
remove_submenu_page( 'wpforms-overview', 'wpforms-about' );
remove_submenu_page( 'wpforms-overview', 'wpforms-community' );
}, 100 );
@mindctrl
mindctrl / enqueue-react-devtools-script.php
Last active May 23, 2022 14:28
Using React Dev Tools (react-devtools) with WordPress and Safari
<?php
// This loads the react-devtools script in wp-admin when using Safari.
add_action( 'admin_enqueue_scripts', function() {
if ( ! empty( $_SERVER['HTTP_USER_AGENT'] ) && strpos( $_SERVER['HTTP_USER_AGENT'], 'Safari' ) !== false ) {
?>
<script src="http://localhost:8097"></script>
<?php
}
} );
@mindctrl
mindctrl / setup-phpunit.sh
Created January 29, 2019 15:48 — forked from keesiemeijer/setup-phpunit.sh
Setup PHPUnit for use in the Local by Flywheel app
#!/usr/bin/env bash
# ===============================================================================
# Script to install PHPUnit in the Local by Flywheel Mac app
# These packages are installed
#
# PHPUnit, git, subversion, composer, curl and wget
#
# The $WP_CORE_DIR and $WP_TESTS_DIR environment variables are added to the ~/.bashrc file
#
function simple_plugin_updater( $update_plugins, $transient_name ) {
$plugin = json_decode(
json_encode(
array(
'new_version' => 89,
'stable_version' => 89,
'name' => 'My Fake Plugin',
'slug' => 'my-fake-plugin.php',
'url' => 'https://myfakeplugin.com',
@mindctrl
mindctrl / commercial-client.php
Created November 7, 2018 00:09 — forked from pento/commercial-client.php
Sample Commercial Plugin update server and client
<?php
/*
* Plugin Name: Commercial Client
* Plugin URI: http://pento.net/
* Description: A sample client plugin for showing updates for non-WordPress.org plugins
* Author: pento
* Version: 0.1
* Author URI: http://pento.net/
* License: GPL2+
*/
<?xml version="1.0" encoding="UTF-8"?>
<opml version="1.0">
<head>
<title>Subscriptions - freek@spatie.be</title>
</head>
<body>
<outline text="PHP" title="PHP">
<outline htmlUrl="http://mattallan.org" title="mattallan.org" xmlUrl="http://mattallan.org/feed.xml" type="rss" text="mattallan.org"/>
<outline title="asked.io" xmlUrl="https://asked.io/rss" type="rss" text="asked.io"/>
<outline htmlUrl="https://ocramius.github.io/" title="ocramius.github.io" xmlUrl="https://ocramius.github.io/atom.xml" type="rss" text="ocramius.github.io"/>
@mindctrl
mindctrl / rcp-custom-post-restriction-messages.php
Created October 1, 2016 03:00
Custom post / page restriction messages in Restrict Content Pro
/**
* This plugin adds support for custom restriction messages per post.
* If a custom message exists, it is used in place of the ones defined
* in the RCP settings under Restrict > Settings > General.
*/
/**
* Displays the custom message metabox on the post edit screen.
*/
function jp_rcp_post_level_restriction_message_metabox() {
@mindctrl
mindctrl / plugin.php
Created September 10, 2016 17:21 — forked from logoscreative/plugin.php
Friendlier, Safer WordPress Admin Areas
<?php
/**
* "Friendlier, Safer WordPress Admin Areas"
* Presented by Cliff Seal at WordCamp Atlanta 2015 and Asheville 2016
* Slides: http://www.slideshare.net/cliffseal/wp-admin
*
* Plugin Name: A Better Admin Experience
* Plugin URI: http://evermoresites.com
* Description: Cleans up and sanitizes the WordPress admin area
* Version: 1.0