Skip to content

Instantly share code, notes, and snippets.

View nickcernis's full-sized avatar

Nick Cernis nickcernis

  • Innsbruck, Austria
  • 02:54 (UTC +02:00)
View GitHub Profile
@nickcernis
nickcernis / functions.php
Created October 20, 2017 12:31
Strip the ellipsis from the Genesis read more text in the Featured Page widget
<?php
add_filter( 'get_the_content_more_link', 'custom_remove_ellipsis' );
/**
* Strips the ellipsis from the Genesis more link.
*
* @param string $more_link_html The current more link HTML.
* @return string The link HTML without the ellipsis.
*/
function custom_remove_ellipsis( $more_link_html ) {
$link_without_ellipsis = str_replace( '&#x02026;', '', $more_link_html );
include config/theme-info.make
include src/make/theme-info-original.make
include src/make/show-help-from-comments.make
.PHONY: help sass build watch bump gitinit rename undo-rename dist clean b r ur gi ts
help: show-help-from-comments
## Watch and build Sass files only. Compiles all Sass to style.css, unminified.
sass:
@nickcernis
nickcernis / functions.php
Created September 20, 2016 10:14
Reorder Simple Social Icons
<?php
add_filter( 'simple_social_default_profiles', 'custom_reorder_simple_icons' );
function custom_reorder_simple_icons( $icons ) {
// Set your new order here
$new_icon_order = array(
'bloglovin' => '',
'dribbble' => '',
'email' => '',
@nickcernis
nickcernis / dnsmasq.md
Last active July 6, 2023 13:11
dnsmasq

Never touch your local /etc/hosts file in OS X again

To setup your computer to work with *.dev domains, e.g. project.dev, awesome.dev and so on, without having to add to your hosts file each time.

Requirements

Install

@nickcernis
nickcernis / parsing-urls.js
Created July 27, 2016 15:34
Parsing URLs in JavaScript
// From https://news.ycombinator.com/item?id=12172180
var parser = document.createElement('a');
parser.href = "http://example.com:3000/pathname/?search=test#hash";
parser.protocol; // => "http:"
parser.hostname; // => "example.com"
parser.port; // => "3000"
parser.pathname; // => "/pathname/"
parser.search; // => "?search=test"
parser.hash; // => "#hash"
parser.host; // => "example.com:3000"
@nickcernis
nickcernis / functions.php
Last active September 30, 2018 16:56
Remove Genesis custom layout metabox on pages with a set template
<?php
/* Remove Genesis post layouts metabox if template matches 'custom-layout.php'*/
add_action( 'admin_menu', 'custom_remove_custom_layouts' );
function custom_remove_custom_layouts() {
$template_file = get_post_meta( $_GET['post'], '_wp_page_template', true );
if ( $template_file == 'custom-layout.php' ) {
remove_action( 'admin_menu', 'genesis_add_inpost_layout_box' );
}
@nickcernis
nickcernis / mailchimp-popup-for-wordpress.md
Last active July 28, 2022 14:49
MailChimp Popup Script that works with WordPress sites

MailChimp's default popup scripts can break on WordPress sites that use jQuery/jQuery UI unless you include their embed code as the final elements before the closing body tag.

Including them in this way isn't always possible or easy with WordPress.

The code below is an alternative implementation of the loader that forces MailChimp's popup scripts to appear below all other scripts upon page load.

To use it, modify the baseUrl, uuid, and lid attributes with the ones from the original popup script that MailChimp supplies.

@nickcernis
nickcernis / functions.php
Last active August 6, 2020 14:39
Count widgets that are active for the current WPML language
<?php
/**
* Count widgets in a given sidebar, taking WPML language switching into account.
*
* Assumes widget languages are switched with the WPML String Translation or WPML Widgets plugins.
*
* @param string $id The sidebar ID.
*
* @return int The count of widgets in the sidebar.
@nickcernis
nickcernis / functions.php
Last active September 6, 2020 06:34
Genesis Simple Share Shortcode
<?php
// Adds a [social-icons] shortcode to output Genesis Simple Share icons in posts
// https://wordpress.org/plugins/genesis-simple-share/
// Add the code below to your active theme's functions.php file,
// or use in a site-specific plugin.
// The shortcode takes no attributes; change your icon settings via Genesis → Simple Share.
add_shortcode( 'social-icons', 'gss_shortcode' );
@nickcernis
nickcernis / functions.php
Created August 18, 2015 18:56
Force the Page Builder plugin to include the correct class for Simple Social Icons to be rendered more accurately
<?php
// Force the Page Builder plugin to include 'simple-social-icons' in its widget wrapper class
add_filter( 'siteorigin_panels_widget_classes', 'ssi_add_widget_class' );
function ssi_add_widget_class( $classes ) {
if ( in_array( 'widget_simple-social-icons', $classes ) ) {
$classes[] = 'simple-social-icons';
}
return $classes;
}