Skip to content

Instantly share code, notes, and snippets.

View musamamasood's full-sized avatar
🎯
Focusing

Muhammad Usama Masood musamamasood

🎯
Focusing
View GitHub Profile
@musamamasood
musamamasood / functions.php
Created August 12, 2016 21:50
WooCommerce - Only show grouped products parent at Shop page.
//The idea is that we're modifying the query such that it will only show top-level items.... thus (in theory) nothing that has been assigned to a group, which would then have the group product's ID as the post_parent.
add_action( 'woocommerce_product_query', 'musamam_product_query' );
function musamam_product_query( $q ){
$q->set( 'post_parent', 0 );
}
@musamamasood
musamamasood / functions.php
Created August 3, 2016 19:49
WooCommerce Dynamic Pricing with Product Add-ons on Checkout
/**
* Add option price in WooCommerce product
* WooCommerce Dynamic Pricing with Product Add-ons on Checkout
* https://www.youtube.com/watch?v=syd2OlKdeVc
*/
add_action( 'woocommerce_before_calculate_totals', 'divi_add_option_price' );
function divi_add_option_price( $cart_object ){
foreach ( $cart_object->cart_contents as $key => $value ) {
//$product_id = $value['product_id'];
@musamamasood
musamamasood / gist:d29679224aefa05e664cfc9a55a7f83c
Created July 22, 2016 16:37
How to create a localhost server to run an AngularJS project
# Install:
npm install -g http-server.
# After installation cd into your project folder and run http-server -o. -o is to open browser to the page.
http-server -o
@musamamasood
musamamasood / wc-pagination-functions.php
Created July 1, 2016 13:13 — forked from klihelp/wc-pagination-functions.php
WooCommerce shortcode pagination on pages
<?php
/**
* This code shows pagination for WooCommerce shortcodes when it's embeded on single pages.
* Include into functions.php.
*/
if ( ! is_admin() ) {
// ---------------------- FRONTPAGE -------------------
if ( defined('WC_VERSION') ) {
@musamamasood
musamamasood / sticky-header.html
Created June 10, 2016 20:02
Create an animated sticky header with css3 and javascript.
<script>
/**
* Add Class to header area to make it sticky.
* Placed into header or footer area.
*/
function init() {
window.addEventListener('scroll', function(e){
var distanceY = window.pageYOffset || document.documentElement.scrollTop,
shrinkOn = 300,
header = document.getElementById("headerID"); //Header ID
@musamamasood
musamamasood / wp-config-debug.php
Created June 8, 2016 14:09 — forked from jrfnl/wp-config-debug.php
Code to add to wp-config.php to enhance information available for debugging.
<?php
/**
* == About this Gist ==
*
* Code to add to wp-config.php to enhance information available for debugging.
*
* You would typically add this code below the database, language and salt settings
*
* Oh.. and *do* make sure you change the path to the log file to a proper file path on your server (make sure it exists).
*
@musamamasood
musamamasood / content-featured-post.php
Created June 8, 2016 13:09
Adding Author and Display Time to Featured Content.
<?php
/**
* The template for displaying featured posts on the front page
*
* @package WordPress
* @subpackage Twenty_Fourteen
* @since Twenty Fourteen 1.0
*/
?>
#!/bin/sh
git filter-branch --env-filter '
OLD_EMAIL="[email protected]"
CORRECT_NAME="Your Correct Name"
CORRECT_EMAIL="[email protected]"
if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ]
then
@musamamasood
musamamasood / Vagrant
Last active April 7, 2016 21:37
Setup Vagrant for Development.
# Make directory
$ mkdir vagrant_test
# Init Vagrant
$ vagrant init
# Add boxes to Vagrant
$ vagrant box add ubuntu/trusty64 ##https://atlas.hashicorp.com/boxes/search
# Open Vagrant File in editor and add/update
@musamamasood
musamamasood / media-queries.scss
Created April 4, 2016 20:50 — forked from chrisl8888/media-queries.scss
All Media Queries breakpoints
@media (min-width:320px) { /* smartphones, portrait iPhone, portrait 480x320 phones (Android) */ }
@media (min-width:480px) { /* smartphones, Android phones, landscape iPhone */ }
@media (min-width:600px) { /* portrait tablets, portrait iPad, e-readers (Nook/Kindle), landscape 800x480 phones (Android) */ }
@media (min-width:801px) { /* tablet, landscape iPad, lo-res laptops ands desktops */ }
@media (min-width:1025px) { /* big landscape tablets, laptops, and desktops */ }
@media (min-width:1281px) { /* hi-res laptops and desktops */ }