Skip to content

Instantly share code, notes, and snippets.

View aaroncampbell's full-sized avatar

Aaron D. Campbell aaroncampbell

View GitHub Profile
@aaroncampbell
aaroncampbell / create-shopp-promo.php
Created January 10, 2014 16:18
This is how I create a promo code. I'm only using percentage off, but you can set it up however you want. I'm getting $_POST['percentage'] and $_POST['coupon-code'] from a front-end form, along with the nonces
<?php
if ( isset( $_POST['action'] ) && 'add-coupon-code' == $_POST['action'] ) {
if ( empty( $_POST['add_coupon_code_nonce'] ) || ! wp_verify_nonce( $_POST['add_coupon_code_nonce'], 'add_coupon_code' ) ) {
fc_message( "You don't have permissions to add a coupon code.", 'error' );
} else {
$_POST['percentage'] = filter_percentage( $_POST['percentage'] );
$_POST['coupon-code'] = sanitize_key( $_POST['coupon-code'] );
$Promotion = new ShoppPromo();
$data = array(
@aaroncampbell
aaroncampbell / twitter-build-list.sh
Last active November 3, 2017 21:56
Creates a list with all twitter users linked from a given URL. Requires https://github.com/sferik/t and you must have already authorized your Twitter account using it.
#!/usr/bin/env bash
# Load in our options
while getopts "u:l:d:a" option
do
case ${option} in
u) url=${OPTARG};;
l) list_name=${OPTARG};;
d) list_description=${OPTARG};;
a) append=1;;
<?php
function reverse( $arr ) {
$len = count( $arr );
for ( $i = 0; $i < $len/2; $i++ ) {
list( $arr[$i], $arr[$len-$i-1] ) = array( $arr[$len-$i-1], $arr[$i] );
}
return $arr;
}
$test = array('a', 'b', 'c', 'd', 'e');
var_dump( reverse( $test ) );
@aaroncampbell
aaroncampbell / two-factor-logo.svg
Last active June 15, 2016 17:54
Two Factor Logo - SVG
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@aaroncampbell
aaroncampbell / keybase.md
Created February 25, 2016 21:55
Keybase Verification for Aaron D. Campbell

Keybase proof

I hereby claim:

  • I am aaroncampbell on github.
  • I am aaroncampbell (https://keybase.io/aaroncampbell) on keybase.
  • I have a public key whose fingerprint is 442C 8E24 643A F2B0 1BFB 62D5 73C8 A0AF 8D6A C9C5

To claim this, I am signing this object:

@aaroncampbell
aaroncampbell / background-updates-for-major-releases.php
Created October 24, 2013 23:50
WordPress plugin to enable automatic background updates for major versions.
<?php
/**
* Plugin Name: Background Updates for Major Releases
* Plugin URI: http://ran.ge/
* Description: Enables background updates for major releases
* Version: 1.0.0
* Author: Aaron D. Campbell
* Author URI: http://ran.ge/
* License: GPLv2 or later
*/
@aaroncampbell
aaroncampbell / show-related-thumbs.php
Created September 18, 2013 15:05
Showing related post thumbnails using Efficient Related Posts for WordPress
@aaroncampbell
aaroncampbell / get_php_bin_from_path.php
Created August 21, 2013 13:34
Find the PHP binary in the path
<?php
/**
* Checks the path for the php binary and returns it's location if found
*
* @return false|string False on failure, String of binary location on success
*/
function get_php_bin_from_path() {
$paths = explode( PATH_SEPARATOR, getenv( 'PATH' ) );
foreach ( $paths as $path ) {
// Windows XAMPP sometimes has the actual bin as the path
@aaroncampbell
aaroncampbell / shopp-cart-sort.php
Last active December 15, 2015 03:59
Sorting Shopp cart by blog_id (product meta data)
<?php
foreach ( ShoppOrder()->Cart->contents as &$item ) {
$item->blog_id = get_post_meta( $item->product, 'blog_id', true );
}
function finecabin_sort_cart( $a, $b ) {
if ( $a->blog_id == $b->blog_id )
return 0;
return ( $a->blog_id < $b->blog_id )? -1 : 1;
}
@aaroncampbell
aaroncampbell / redgreen.sh
Last active December 11, 2015 21:58
Measure the added and deleted lines in patches
# For patches, lower numbers are better
function redgreen() {
sed s/'^\(---\|+++\)'// | ack "^[-|\+]" -oh | sort | uniq -c | sed s/"\s*\([0-9]\+\)\s*\([+-]\)"/"\2\1"/ | xargs | awk '{print $2}{print $1}{print "--\r\n"$2 + $1}'
}
# Example usage
# $ svn di | redgreen
# +205
# -506
# --