Skip to content

Instantly share code, notes, and snippets.

View bradt's full-sized avatar

Brad Touesnard bradt

View GitHub Profile
@bradt
bradt / model-order-meta.php
Last active June 26, 2019 12:08
Managing Custom Tables in WordPress
<?php
class WPAS_Model_Order_Meta extends WPAS_Model {
static $primary_key = 'order_id';
static function set_as_refunded( $order_id ) {
$data = array( 'is_refunded' => 1 );
$where = array( 'order_id' => $order_id );
self::update( $data, $where );
}
@bradt
bradt / backup.sh
Last active November 22, 2018 16:53
Simple Remote Backups for WordPress
#!/bin/bash
BUCKET_NAME=${1-''}
# Get upload folder path using WP-CLI
# We use --url=http://blah.com in our WP-CLI commands so that we don't get the PHP warning about HTTP_HOSTS
UPLOADS_PATH=$(wp eval '$upload_dir = wp_upload_dir(); echo $upload_dir["basedir"];' --url=http://blah.com 2>&1)
if [[ $UPLOADS_PATH =~ Error ]]
then
@bradt
bradt / backup.sh
Last active October 23, 2021 21:44
Simple WordPress Backups v2
#!/bin/bash
NOW=$(date +%Y%m%d%H%M%S)
SQL_FILE=${NOW}_database.sql
# Backup database
wp db export ../backups/$SQL_FILE --add-drop-table
# Compress the database file
gzip ../backups/$SQL_FILE
@bradt
bradt / campaign-monitor-to-drip.php
Created March 31, 2015 15:29
Sync subscribers from Campaign Monitor to Drip
#!/usr/bin/php
<?php
set_time_limit(0);
// Get the Drip API wrapper at https://github.com/DripEmail/drip-php
require __DIR__ . '/Drip_API.class.php';
$drip = new Drip_API( 'xxxxxxxxxxxxxx' );
$drip_account_id = 0000000;
@bradt
bradt / url-coupons.js
Last active August 29, 2015 14:17
WooCommerce URL Coupons
$( document ).ready( function() {
var cookie_name = 'dbrains-coupon';
var cookie_name_error = 'dbrains-coupon-error';
if ( 'undefined' === typeof $.cookie( cookie_name ) ) {
return;
}
var message = 'The coupon code ' + $.cookie( cookie_name ).toUpperCase() + ' has been successfully applied.';
@bradt
bradt / db-backup.sh
Last active August 29, 2015 14:03
Painfully simple database snapshot shell script
#!/bin/bash
cd ~/db-backups
# Configure your database info
DB_NAME=sample_db
DB_USERNAME=sample_user
DB_PASSWORD=sample_pw
# Configure the name of the file

Keybase proof

I hereby claim:

  • I am bradt on github.
  • I am bradt (https://keybase.io/bradt) on keybase.
  • I have a public key whose fingerprint is FB97 714E D2B6 8C5E FC0A E64B B95F D312 670E 0E89

To claim this, I am signing this object:

@bradt
bradt / auto-login.php
Created April 28, 2014 19:21
Automatic Logins for WordPress
<?php
class DBrains_Auto_Login {
protected static $_instance = null;
function __construct() {
global $wpdb;
$this->expires = DAY_IN_SECONDS * 30 * 4;
$this->table = $wpdb->prefix . 'dbrns_auto_login_keys';
@bradt
bradt / wp-routes.php
Created May 18, 2012 16:06
WordPress Routes
<?php
function bt_register_routes( $routes ) {
foreach ( $routes as $route_name => $args ) {
bt_register_route( $route_name, $args );
}
}
function bt_register_route( $route_name, $args = array() ) {
$args = wp_parse_args( $args, array(
'query_var' => 'route_' . $route_name,
@bradt
bradt / setup-dnsmasq-os-x-lion
Created March 11, 2012 20:23
Setting up dnsmasq for Local Web Development Testing on any Device
# Setting up dnsmasq for Local Web Development Testing on any Device
Please note, these instructions are for OS X Lion.
First, you need to get the IP address of your machine on your local network. In OS X, the easiest place to find this is in System Preferences > Network. If you're using DHCP on your local network, you will want to make sure your computer requests the same IP address when it renews it's IP address lease. I recommend configuring the DCHP Reservation settings on your router to accomplish this. Otherwise, you can specify a manual address in your network settings:
1. Go to *System Preferences > Network*
1. Click *Advanced...*