Skip to content

Instantly share code, notes, and snippets.

View pento's full-sized avatar
💖
Hello, friend. 🙂

Gary Pendergast pento

💖
Hello, friend. 🙂
View GitHub Profile
@pento
pento / refresh-usage.sh
Last active February 9, 2026 17:58
Claude Code usage status line: save the scripts in your ~/.claude/scripts directory, and add the settings to your ~/.claude/settings.json
#!/usr/bin/env bash
set -euo pipefail
CACHE_DIR="$HOME/.claude/cache"
CACHE_FILE="$CACHE_DIR/claude-usage.json"
TTL_SECONDS=900 # 15 minutes
mkdir -p "$CACHE_DIR"
# Check cache age unless --force
@pento
pento / php-block.js
Last active January 20, 2026 00:20
Converting a shortcode to a block: this method is fast to do, but a mediocre UX. You should only use this as a stopgap until you can implement a full block UI.
// License: GPLv2+
var el = wp.element.createElement,
registerBlockType = wp.blocks.registerBlockType,
ServerSideRender = wp.components.ServerSideRender,
TextControl = wp.components.TextControl,
InspectorControls = wp.editor.InspectorControls;
/*
* Here's where we register the block in JavaScript.
@pento
pento / weekly-block.css
Last active April 17, 2018 18:56
The Weekly Block
/**
* License: GPL-3.0+
*/
.weekly-link {
/*border-left: 3px solid rgba(0,0,0,.8);*/
border-left: 3px solid rgba(255, 160, 0, 1);
padding-left: 2em;
padding-right: 2em;
margin-bottom: 2em;
}
@pento
pento / stars-block.js
Last active January 4, 2022 14:00
Gutenberg Stars Block
( function( blocks, element ) {
var el = element.createElement;
function Stars( { stars } ) {
return el( 'div', { key: 'stars' },
'★'.repeat( stars ),
( ( stars * 2 ) % 2 ) ? '½' : '' );
}
blocks.registerBlockType( 'stars/stars-block', {
@pento
pento / rainbow-bar.php
Last active September 26, 2017 21:20
WordPress Rainbow Bar
<?php
/*
* Plugin Name: Rainbow Bar!
*/
function rainbow_bar() {
?>
<style type="text/css">
#wpadminbar {
@pento
pento / db.php
Last active July 6, 2017 03:00
🙃db, the next evolution of wpdb.
<?php
class 🙃db extends wpdb {
public $tables🙃 = array(
// Tables
'posts' => '⭕',
'postmeta' => '⭕➡️',
'comments' => '♻',
'commentmeta' => '♻➡️',
'terms' => '↔️',
@pento
pento / wp-tests-config.php
Created December 30, 2015 03:07
MySQL version switching with MySQL Sandbox
<?php
/* Path to the WordPress codebase you'd like to test. Add a backslash in the end. */
define( 'ABSPATH', dirname( __FILE__ ) . '/src/' );
// Test with multisite enabled.
// Alternatively, use the tests/phpunit/multisite.xml configuration file.
// define( 'WP_TESTS_MULTISITE', true );
// Force known bugs to be run.
Verifying that +pento is my openname (Bitcoin username). https://onename.com/pento
@pento
pento / best-filter-model.php
Last active August 29, 2015 14:03
A filter model for Wordpress pros (Wordpress pros don't have time to press shift twice when typing "Wordpress")
<?php
class PentoFilters {
// eg...
function the_content( $content ) {
return $content;
}
}
function pento_filters() {
global $wp_current_filter;

Keybase proof

I hereby claim:

  • I am pento on github.
  • I am pento (https://keybase.io/pento) on keybase.
  • I have a public key whose fingerprint is B3B5 DF2A 48B4 C067 7628 6491 5B08 7A47 D0D6 EE94

To claim this, I am signing this object: