Skip to content

Instantly share code, notes, and snippets.

@Komock
Komock / fetch-with-wp-nonce.js
Created May 18, 2018 07:14
Submit form with wp-nonce token using fetch
const formEl = document.querySelector('.form-profile-upd');
formEl.addEventListener('submit', e => {
e.preventDefault();
const data = new FormData(formEl);
const id = window.WP_DATA.USER_ID;
console.log(data.get('birthday'));
fetch(`${WP_DATA.ROOT_URL}wp/v2/users/` + id, {
method: 'POST',
credentials: 'same-origin',
body: {
@Komock
Komock / function.php
Created April 11, 2018 13:44
Remove Sidebars from Genesis Child Theme
// Remove default genesis sidebars
remove_action( 'genesis_after_content', 'genesis_get_sidebar' );
remove_action( 'genesis_after_content_sidebar_wrap', 'genesis_get_sidebar_alt');
@Komock
Komock / overflow-scrolling.css
Created November 2, 2017 07:06
Off scroll stop on mobile devices
body {
-webkit-overflow-scrolling: touch;
}
@Komock
Komock / observer.js
Last active September 11, 2019 20:36
Simple ES6 Observer Class
class Observer {
subscribe(subscriber) {
this.subscribers.push(subscriber);
}
publish(event, data) {
let query = this.subscribers.filter(subscriber => subscriber.event === event);
if (query.length) query.forEach(subscriber => subscriber.action(data));
}
constructor() {
this.subscribers = [];
@Komock
Komock / integerToPrice.js
Created October 2, 2016 18:31
Format Integer to Price with Space (usefull for rubles)
// Price Format
function formatNum(num){
var num = num + '',
arr = num.split(''),
arrCopy = arr.slice(0),
j = 0;
for(var i = arr.length -1 ; i >= 0; i--){
if ( j % 3 === 0 && j !== 0 ) {
arrCopy.splice( i + 1, 0, ' ' );
}
@Komock
Komock / function.php
Last active July 22, 2016 05:35
Remove/replace stylesheet on Genesisframework
<?php
// Remove
remove_action( 'genesis_meta', 'genesis_load_stylesheet' );
// Replace with custom
add_filter( 'stylesheet_uri', 'custom_replace_default_style_sheet', 10, 2 );
function custom_replace_default_style_sheet() {
return CHILD_URL . '/green-pack.css';
}
@Komock
Komock / function.php
Created April 23, 2016 21:30
Genesis remove .site-inner markup
<?php
//* Remove .site-inner
add_filter( 'genesis_markup_site-inner', '__return_null' );
add_filter( 'genesis_markup_content-sidebar-wrap_output', '__return_false' );
add_filter( 'genesis_markup_content', '__return_null' );
?>
function debounce(func, wait, immediate) {
var timeout;
return function() {
var context = this, args = arguments;
var later = function() {
timeout = null;
if (!immediate) func.apply(context, args);
};
var callNow = immediate && !timeout;
clearTimeout(timeout);
@Komock
Komock / function.php
Created January 9, 2016 13:30
Genesis Framework remove post info
<?php
// Remove post info
remove_action('genesis_before_post_content', 'genesis_post_info');
?>
@Komock
Komock / function.php
Last active January 9, 2016 13:36
Genesis Framework unregister site layouts
<?php
// Unregister other site layouts
genesis_unregister_layout( 'full-width-content' );
genesis_unregister_layout( 'content-sidebar' );
genesis_unregister_layout( 'sidebar-content' );
genesis_unregister_layout( 'content-sidebar-sidebar' );
genesis_unregister_layout( 'sidebar-sidebar-content' );
genesis_unregister_layout( 'sidebar-content-sidebar' );