DEV Community

Cover image for Some of my personal favourite functions
Ashley Armstrong
Ashley Armstrong

Posted on

3 1

Some of my personal favourite functions

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;
}
Enter fullscreen mode Exit fullscreen mode

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 );
Enter fullscreen mode Exit fullscreen mode

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');
Enter fullscreen mode Exit fullscreen mode

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;
}
Enter fullscreen mode Exit fullscreen mode

Change the url for the logo in WordPress admin login

function theme_url( $url ) {
   return get_bloginfo( 'url' );
}

add_filter( 'login_headerurl', 'theme_url' );
Enter fullscreen mode Exit fullscreen mode

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');
Enter fullscreen mode Exit fullscreen mode

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.

Sentry image

See why 4M developers consider Sentry, “not bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more

Top comments (0)

Cloudinary image

Optimize, customize, deliver, manage and analyze your images.

Remove background in all your web images at the same time, use outpainting to expand images with matching content, remove objects via open-set object detection and fill, recolor, crop, resize... Discover these and hundreds more ways to manage your web images and videos on a scale.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay