Skip to content

Instantly share code, notes, and snippets.

View pelmered's full-sized avatar
🎯
Focusing

Peter Elmered pelmered

🎯
Focusing
View GitHub Profile
@pelmered
pelmered / functions.php
Last active September 6, 2015 12:23
Add info link based on product category [WooCommerce]
<?php
add_action( 'woocommerce_single_product_summary', 'my_add_read_more_about_category', 25);
function my_add_read_more_about_category()
{
global $product;
$cat_post_map = array(
// category id => array(<page id to link to>, <category plural label (optional)>)
@pelmered
pelmered / wp-db-backup.sh
Last active August 29, 2015 14:26
WP-CLI snippets and scripts
# Only database backup
declare -a SITES=('site1' 'site2' 'site3' 'site4');
SITES_PATH_BASE=/var/www/
SITES_PATH_SUFIX=/repo/public
SITES_BACKUP_FOLDER=backups
CURRENT_DATE=`date +%Y-%m-%d`;
@pelmered
pelmered / gist:e5633068658e75ba9a80
Last active October 13, 2021 14:55
Cleanup orphaned ACF data
# This might ruin your database and I do not take any responsibility for that. Backup your database before continuing
!
# Check the results throughly
SELECT * FROM `wp_postmeta`
WHERE `meta_key` IN
( SELECT TRIM(LEADING '_' FROM `meta_key`) AS mk
FROM `wp_postmeta`
WHERE `meta_value` regexp '^field_[0-9a-f]+'
AND `meta_value` NOT IN
//
// Improved and much cleaner version of https://gist.github.com/andyl/6360906
//
//
// Bootstrap Mid-Small - col-ms-* - the missing grid set for Bootstrap3.
//
// This is a hack to fill the gap between 480 and 760 pixels - a missing range
// in the bootstrap responsive grid structure. Use these classes to style pages
// on cellphones when they transition from portrait to landscape.
//
@pelmered
pelmered / plugin.php
Created June 12, 2015 15:25
Allow template to override plugin templates
function include_template( $template, $args = array() )
{
//Allow plugins to manipulate the tempalte data before sending it to the template
$data = apply_filters('prefix_template_data', $args, $template);
//Look in theme folder first, then plugin folder
if(locate_template($template) === '')
{
include PREFIX_PLUGIN_PATH . 'templates/' . $template;
@pelmered
pelmered / wpfcwc.conf
Created March 27, 2015 08:56
EasyEngine WooCommerce config with FastCGI Cache
#
set $skip_cache 0;
# POST requests and URL with a query string should always go to php
if ($request_method = POST) {
set $skip_cache 1;
}
if ($query_string != "") {
@pelmered
pelmered / purchasable-by-category.php
Last active December 22, 2017 18:11
Make WooCommerce products purchasable by category
add_action('wp', 'prefix_theme_setup', 99);
function prefix_theme_setup()
{
add_filter( 'woocommerce_is_purchasable', 'prefix_is_purchasable', 20, 2);
}
function prefix_is_purchasable($purchasable, $product)
<?php
/**
* Gets the current global post type if one is set
*/
function x_get_current_post_type() {
global $post, $typenow, $current_screen;
if( $post && $post->post_type )
$post_type = $post->post_type;
elseif( $typenow )
@pelmered
pelmered / gist:9593f6ca25a84a7ce962
Last active April 2, 2017 21:44
Remove and reset all products and categories in magento
SET FOREIGN_KEY_CHECKS = 0;
TRUNCATE TABLE `catalog_product_bundle_option`;
TRUNCATE TABLE `catalog_product_bundle_option_value`;
TRUNCATE TABLE `catalog_product_bundle_selection`;
TRUNCATE TABLE `catalog_product_entity_datetime`;
TRUNCATE TABLE `catalog_product_entity_decimal`;
TRUNCATE TABLE `catalog_product_entity_gallery`;
@pelmered
pelmered / gist:76830d0b283a09548bfb
Last active August 29, 2015 14:11
Color of first word in WordPress content
add_filter('the_content', 'set_first_word_color', 10);
function set_first_word_color( $content )
{
$color = '#FF0000';
$pos = strpos(ltrim($content), ' ');
$new_content = '<span style="color: '.$color.'"'.substr($content, 0, $pos).'</span>'.substr($content, $pos);