Skip to content

Instantly share code, notes, and snippets.

View craigsimps's full-sized avatar

Craig Simpson craigsimps

View GitHub Profile
@craigsimps
craigsimps / sidebars.php
Last active December 23, 2015 18:26
Refactor code to register multiple widget area from Parallax Pro theme.
<?php
/**
* Register sidebars.
*
* @author Craig Simpson <craig@designed2.co.uk>
* @package Genesis_Starter_Theme
* @since 1.0.0 Initial Commit
*/
$sidebars = [
@craigsimps
craigsimps / styleguide.html
Created December 30, 2015 22:38
Basic HTML elements for copy & paste into WordPress page.
<h1>Basic Elements</h1>
<p>Lorem ipsum dolor sit amet, <a href="#" title="test link">test link</a> adipiscing elit. Nullam dignissim convallis est. Quisque aliquam. Donec faucibus. Nunc iaculis suscipit dui. Nam sit amet sem. Aliquam libero nisi, imperdiet at, tincidunt nec, gravida vehicula, nisl. Praesent mattis, massa quis luctus fermentum, turpis mi volutpat justo, eu volutpat enim diam eget metus. Maecenas ornare tortor. Donec sed tellus eget sapien fringilla nonummy. Mauris a ante. Suspendisse quam sem, consequat at, commodo vitae, feugiat in, nunc. Morbi imperdiet augue quis tellus.</p>
<p>Lorem ipsum dolor sit amet, <em>emphasis</em> consectetuer adipiscing elit. Nullam dignissim convallis est. Quisque aliquam. Donec faucibus. Nunc iaculis suscipit dui. Nam sit amet sem. Aliquam libero nisi, imperdiet at, tincidunt nec, gravida vehicula, nisl. Praesent mattis, massa quis luctus fermentum, turpis mi volutpat justo, eu volutpat enim diam eget metus. Maecenas ornare tortor. Donec sed tellus eget sapien
@craigsimps
craigsimps / header.php
Created January 6, 2016 09:50
Returning multiple ACF fields dynamically.
$post_id = get_the_ID();
$fields = [
'front_page_image_title',
'front_page_introduction',
];
foreach ( $fields as $field ) {
${$field} = get_post_meta( $post_id, $field, true);
}
@craigsimps
craigsimps / snippets.php
Created January 8, 2016 23:37
Example adding a meta box to CPT Archive Settings page, saving and loading values.
<?php
add_filter( 'genesis-cpt-archive-snippet', 'cs_add_additional_field' );
/**
* Add additional field to the Genesis CPT Archive Settings array for snippet post type.
*
* @param array $default_settings
* @return array modified default_settings
*
*/
@craigsimps
craigsimps / Meta.php
Created January 18, 2016 21:31
Class which will retrieve custom fields when passed an array of field names.
<?php
/**
* Simple class designed to return
* multiple custom fields.
*
* This is a simple class which will
* return custom fields in the format
* $this->field_name when passed an
* array of custom field names.
*
@craigsimps
craigsimps / .htaccess
Created May 4, 2016 13:34
Standard WordPress .htaccess.
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
@craigsimps
craigsimps / .htaccess
Last active May 4, 2016 13:39
WordPress .htaccess with Expires Caching.
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
@craigsimps
craigsimps / .htaccess
Last active May 4, 2016 13:57
Add Browser Caching to WordPress .htaccess
## EXPIRES CACHING ##
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg "access 1 year"
ExpiresByType image/jpeg "access 1 year"
ExpiresByType image/gif "access 1 year"
ExpiresByType image/png "access 1 year"
ExpiresByType text/css "access 1 month"
ExpiresByType text/x-javascript "access 1 month"
ExpiresByType application/pdf "access 1 month"
@craigsimps
craigsimps / nginx.conf
Created May 6, 2016 16:32
Tweaks for nginx conf: wp redirect, gzip, set expiry headers, set security headers.
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?q=$1 last;
break;
}
gzip on;
gzip_disable "msie6";
gzip_comp_level 6;
gzip_min_length 1100;
gzip_buffers 16 8k;
@craigsimps
craigsimps / Gulpfile.js
Created November 14, 2016 01:00
Concatenate & Minify Bower JS & CSS Files
// Include Gulp.
var gulp = require('gulp');
// Include config.
var config = require('../tasks/config').vendor;
// Include Plugins.
var vendorFiles = require('bower-files')({
cwd: config.path
}),