Skip to content

Instantly share code, notes, and snippets.

View alexmustin's full-sized avatar

Alex Mustin alexmustin

View GitHub Profile
@alexmustin
alexmustin / functions.php
Last active April 9, 2019 16:41
Genesis - Force Gutenberg Pages to be Full-Width
<?php
//* Force full-width-content layout for Gutenberg pages
add_filter( 'genesis_site_layout', 'setGutenbergPageLayout' );
function setGutenbergPageLayout(){
if ( function_exists( 'has_blocks' ) && has_blocks( get_the_ID() ) ) {
return 'full-width-content';
}
}
@alexmustin
alexmustin / functions.php
Created October 3, 2018 19:32
WordPress Customizer - Remove existing Controls, Panels, and Sections
<?php
add_action( "customize_register", "am_customizer_mods" );
function am_customizer_mods( $wp_customize ) {
//* Remove 'header image' Control
$wp_customize->remove_control("header_image");
//* Remove 'widgets' Panel
$wp_customize->remove_panel("widgets");
@alexmustin
alexmustin / theme-setup.php
Last active April 9, 2019 16:41
Genesis: Add the Featured Image to Single Post pages
<?php
// Add featured image on single post
add_action( 'genesis_entry_header', 'hellopro_featured_image', 1 );
function hellopro_featured_image() {
$image = genesis_get_image( array(
'format' => 'html',
'size' => 'featured',
'context' => '',
'attr' => array ( 'class' => 'aligncenter' ),
@alexmustin
alexmustin / shortcodes.php
Last active April 16, 2019 18:08
Simple Shortcode to display a Featured Page or Post
<?php
/**
* This code adds a custom Shortcode to display a "Featured Post."
*/
function featuredpost_shortcode( $atts ) {
// Var defaults
$defaults['id'] = 1;
$postID = '';
@alexmustin
alexmustin / style-editor.css
Created April 3, 2019 22:53
Gutenberg - add dotted lines around "AB Container" blocks
[data-type="atomic-blocks/ab-container"] > .editor-block-list__block-edit {
border: 2px dotted #ccc;
}
@alexmustin
alexmustin / functions.php
Last active April 22, 2019 19:50
Gutenberg - make Button blocks open links in a new window
<?php
//* Enqueue Script
add_action( 'wp_enqueue_scripts', 'yourtheme_enqueue_globaljs_script' );
function yourtheme_enqueue_globaljs_script() {
wp_enqueue_script( 'global-js', get_stylesheet_directory_uri() . "/global.js", array( 'jquery' ), '1.0', true );
}
@alexmustin
alexmustin / functions.php
Created March 2, 2020 22:13
Enable "Dark Mode" in WordPress Gutenberg Block Editor
<?php
// Use Dark Mode in Block Editor.
add_theme_support( 'dark-editor-style' );
?>
@alexmustin
alexmustin / plugin.php
Last active March 19, 2020 00:23
WordPress - Disable Admin Notification of User Password Change
<?php
/**
* Disable Admin Notification of User Password Change
*
* Credit: https://wordpress.stackexchange.com/a/266006/67466
*
* Suppressing this email notification has to be handled
* with a plugin because pluggable.php is loaded earlier
* than a theme's functions.php file.
@alexmustin
alexmustin / functions.php
Created April 2, 2020 19:53
Snippet - function to Increase/Decrease brightness of a HEX color by a percentage
<?php
/**
* Increases or decreases the brightness of a color by a percentage of the current brightness.
*
* Credit: https://stackoverflow.com/a/54393956/4256497
*
* @param string $hex_code Supported formats: `#FFF`, `#FFFFFF`, `FFF`, `FFFFFF`
* @param float $adjust_pct A number between -1 and 1. E.g. 0.3 = 30% lighter; -0.4 = 40% darker.
*
@alexmustin
alexmustin / functions.php
Created July 17, 2020 21:35 — forked from sirchrispy/functions.php
WP: Allow shortcodes everywhere
//* Shortcode optimization
add_filter( 'the_content', 'do_shortcode' ); // Allow shortcodes inside of shortcodes
add_filter( 'comment_text', 'do_shortcode' ); // Allow shortcodes in comments
add_filter( 'comment_text', 'shortcode_unautop' ); // Prevent comment shortcodes from wrapping in <p>...</p> tags
add_filter( 'the_excerpt', 'do_shortcode' ); // Allow shortcodes in excerpts
add_filter( 'the_excerpt', 'shortcode_unautop' ); // Prevent excerpt shortcodes from wrapping in <p>...</p> tags
add_filter( 'widget_text', 'do_shortcode' ); // Allow shortcodes in widgets
add_filter( 'widget_text', 'shortcode_unautop' ); // Prevent shortcodes in widgets from wrapping in <p>...</p> tags