Resources
CodeReorder By Term in custom taxonomy page query with ‘meta_key’
function filter_product_tax( $query ){
if( $query->is_tax('product-category')):
$query_object = get_queried_object();
$slug = $query_object->slug;
$query->set('orderby', 'meta_value_num title');
$query->set('order', 'ASC');
$query->set('posts_per_page', 24);
$query->set('meta_key', '_reorder_term_product-category_' . $slug . '');
return;
endif;
}
add_action('pre_get_posts', 'filter_product_tax');
CodeStat-filled URL
<?php the_permalink($post->ID); ?>?utm_medium=referral&utm_content=spotlight&utm_source=gmgblog
CodeSBI Instagram Feed CSS
/*----------------------------------------------------------------------------
SBI INSTAGRAM FEED
----------------------------------------------------------------------------*/
#sb_instagram .sbi_type_carousel .fa-clone {
display: none !important;
}
@media (max-width: 768px) {
#sb_instagram #sbi_images .sbi_item {
width: 25% !important;
}
#sb_instagram #sbi_images .sbi_item:nth-child(5), #sb_instagram #sbi_images .sbi_item:nth-child(6), #sb_instagram #sbi_images .sbi_item:nth-child(7), #sb_instagram #sbi_images .sbi_item:nth-child(8) {
display: none !important;
}
}
@media (max-width: 650px) {
#sb_instagram #sbi_images .sbi_item {
width: 33.33% !important;
}
#sb_instagram #sbi_images .sbi_item:nth-child(4) {
display: none !important;
}
}
CodeShopstyle API Link
http://www.shopstyle.com/api/v2/lists/51092156/rss?pid=uid996-6148614-40&title=Gal%20Meets%20Glam&description=Products%20from%20Gal%20Meets%20Glam&link=http%3A%2F%______.com%2Fmailchimp-feed-shopstyle-collective%2F
CodeRedirect rule for Year+Month URL to Post Name
Source: ^/([0-9]{4})/([0-9]{2})/(.*)
Destination: /$3
CodeCreate a Custom Widget in WordPress
if (function_exists('register_sidebar')) {
register_sidebar(array(
'name' => 'Subscribe Pop-up Wording',
'id' => 'subscribe-popup',
'description' => 'This is the content for the subscribe pop-up',
'before_widget' => '
', 'after_widget' => '
',
'before_title' => '', 'after_title' => '
'
));
}
<?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar('Subscribe Pop-up') ) : endif; ?>
CodeFix Stubborn Favicon
Have a favicon that won’t change? Right click on your website and click ‘View Page Source’, then Command + F to search for rel=”icon”.
See how many there are and find the ones that are last. Rename and replace the images in the uploads folder.
CodeRedirect Shopify Homepage
{% unless template != 'index' %} <script> window.location.replace( 'your_url' ); </script> {% endunless %}
{% unless template != 'index' %} <script> window.location.replace( 'your_url' ); </script> {% endunless %}
CodeChange Logo color depending on slick slide class
$('.content-block-slideshow').on('beforeChange', function(event, slick, currentSlide, nextSlide) {
if ($('.slideshow .slide[data-id="' + nextSlide + '"]').hasClass('dark')) {
$('body').addClass('dark');
} else {
$('body').removeClass('dark');
}
});
CodeHow to stop a video on click
$(this).closest('___').find('iframe').attr('src', $('iframe').attr('src'));
CodeWhen to use .on()
When you add elements to the dom, and then want click handlers on them, you have to add it to a dom element that was already there on page load.
$('.product-description').on('click', '.toggle-shipping', function(e) { e.preventDefault(); $(this).closest('.shipping-origin').find('.content').slideToggle(); $(this).closest('.shipping-origin').toggleClass('active'); });
Since shipping origin and the toggle-shipping link was added after the fact in jQuery, you have to basically call the js .on()
handler. Meaning that it’s going to watch the product-description for any .toggle-shipping
element added to it and then run that click event.
CodeRedirect Single Pages of a Custom Post Type to a Custom Field URL
# REDIRECT SINGLE SHOP PRODUCTS TO AFFILIATE URL
while ( have_posts() ) : the_post();
header('Location: ' . get_field('link'));
exit;
endwhile;
Code — ARIA & ADA Compliance
ARIA for Contact Form 7 Checkboxes
$('.wpcf7-list-item-label').attr('role', 'checkbox'); $('.wpcf7-list-item-label').attr('aria-checked', 'false');$('.wpcf7-list-item-label').on('touchstart click', function(e){
e.preventDefault();
$(this).closest('.wpcf7-list-item').find('input[type="checkbox"]').trigger('click');
$(this).toggleClass('active');
if ($(this).is('[aria-checked="true"]')) {
$(this).attr('aria-checked', 'false');
} else {
$(this).attr('aria-checked', 'true');
}
});
CodeActivate code on browser resize and not just manual refresh
$( window ).resize(function() {});
CodeTake out .html and redirect
Source: ^/(.+).html/?$
Destination: ____.com/$1
CodeAdding Affirm Payments
<div id="more-information">
<p class="affirm-as-low-as" data-page-type="product" data-amount="{{ current_variant.price | money_without_currency | remove: '.' | remove: ',' }}"></p>
</div>
CodeDelete All Featured Images for Posts
global
$wpdb;
$wpdb->query( "
DELETE
FROM $wpdb->postmeta
WHERE meta_key = '_thumbnail_id'
" );
global
$wpdb;
$wpdb->query( "
DELETE
FROM $wpdb->postmeta
WHERE meta_key = '_thumbnail_id'
" );
CodeMake Video Fluid / Responsive
.videoWrapper {
position: relative;
padding-bottom: 56.25%; /* 16:9 */
padding-top: 25px;
height: 0;
}
.videoWrapper iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.videoWrapper {
position: relative;
padding-bottom: 56.25%; /* 16:9 */
padding-top: 25px;
height: 0;
}
.videoWrapper iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
CodeSoftware Update and Local Dev doesn’t work
Open Terminal:
cd /etc/apache2
make a copy of all httpd.conf files (usually there is a httpd.conf, httpd.conf.pre-update, and httpd.conf.after-update):
cp /etc/apache2 ~/Desktop
Rename httpd.conf to something like httpd.conf.2020-update and then rename httpd.conf.pre-update to httpd.conf (link to a httpd.conf match):
sudo mv httpd.conf httpd.conf.2020-update
sudo mv httpd.conf.pre-update httpd.conf
Restart apache:
sudo apachectl restart
If that doesn’t work, cd to extra folder and replace httpd-vhosts.conf with previous or this file:
<Directory "/Users/mckenzierucker/blogs"> Options Indexes MultiViews FollowSymLinks AllowOverride All Require all granted </Directory> <Virtualhost *:80> VirtualDocumentRoot "/Users/mckenzierucker/blogs/sites/home/wwwroot" ServerName home.test UseCanonicalName Off </Virtualhost> <Virtualhost *:80> VirtualDocumentRoot "/Users/mckenzierucker/blogs/sites/%1/wwwroot" ServerName sites.test ServerAlias *.test UseCanonicalName Off </Virtualhost>
Save and restart apache.
If that doesn’t work, try deleting ‘Order allow,deny’ and ‘Allow from all’ lines and add ‘Require all granted’. Save and restart apache.
If that doesn’t work, vim httpd.conf file and uncomment this line:
LoadModule php7_module libexec/apache2/libphp7.so
If that doesn’t work, go back to /apache2 folder and sudo vim httpd.conf file and uncomment the include line with httpd-vhosts.conf (take out the #. Restart apache.
Include /private/etc/apache2/extra/httpd-vhosts.conf
If that doesn’t work, vim httpd.conf file and make sure this line is uncommented. Restart apache.
LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so
If that doesn’t work, make sure apache is turned on:
sudo apachectl stop
sudo apachectl start
From here on, do apachectl configtest and check this line by refreshing the browser when this is active:
tail -f /var/log/apache2/error_log
Don’t forget to try this line on your project’s dir too:
sudo chmod -R g+rwx wwwroot/; sudo chown -R _www:staff wwwroot/;
This is a good line to check that your config file is all good:
sudo chmod -R g+rwx wwwroot/; sudo chown -R _www:staff wwwroot/;
Another line to check:
tail -f /var/log/apache2/access_log
CodeRemove Tasty Pins Hover
/*-------------------------------------------------------------------------------------
Remove Tasty Pins hover
-------------------------------------------------------------------------------------*/
/**
Disable Tasty Pins Pinterest image hover button.
*/
remove_action( 'wp_head', array( 'Tasty_Pins\Frontend', 'action_wp_head_print_pinit_js' ) );
Remove Tasty Pins hover
-------------------------------------------------------------------------------------*/
/**
Disable Tasty Pins Pinterest image hover button.
*/
remove_action( 'wp_head', array( 'Tasty_Pins\Frontend', 'action_wp_head_print_pinit_js' ) ); Code — Site Speed
Add Async Flag to Script Produced by Autoptimize
<pre>add_filter('autoptimize_filter_js_defer','my_ao_override_defer',10,1);
function my_ao_override_defer($defer) {
return $defer."async ";
}</pre>
CodeAdd Class when Div is in View
$('.site-footer').on('inview', function(event, isInView) {
if (isInView) {
// element is now visible in the viewport
$('body').addClass('footer-visible');
} else {
// element has gone out of viewport
$('body').removeClass('footer-visible');
}
});
Code — JavaScript
Use Keyboard Arrows for Slider
var $slider = $('.single-project-slideshow'); $(document).on('keydown', function(e) { if(e.keyCode == 37) { $slider.slick('slickPrev'); } if(e.keyCode == 39) { $slider.slick('slickNext'); } });
Code — Scrolling
Add Class when Element hits top of browser
var homepageNav = $('.homepage-wrap'); if (homepageNav.length) { var homepageNavOffset = homepageNav.offset().top - 70; if ( docScroll >= homepageNavOffset ) { $('.homepage-wrap').addClass('tan'); } else { $('.homepage-wrap').removeClass('tan'); } }