Skip to content

Instantly share code, notes, and snippets.

@Otto42
Otto42 / decode.php
Last active October 31, 2022 04:54
Decode a file with encoded strings
<?php
// Decodes files that have a bunch of strings with things like "\x6d" and "\155" and such in them.
// Meat of the code from https://stackoverflow.com/questions/13774215/convert-hex-code-into-readable-string-in-php
// run me like so on command line:
// php decode.php < encoded.php > output.php
function decode_code($code)
{
return preg_replace_callback('@\\\(x)?([0-9a-f]{2,3})@',
function ($m) {
if ($m[1]) {
@Otto42
Otto42 / allow-private-parents.php
Last active April 6, 2022 02:21
Allow Private Pages to be parents of other pages
<?php
/*
Plugin Name: Allow Private Parents
Author: Otto
Author URI: http://ottopress.com
*/
add_filter('page_attributes_dropdown_pages_args', 'allow_private_page_parents');
function allow_private_page_parents($args) {
$args['post_status'] = array( 'publish', 'private' );
<?php
/*
Plugin Name: Testing
*/
class Demo {
function do_a_thing() {
echo '<!-- demo -->';
}
}
@Otto42
Otto42 / gist:b79ff5428993fcff45bb
Last active November 2, 2018 19:48
disable emojis in wp 4.2
add_action( 'init', 'disable_emoji', 1 );
function disable_emoji() {
remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
remove_action( 'wp_print_styles', 'print_emoji_styles' );
remove_action( 'admin_print_styles', 'print_emoji_styles' );
remove_filter( 'the_content_feed', 'wp_staticize_emoji' );
remove_filter( 'comment_text_rss', 'wp_staticize_emoji' );
remove_filter( 'wp_mail', 'wp_staticize_emoji_for_email' );
add_filter( 'tiny_mce_plugins', 'disable_tinymce_emoji' );
@Otto42
Otto42 / time-shortcode.php
Created September 13, 2013 15:50
Time shortcode used for make p2's
<?php
/**
* Plugin: Time Shortcode
* Author: Otto
*
* Usage: [time]any-valid-time-string-here[/time]
* Will attempt to parse the time string and create a format that shows it in the viewers local time zone
* Note that times should be complete with year, month, day, and hour and minute.. something strtotime can parse meaningfully
* Conversion happens via Javascript and will depend on the users browser.
**/
@Otto42
Otto42 / redball.svg
Created June 28, 2016 19:28
An animated red ball SVG. Move it around with WASD.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@Otto42
Otto42 / simple-table.php
Created January 3, 2016 14:44
Simple tables plugin (use [table]...[/table] shortcode around CSV data in rows.
<?php
/*
Plugin Name: Simple Table
Plugin URI: http://ottopress.com/wordpress-plugins/simple-table/
Description: Add a [table] shortcode for making tables
Version: 0.1
Author: Otto
Author URI: http://ottopress.com
License: GPLv2
License URI: https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html
@Otto42
Otto42 / metabox.php
Created January 13, 2014 05:12
Simple meta box plugin
<?php
/*
Plugin Name: Demo of a Metabox
*/
add_action('add_meta_boxes','my_meta_box_add');
function my_meta_box_add() {
add_meta_box( 'my-meta-box', 'My Meta Box', 'my_meta_box', 'post', 'side');
}
@Otto42
Otto42 / gist:6639477
Created September 20, 2013 15:40
How to set the color picker and the control in the customizer via JS
control = wp.customize.control.instance('header_textcolor');
picker = control.container.find('.color-picker-hex');
control.setting.set('#FFFFFF');
picker.wpColorPicker('color', control.setting() );
@Otto42
Otto42 / instagram-embed.php
Last active December 22, 2015 16:49
Instagram embed override code for WordPress, to use the embed iframe instead of Instagram's own oEmbed API endpoint.
<?php
/*
Plugin Name: Instagram Frame Embedder
Author: Otto
*/
wp_embed_register_handler( 'instagram', '#https?://instagr(\.am|am\.com)/p/([^/]+)#i', 'custom_embed_handler_instagram' );
function custom_embed_handler_instagram( $matches, $attr, $url, $rawattr ) {
if ( !empty($rawattr['width']) && !empty($rawattr['height']) ) {