Skip to content

Instantly share code, notes, and snippets.

@jb510
jb510 / gist:68c092853a8bcae1c6c5b886a49da97e
Created December 18, 2021 07:01
Register custom taxonomy on woocommerce product and add to REST API
/*
Simple Taxonomy */
add_action( 'init', function() {
register_extended_taxonomy( 'customtax', 'product' ); // This relies on https://github.com/johnbillion/extended-cpts/
} );
//Register taxonomy API for WC
add_action( 'rest_api_init', function() {
register_rest_field('product', 'customtax', array(
@jb510
jb510 / gist:30dd61ad8d25476907dcb164ba4a1e24
Last active May 5, 2024 22:16
Delete WordPress tags MySQL
DELETE FROM wp_terms WHERE term_id IN (SELECT term_id FROM wp_term_taxonomy WHERE count = 0 );
DELETE FROM wp_term_taxonomy WHERE term_id not IN (SELECT term_id FROM wp_terms);
DELETE FROM wp_term_relationships WHERE term_taxonomy_id not IN (SELECT term_taxonomy_id FROM wp_term_taxonomy);
@jb510
jb510 / Hide Post Editor Tip about Permalinks being the last part of the URL
Created August 2, 2020 22:57
Hide Post Editor Tip about permalinks being the last part of the URL on the WordPress post editor
<?php
/**
* Hide Post Editor Tip about permalinks
*/
add_action( 'admin_head', 's9_hide_permalink_tip' );
function s9_hide_permalink_tip() {
echo '<style>';
echo '#editor .edit-post-sidebar .editor-post-link .components-base-control + p { display: none; }';
echo '</style>';
}
<?php
$data_dir = 'c:/server/www/dev/data/';
$releases = [ ];
foreach ( range( 3.2, 4.0, 0.1 ) as $version ) {
$version = number_format( $version, 1 );
$data = json_decode( file_get_contents( $data_dir . $version . '.json' ), true );
$groups = wp_list_pluck( $data['groups'], 'data' );
<script type="172f63caa3046c8bb4d61ad7-text/javascript">
jQuery(function($) {
jQuery('input[name="EMAIL"]').typeWatch({ callback: function (value) { if ( JiltStorefront.Helpers.isValidEmail( value ) ) { jilt.setCustomer({email: value }); } }, wait: 1250, highlight: false, allowSubmit: false, captureLength: 6 });
});
</script>
@jb510
jb510 / jilt-early-email-capture.php
Last active June 8, 2019 02:31
Jilt Early email capture, front end only
<?php
/**
* Adds listener to Email popup form and send email to Jilt for Cart Recovery
*
* @return void
*/
if ( !is_admin() ) {
add_action(
'init', function() {
@jb510
jb510 / gist:0f0dffbb69177d4a74ddf27e64c22bea
Created January 30, 2019 07:12
MySQL Total size of wp_options autoload data
SELECT 'sum size in KiB', ROUND(SUM(length(option_value))/1024,0) FROM wp_options WHERE autoload='yes'
@jb510
jb510 / gist:e6d9c0ca990966b39cb73c62fb8b5d53
Created January 30, 2019 07:11
MySQL Set WordPress set all transients to autoload no
UPDATE wp_options SET autoload='No' WHERE `option_name` LIKE "_transient_%"
@jb510
jb510 / gist:0f49e427e421deddf1db0509fe7d2ca4
Created January 30, 2019 07:11
MySQL Get WordPress Autoload data report
SELECT 'autoloaded data in KiB' as name, ROUND(SUM(LENGTH(option_value))/ 1024) as value FROM wp_options WHERE autoload='yes'
UNION
SELECT 'autoloaded data count', count(*) FROM wp_options WHERE autoload='yes'
UNION
(SELECT option_name, length(option_value) FROM wp_options WHERE autoload='yes' ORDER BY length(option_value) DESC LIMIT 25)
@jb510
jb510 / strip_visual_composer_shotcode_vomit.php
Created January 25, 2019 02:52
Cleanup Visual Composer Vomit (strip vc shortcodes)
<?php
/**
* Strip Visual Composer Shortcode Vomit
*
* Main footer file for the theme.
*
* @package DevTools
* @author Jon Brown <[email protected]>
* @license https://www.gnu.org/licenses/gpl-2.0.txt GNU/GPLv2
* @link https://9seeds.com