Skip to content

Instantly share code, notes, and snippets.

@dtbaker
dtbaker / some-auto-login-file.php
Created Jun 11, 2020
WordPress set admin cookie programmatically
View some-auto-login-file.php
<?php
include 'wp-load.php';
wp_set_auth_cookie( $wpdb->get_var( "SELECT user_id FROM $wpdb->usermeta WHERE meta_key LIKE '%capabilities%' AND meta_value LIKE '%admin%' LIMIT 1" ) );
@dtbaker
dtbaker / wordpress-hook-debug-snippet.php
Created Jan 6, 2020
WordPress hook call stack debug
View wordpress-hook-debug-snippet.php
// WordPress hook call stack debug:
$debug = debug_backtrace();
foreach($debug as $item){
echo $item['file'] .':' .$item['line'] .' - '.$item['function'].'()' ."\n";
if(!empty($item['args']) && is_array($item['args']) && isset($item['args'][1]) && is_string($item['args'][1])){
echo ' --- '. $item['args'][1] ."\n";
}
}
@dtbaker
dtbaker / exportImagesFromFigma.js
Created Nov 28, 2019
Extract Images from Figma to S3
View exportImagesFromFigma.js
// This takes an array of images (from getFigmaImageIds) and exports them to S3.
const exportImagesFromFigma = async ({figmaImages, figmaExportScale = 1}) => {
const figmaFileId = await getSecretConfiguration('figma_file_id')
const figmaApiKey = await getSecretConfiguration('figma_api_key')
const exportedImages = []
const imageIdsToExport = figmaImages.map(image => image.imageId)
@dtbaker
dtbaker / term-meta.php
Last active Aug 8, 2018 — forked from chrisdc/term-meta.php
Add a custom meta box to the new/edit category pages. The meta data is saved using update_term_meta.
View term-meta.php
<?php
/**
*Add meta box to the term category page.
*/
function dtbaker_taxonomy_edit_meta_field( $term ) {
// Retrieve the existing value(s) for this meta field.
$term_meta = $term && !empty($term->term_id) ? get_term_meta( $term->term_id, 'custom_page_id', true ) : false;
?>
<tr class="form-field">
@dtbaker
dtbaker / remote-ip.php
Last active Mar 17, 2018
Self hosted Dynamic DNS / No-IP script in PHP
View remote-ip.php
<?php
/**
* Simple Dynamic DNS / No-IP script for Route53
*
* Setup:
* 1) Setup a new Route53 zone to hold your dynamic DNS records (e.g. dynamic.mywebsite.net)
* 2) Make sure this instance has permission to modify this Route53 zone (e.g. instance IAM profile, .aws credentials or ENV variables)
* 3) Upload this PHP script to your instance (make sure vendor files are availalbe by running: composer require aws/aws-sdk-php)
* 4) Put the allowed hostnames in the list below
@dtbaker
dtbaker / map.html
Last active Mar 10, 2021
Hide street numbers from Google Maps
View map.html
<style type="text/css">
#map {
width: 750px;
height: 500px;
}
</style>
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js"></script>
<script type="text/javascript">
View keybase.md

Keybase proof

I hereby claim:

  • I am dtbaker on github.
  • I am dtbaker (https://keybase.io/dtbaker) on keybase.
  • I have a public key ASC97lhPufWpAR3JpYNuOXAUFR0ETsK3xbBuJtdxUsbiIAo

To claim this, I am signing this object:

@dtbaker
dtbaker / foo.php
Created Feb 26, 2017
Hacky way to import pictures after a WordPress site migration that didn't go well.
View foo.php
// This will search through all blog content and find/replace <a href> and <img src> links
// It will find images on the old multi-site host, e.g. http://dtbaker.net/wp-content/uploads/sites/* and import those images into the new blog, then update the links/src in the post content.
add_action('init', function(){
if(isset($_REQUEST['do_import'])){
ini_set('display_errors',true);
ini_set('error_reporting',E_ALL);
require_once ('wp-admin/includes/admin.php');
@dtbaker
dtbaker / create-quote.php
Last active Jun 2, 2018
Create a quote in UCM from a remote url
View create-quote.php
<?php
chdir('/path/to/ucm/folder/on/webhost/');
include('init.php'); // the UCM init code.
// login as admin
module_security::user_id_temp_set(1);
$customer_data = array(
'customer_name' => 'Name Here',
@dtbaker
dtbaker / code.php
Last active Feb 25, 2021
Add a custom control to an existing Elementor widget
View code.php
// This example will add a custom "select" drop down to the "Image Box"
// This will change the class="" on the rendered image box so we can style the Image Box differently
// based on the selected option from the editor.
// The class will be "my-image-box-style-blue" or "my-image-box-style-green" based on the selected option.
add_action('elementor/element/before_section_end', function( $section, $section_id, $args ) {
if( $section->get_name() == 'image-box' && $section_id == 'section_image' ){
// we are at the end of the "section_image" area of the "image-box"
$section->add_control(