Skip to content

Instantly share code, notes, and snippets.

View stephanieleary's full-sized avatar

Stephanie Leary stephanieleary

View GitHub Profile
@stephanieleary
stephanieleary / blockquote-cite-tinymce.php
Last active August 1, 2017 16:36
Blockquote + Cite TinyMCE button PHP
<?php
function scl_pullquote_mce_button() {
// check if WYSIWYG is enabled
if ( 'true' == get_user_option( 'rich_editing' ) ) {
add_filter( 'mce_external_plugins', 'scl_pullquote_add_tinymce_plugin' );
add_filter( 'mce_buttons', 'scl_pullquote_register_mce_button' );
// enforce Dashicon font
echo '<style>
.dashicons-testimonial::before {
@stephanieleary
stephanieleary / blockquote-cite-tinymce.js
Created October 16, 2016 20:01
Blockquote + Cite TinyMCE button JS
(function() {
tinymce.PluginManager.add('blockquote_cite', function( editor, url ) {
editor.addButton( 'blockquote_cite', {
title: 'Blockquote & Cite',
icon: "icon dashicons-testimonial",
onclick: function() {
editor.windowManager.open( {
title: 'Insert Blockquote and Citation',
body: [
{
@stephanieleary
stephanieleary / sidebars.php
Created October 16, 2016 19:34
CPT-specific sidebars
<?php
add_action( 'get_header', 'scl_cpt_switch_sidebar' );
function scl_cpt_switch_sidebar() {
remove_action( 'genesis_sidebar', 'genesis_do_sidebar' );
add_action( 'genesis_sidebar', 'scl_do_sidebar' );
}
function scl_do_sidebar() {
@stephanieleary
stephanieleary / screen-options.php
Created October 16, 2016 19:26
Turn off some screen options; turn ON others
<?php
add_filter( 'default_hidden_meta_boxes', 'scl_toggle_meta_boxes', 10, 2 );
function scl_toggle_meta_boxes( $hidden, $screen ) {
$hide_these = array(
'people_typediv',
'facility_typediv',
'genesis-theme-settings-version',
'genesis-theme-settings-feeds',
@stephanieleary
stephanieleary / footer-rich-text.php
Created October 16, 2016 19:22
Use an ACF rich text option instead of Genesis footer
@stephanieleary
stephanieleary / footer-links.php
Last active October 17, 2016 14:27
Centrally managed footer links for TAMU sites
@stephanieleary
stephanieleary / toolbar-buttons.php
Created October 16, 2016 19:11
Remove WP TinyMCE toolbar buttons
<?php
// Remove the underline and full-justify toolbar buttons
function scl_mce_buttons( $buttons ) {
$remove = array( 'underline', 'alignjustify' );
return array_diff( $buttons, $remove );
}
add_filter( 'mce_buttons_2', 'scl_mce_buttons' );
@stephanieleary
stephanieleary / ms-network-admin.php
Last active April 14, 2022 16:26
Multisite Network Administration functions
<?php
/*
Plugin Name: Texas A&M Multisite Network Administration
Version: 0.4.2
Plugin URI: https://github.tamu.edu/COE-wordpress/coe-network-admin
Description: Adds columns to the Network Sites list screen; subsite user login redirects.
Author: Stephanie Leary
Author URI: http://stephanieleary.com
GitHub Plugin URI: https://github.tamu.edu/COE-wordpress/coe-network-admin
GitHub Enterprise: https://github.tamu.edu
@stephanieleary
stephanieleary / default-network-roles.php
Created October 11, 2016 15:51
Give new network users a default role on the main site
<?php
function tees_add_network_default_roles( $user_id ) {
if ( is_main_site() && !is_user_member_of_blog( $user_id ) )
add_user_to_blog( get_current_blog_id(), $user_id, 'subscriber' );
}
add_action( 'wpmu_activate_user', 'tees_add_network_default_roles', 10, 1 );
add_action( 'wpmu_new_user', 'tees_add_network_default_roles', 10, 1 );
add_action( 'user_register', 'tees_add_network_default_roles', 10, 1 );
@stephanieleary
stephanieleary / subsite-login-redirect.php
Last active October 10, 2016 21:40
Redirect user to primary blog dashboard if not superadmin or not allowed on this blog
<?php
add_filter( 'login_redirect', 'tees_subsite_login_redirect', 100, 3 );
function tees_subsite_login_redirect( $redirect_to, $request_redirect_to, $user ) {
if ( !is_user_member_of_blog() || ( is_main_site() && !is_super_admin() ) ) {
$redirect_to = get_admin_url( get_userdata( $user->ID )->primary_blog );
}
return $redirect_to;
}