How to Use WebP Images in WordPress?

Webp images are not allowed to WordPress media library with default setting. To enable the .webp format use the following code block in your functions.php file inside the theme folder.

/* Enable webp image support for media */
function webp_upload_mimes( $existing_mimes ) {
	// add webp to the list of mime types
	$existing_mimes['webp'] = 'image/webp';

	// return the array back to the function with our added mime type
	return $existing_mimes;
}
add_filter( 'mime_types', 'webp_upload_mimes' );

/* Enable preview / thumbnail for webp image files. */
function webp_is_displayable($result, $path) {
    if ($result === false) {
        $displayable_image_types = array( IMAGETYPE_WEBP );
        $info = @getimagesize( $path );

        if (empty($info)) {
            $result = false;
        } elseif (!in_array($info[2], $displayable_image_types)) {
            $result = false;
        } else {
            $result = true;
        }
    }

    return $result;
}
add_filter('file_is_displayable_image', 'webp_is_displayable', 10, 2);

How to convert any full URL path to relative to WordPress installation (root)

If you want to make a URL relative from the WordPress root, you can use the following WordPress function.

<?php

$full_url = "https://intelyblog.com/how-to-programmatically-add-a-wordpress-admin-user-using-functions-php/";

$relative_to_wordpress = wp_make_link_relative($full_url);

echo $relative_to_wordpress;

?>

Result: /how-to-programmatically-add-a-wordpress-admin-user-using-functions-php/

That’s all! Happy coding!

How to write if else statement in a single line (compact if else statement) using PHP

Normal way of writing an if else statement

<?php

$result = '';

$count = 55;
$target = 70;

if($count >= $target) {
   $result = 'High';
} else {
   $result = 'Low';
}

?>

Now let’s see how the above can be written in a single line.

<?php

$result = '';

$count = 55;
$target = 70;

$result = ($count > $target) ? 'High' : 'Low';

?>

That’s it! Happy coding!

How to programmatically add a WordPress admin user using functions.php

Step 1:
Open your theme’s functions.php using a editor.

Step 2:
Paste the following code at the bottom of the functions.php (need to remove once the user is added)

add_action('init', 'create_my_custom_admin_user');

function create_my_custom_admin_user() {
    $username = 'username123';
    $password = 'pasword123';
    $email = 'newadmin@example.com';

    if (username_exists($username) == null && email_exists($email) == false) {

        // Create the new user
        $user_id = wp_create_user($username, $password, $email);

        // Get current user object
        $user = get_user_by('id', $user_id);

        // Remove role
        $user->remove_role('subscriber');

        // Add role
        $user->add_role('administrator');
    }
}

Step 3:
Save the functions.php file and run the site once.

Step 4:
Go to the site’s login page (wp-login.php) and login with the username and password that are used on the functions.php. You should be able to login and see the dashboard.

Note: If the username or email already exists in the dashboard, you will not be able to login and in that case you may have to username and/or password.

Step 5:
Please remove the code block and save the functions.php once the user is added.

How to check if a file exists on a remote server using CURL

function checkRemoteFileExists($remoteFile) {
    $ch = curl_init($remoteFile);
    curl_setopt($ch, CURLOPT_NOBODY, true);
    curl_exec($ch);
    $code = curl_getinfo($ch, CURLINFO_HTTP_CODE);

    if ($code == 400) {
        $status = true;
    } else {
        $status = false;
    }
    curl_close($ch);
    return $status;
}

How to get current page full URL in PHP

Step 1: Deciding on the SSL protocol whether the site using http or https.

if(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on') {
   $url = 'https';
} else {
   $url = 'http';
}

Step 2: Append domain name or IP to the URL

$url .= $_SERVER['HTTP_HOST'];

Step 3: Append the current page URL after domain / IP

$url .= $_SERVER[‘REQUEST_URI’]

Step 4: Let’s put all these together and create a function that can be reused.

function getfullpageurl() {
    if(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on')   
         $url = "https://";   
    else  
         $url = "http://";   
       
    $url.= $_SERVER['HTTP_HOST'];   
    
    $url.= $_SERVER['REQUEST_URI'];    
      
    return $url;  
}