0

My ISP having trouble accessing Wordpress.org through SSL connection, thus I am facing performance issues.

How Can I entirely block WordPress admin trying to access Wordpress.org to check for latest updates and other things ( By other things I mean any reason that WordPress wants to connect to wordpress.org through SSL ).

Thanks.

1

There is a feature that you can use in wp-config that relates to disabling plugin and theme updates. You can try it out and see if it helps.

define( 'DISALLOW_FILE_MODS', true );

You can learn more about this feature in the codex.

0

I hope below code fix your problem-

function the_dramatist_remove_update_check(){

    global $wp_version;
    return (object) array(
        'last_checked' => time(),
        'version_checked' => $wp_version,
    );
}
add_filter('pre_site_transient_update_core', 'the_dramatist_remove_update_check');
add_filter('pre_site_transient_update_plugins', 'the_dramatist_remove_update_check');
add_filter('pre_site_transient_update_themes', 'the_dramatist_remove_update_check');

Place this code in your functions.php or anywhere that executes. It will prevent you WordPress from checking updates.

  • Still having the problem cURL error 28: Operation timed out after 6000 milliseconds with 0 bytes received. cURL error 7: couldn't connect to host. – MMT designer Nov 7 '16 at 10:48
0

Perhaps very hard solution, but you can modify ( if you have access to ) your /etc/hosts file and add a line like:

127.0.0.1 wordpress.org

Your server is going to answer with a 404 very fast in comparison.

Just a little trick, not very serious, but perhaps it works for you.

Do not forget to remove this line from your /etc/hosts file everytime you plan to update.

[NOTE] This solution doesn't require to restart Apache/nginx server nor other restarting issues, you put it and it works from the first time. [NOTE 2] This solution makes 'believe' your server that wordpress.org is located in your localhost, and will ask for it in local, and your web server should answer with a 404 not found or 500 error.

0

When WordPress makes calls to api.wordpress.org, it sets the https scheme using set_url_scheme() depending on whether wp_http_supports() responds that ssl transport is available. See for example in wp_update_plugins() (Line 302 in wp-includes/update.php).

There is a filter in set_url_scheme() which can be used to switch back to http scheme for the api calls.

function wpse245334_set_url_scheme( $url, $scheme, $orig_scheme ) {
    if ( 0 === stripos( $url, 'https://api.wordpress.org/') ) {
        $url = preg_replace( '/^https/i', 'http', $url, 1);
    }
    return $url;
}
add_filter( 'set_url_scheme', 'wpse245334_set_url_scheme' );

Like this the calls to the API should all be made without using SSL. This is not as safe, but should still be better than not making the updates. Keep in mind that in case of a failing connection, WordPress might output error messages about failing to establish a secure connection.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.