Skip to content

Instantly share code, notes, and snippets.

Avatar

Eric (shamai) Greenfield saltnpixels

View GitHub Profile
@saltnpixels
saltnpixels / index.js
Last active Jul 15, 2020
Ignition Installer
View index.js
#!/usr/bin/env node
const { spawn } = require('child_process')
const chalk = require('chalk')
const args = require('minimist')(process.argv)
let folder = args._[2] || './'
console.log(chalk.blue('Downloading Ignition Starter Theme'))
@saltnpixels
saltnpixels / membership_meta.php
Last active May 13, 2020
adding membership meta to rcp from ACF
View membership_meta.php
<?php
/*--------------------------------------------------------------
# Saving Features to Membership Levels from an acf repeater field for RCP Pro
--------------------------------------------------------------*/
function some_feature_list( $level ) {
/**
* @var RCP_Levels $rcp_levels_db
*/
global $rcp_levels_db;
View WP_reverse_post_navigation
//found this somewhere on the internet. Reverses the navigation.
//works well with the Post Type Order navigation here https://wordpress.org/plugins/simple-custom-post-order/
//shows the prev and next post in reverse which helps when ordering posts not by date
function the_reverse_post_navigation( $args = array() ) {
$args = wp_parse_args( $args, array(
'prev_text' => '%title',
'next_text' => '%title',
'in_same_term' => false,
@saltnpixels
saltnpixels / upload_url.php
Created Jan 30, 2020
WP Upload URL to Media Library
View upload_url.php
<?php
/**
* @param $url url to upload
* @param int $post_id post to attach it to
*
* Add a url to the media library and attach it to a post if wanted
* @return bool|int|string|WP_Error
*/
View filter_render_block.php
/**
* @param $block_content
* @param $block
*
* @return string
Surrounds block with html.
* Some blocks are too naked to work nicely like ul
*/
function surround_block( $block_content, $block ) {
if ( empty( trim( $block_content ) ) ) {
@saltnpixels
saltnpixels / Render Block Filter
Created Dec 10, 2019
Render_block_filter.php
View Render Block Filter
function test_filter( $block_content, $block ) {
if ( empty( trim( $block_content ) ) ) {
return $block_content;
}
if ( $block['blockName'] == 'core/paragraph' ) {
return sprintf(
'<section class="block-%1$s">%2$s</section>',
sanitize_title( $block['blockName'] ),
$block_content
@saltnpixels
saltnpixels / term_checkbox_fix.php
Created May 30, 2019
Show child term checkboxes in WP properly even after selected
View term_checkbox_fix.php
add_filter( 'wp_terms_checklist_args',
function ( $args ) {
$args['checked_ontop'] = false;
return $args;
} );
@saltnpixels
saltnpixels / WP_local_theme_remote_db.php
Created Mar 6, 2019
WordPress Workflow with remote DB on local
View WP_local_theme_remote_db.php
<?php
//Working on a WordPress theme with others can be difficult if you want to use the same database, but work locally and use git for the code.
//To do this we came up with a solution that allows working with a remote DB that everyone on the team can access, while still developing locally.
//First make sure that your wp-config file is set to use the remote db:
//set the credentials for the remote DB username and table
//change DB host to be the ip of the remote server
//Example:
@saltnpixels
saltnpixels / wp_menu_auto_post_type.php
Created Jul 25, 2018
WP hierarichal menu of any post type. posts are auto added, like pages can be
View wp_menu_auto_post_type.php
//hijack menu and output a whole post type in hierarchical order.
//post type must have hierarchical order capability and menu name must match post type
//add post types for this inside $post_types below
add_filter( 'wp_get_nav_menu_items', 'cpt_auto_add_menu', 10, 3 );
function cpt_auto_add_menu( $items, $menu, $args ) {
$post_types = array( 'add_post_types', 'that_you_want' );
$menu_slug = $menu->slug;
@saltnpixels
saltnpixels / gform_stripe_subscriptions.php
Created Oct 10, 2017
Gravity forms stripe cancel from front end
View gform_stripe_subscriptions.php
<?php
/**
* Payment subscriptions and updating billing and cancelling subscriptions takes place with these hooks
* We need the stripe customer user id for updating billing
* we need the entry id of subscription so we can cancel it.
*/
/**
* @param $entry
You can’t perform that action at this time.