Skip to content

Instantly share code, notes, and snippets.

View merianos's full-sized avatar

Merianos Nikos merianos

View GitHub Profile
@merianos
merianos / .htaccess
Created August 5, 2016 09:18
Browser caching
# BEGIN W3TC Browser Cache
<IfModule mod_mime.c>
AddType text/css .css
AddType text/x-component .htc
AddType application/x-javascript .js
AddType application/javascript .js2
AddType text/javascript .js3
AddType text/x-js .js4
AddType text/html .html .htm
@merianos
merianos / vhost.conf
Created February 26, 2016 11:37
Apache virtual host with Virtual Document Root
<VirtualHost 192.168.1.101:80>
UseCanonicalName Off
VirtualDocumentRoot "/media/merianos/Large Internal/Web Development Projects/%3/%2.1/%2+"
ServerAlias *
DirectoryIndex index.php index.html index.htm
LogLevel debug
ErrorLog /var/log/apache2/vhosts-error.log
CustomLog /var/log/apache2/vhosts-access.log combined
@merianos
merianos / index.html
Created December 6, 2015 09:00
Example implementaions
<div class="text-center text-sm-left text-lg-right">
Tollere capacius cingebant librata eodem pugnabant!
</div>
@merianos
merianos / text-align.scss
Created December 6, 2015 08:35
Sass implementation of text align per column
$screens : $container-sm, $container-md, $container-lg;
$sizes : sm, md, lg;
$aligns : left, right, center, justify;
$count : 0;
@each $screen in $screens {
$count : $count + 1;
@media ( min-width: #{$screen} ) {
$size : nth($sizes, $count);
@merianos
merianos / text-align.less
Created December 6, 2015 08:22
Less implementation of text align per column
@align: left, right, center, justify;
@screen : @screen-sm-min, @screen-md-min, @screen-lg-min;
@sizes : sm, md, lg;
.createMediaQueryRules( @mediaIterator:1 ) when ( @mediaIterator <= length( @screen ) ) {
@mediaQuery : extract( extract( @screen, @mediaIterator ), 1 );
@size : extract( extract( @sizes, @mediaIterator ), 1 );
@media ( min-width : @mediaQuery ) {
.createTextAlignRules( @iterator:1 ) when ( @iterator <= length( @align ) ) {
@merianos
merianos / functions.php
Created December 5, 2015 13:57
PageBuilder final result
function register_my_widgets_folder( $folders = array() ) {
$folders[] = dirname( __FILE__ ) . '/widgets/';
return $folders;
}
add_filter( 'siteorigin_widgets_widget_folders', 'register_my_widgets_folder' );
function manually_load_widgets() {
$widgets_folder = dirname( __FILE__ ) . '/widgets/';
$contents = scandir( $widgets_folder );
@merianos
merianos / functions.php
Created December 5, 2015 13:50
Loading custom fields in PageBuilder
function load_custom_fields() {
$base_dir = dirname( __FILE__ ) . '/fields/';
foreach ( glob( $base_dir . '*.php' ) as $file ) {
require_once $file;
}
}
add_action( 'admin_init', 'load_custom_fields' );
@merianos
merianos / functions.php
Created December 5, 2015 13:47
Allow PageBuilder to see your custom fields
function register_unique_namespace( $class_prefixes = array() ) {
$class_prefixes[] = 'My_Custom_Field_';
return $class_prefixes;
}
add_filter( 'siteorigin_widgets_field_class_prefixes', 'register_unique_namespace' );
function register_my_custom_fields_folder( $class_paths = array() ) {
$class_paths[] = dirname( __FILE__ ) . '/fields/';
@merianos
merianos / functions.php
Last active December 5, 2015 13:54
Explain Page Builder how to load your widgets
function manually_load_widgets() {
$widgets_folder = dirname( __FILE__ ) . '/widgets/';
$contents = scandir( $widgets_folder );
foreach( $contents as $item ) {
if ( '.' === $item || '..' === $item || !is_dir( $widgets_folder . $item ) ) {
continue;
}
foreach ( glob( $widgets_folder . $item . '/*.php' ) as $file ) {