Using Gravity Forms?
You can only return a US or International Phone Number; using this function we can return a UK Phone Format:
// Add UK phone number to Gravity Phone number using REGEX
add_filter( 'gform_phone_formats', 'uk_phone_format' );
function uk_phone_format( $phone_formats ) {
$phone_formats['uk'] = array(
'label' => 'UK',
'mask' => false,
'regex' => '/^(((\+44\s?\d{4}|\(?0\d{4}\)?)\s?\d{3}\s?\d{3})|((\+44\s?\d{3}|\(?0\d{3}\)?)\s?\d{3}\s?\d{4})|((\+44\s?\d{2}|\(?0\d{2}\)?)\s?\d{4}\s?\d{4}))(\s?\#(\d{4}|\d{3}))?$/',
'instruction' => false,
);
return $phone_formats;
}
Switch from Gutenberg to Classic Editor
This will switch you back to the classic editor and remove the Gutenberg styling
add_filter("use_block_editor_for_post_type", "disable_gutenberg_editor");
function disable_gutenberg_editor(){
return false;
}
//Remove Gutenberg Block Library CSS from loading on the frontend
function remove_wp_block_library_css(){
wp_dequeue_style( 'wp-block-library' );
wp_dequeue_style( 'wp-block-library-theme' );
wp_dequeue_style( 'wc-block-style' ); // Remove WooCommerce block CSS
}
add_action( 'wp_enqueue_scripts', 'remove_wp_block_library_css', 100 );
Reduce the risk of being hacked!
Disabling XMLPRC can help reduce the amount of hackers trying to gain access to your site
add_filter('xmlrpc_enabled', '__return_false');
Change the max image size before it's scaled.
add_filter( 'max_srcset_image_width', 'plott_max_srcset_image_width', 10 , 2 );
// set the max image width
function plott_max_srcset_image_width() {
return 2200;
}
Change the url for the logo in WordPress admin login
function theme_url( $url ) {
return get_bloginfo( 'url' );
}
add_filter( 'login_headerurl', 'theme_url' );
Change the category checkboxes to radio buttons
<?php
function admin_js() { ?>
<script type="text/javascript">
jQuery(document).ready( function () {
jQuery('form#post').find('.categorychecklist input').each(function() {
var new_input = jQuery('<input type="radio" />'),
attrLen = this.attributes.length;
for (i = 0; i < attrLen; i++) {
if (this.attributes[i].name != 'type') {
new_input.attr(this.attributes[i].name.toLowerCase(), this.attributes[i].value);
}
}
jQuery(this).replaceWith(new_input);
});
});
</script>
<?php }
add_action('admin_head', 'admin_js');
There you go; some of best and favourite functions that I use to make my life easier when developing sites for clients that are always in my base theme.
Top comments (1)
Dear Ashley Armstrong,
I hope you are doing well.
We are currently seeking developers for several exciting remote opportunities, and your profile has caught our attention.
We would be glad to explore whether this role could be a good fit for you and to share further details regarding responsibilities and compensation.
Please let us know if you are open to a brief discussion.
Kind regards,
Josh Seo