Viewing 15 replies - 1 through 15 (of 16 total)
  • Hi @handmadehome,

    The error occurs because Google for WooCommerce requires a connection to WordPress.com or Jetpack to function properly. Please follow the setup instructions provided here: https://jetpack.com/support/getting-started-with-jetpack/, install and configure Jetpack, and then try the process again.

    Thread Starter SM

    (@handmadehome)

    My Jetpack is active and connected.

    As you can see below the buttons, I’m logged in https://www.shop.handmadehome.me/wp-content/uploads/2025/03/Снимок-экрана-2025-03-22-в-19.03.15.png

    Zee

    (@doublezed2)

    Hello handmadehome,

    Thank you for your reply.

    I understand your Jetpack is already connected. If not already tried, I suggest disconnecting and reconnecting it. Sometimes, connection issues can resolved like this.

    If the issue persists, go to example.com/wp-admin/admin.php?page=connection-test-admin-page (replace example.com with your domain) and share a screenshot of the page with me. You may use https://snipboard.io to upload images and share links here.

    I look forward to assisting your further.

    Best regards.

    Thread Starter SM

    (@handmadehome)

    Jetpack reconnection doesn’t help.

    Here is the screenshot:

    https://ibb.co/gFBD3hyH

    https://ibb.co/fdHs40Hb

    Hi @handmadehome,

    Thank you for sharing the screenshots. I reviewed your initial request again. Just to clarify, did you click “Approve” in the error message shown in the screenshot? If so, what happened after you did?

    I’m referring to the screenshot below:

    Yes, your Jetpack is connected, but it looks like Google for WooCommerce has lost its connection and is requesting approval. Please click “Approve” to grant permission.

    Thread Starter SM

    (@handmadehome)

    Here I start: https://ibb.co/CKZgqMNV

    After “Get early access” click: https://ibb.co/Qjrpbwhh

    After “Approve” click : https://ibb.co/tpP80Q1d

    Thread Starter SM

    (@handmadehome)

    UPD: I use Disable XML-RPC-API plugin

    I tried to deactivate it, and now I get following message after “Approve”: https://ibb.co/N2Kf3q5B

    I checked this https://jetpack.com/support/double-encoding/?site=www.shop.handmadehome.me but that makes no difference

    Also, I would like to continue using Disable XML-RPC-API plugin, would it be possible just add necessary ip to whitelist? Can you let my know which ip I need to whitelist if so

    Thanks!

    • This reply was modified 1 year ago by SM.

    Hi @handmadehome,

    Thanks for your response.

    I tried accessing https://www.shop.handmadehome.me/xmlrpc.php, but it appears to be unreachable, which suggests that XML-RPC is disabled or unreachable. Please enable it and try the process again.

    To further troubleshoot the issue, first, check your WordPress Address (URL) and Site Address (URL) under WordPress Admin > Settings > General to ensure they are both set to HTTPS instead of HTTP. Incorrect settings can cause authentication issues and prevent connections from being established properly.

    Next, inspect your .htaccess file for any conflicting redirect rules. Multiple redirect rules can interfere with proper site behavior. A correct redirect rule should look like this:

    RewriteEngine On
    RewriteCond %{HTTPS} !=on
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    

    If needed, reset your .htaccess file to WordPress’s default version to ensure it is not causing the issue. The default .htaccess file should be:

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress
    

    Lastly, clearing your site, browser, and server cache can help resolve potential conflicts. Cached data might be preventing recent changes from taking effect, so make sure to clear all caches before retrying the process.

    Let me know how it goes!

    Thread Starter SM

    (@handmadehome)

    Looks like XML-RPC is enabled?

    <?php
    /**
    * XML-RPC protocol support for WordPress
    *
    * @package WordPress
    */

    /**
    * Whether this is an XML-RPC Request.
    *
    * @var bool
    */
    define( 'XMLRPC_REQUEST', true );

    // Discard unneeded cookies sent by some browser-embedded clients.
    $_COOKIE = array();

    // $HTTP_RAW_POST_DATA was deprecated in PHP 5.6 and removed in PHP 7.0.
    // phpcs:disable PHPCompatibility.Variables.RemovedPredefinedGlobalVariables.http_raw_post_dataDeprecatedRemoved
    if ( ! isset( $HTTP_RAW_POST_DATA ) ) {
    $HTTP_RAW_POST_DATA = file_get_contents( 'php://input' );
    }

    // Fix for mozBlog and other cases where '<?xml' isn't on the very first line.
    if ( isset( $HTTP_RAW_POST_DATA ) ) {
    $HTTP_RAW_POST_DATA = trim( $HTTP_RAW_POST_DATA );
    }
    // phpcs:enable

    /** Include the bootstrap for setting up WordPress environment */
    require_once __DIR__ . '/wp-load.php';

    if ( isset( $_GET['rsd'] ) ) { // https://cyber.harvard.edu/blogs/gems/tech/rsd.html
    header( 'Content-Type: text/xml; charset=' . get_option( 'blog_charset' ), true );
    echo '<?xml version="1.0" encoding="' . get_option( 'blog_charset' ) . '"?' . '>';
    ?>
    <rsd version="1.0" xmlns="http://archipelago.phrasewise.com/rsd">
    <service>
    <engineName>WordPress</engineName>
    <engineLink>https://wordpress.org/</engineLink>
    <homePageLink><?php bloginfo_rss( 'url' ); ?></homePageLink>
    <apis>
    <api name="WordPress" blogID="1" preferred="true" apiLink="<?php echo site_url( 'xmlrpc.php', 'rpc' ); ?>" />
    <api name="Movable Type" blogID="1" preferred="false" apiLink="<?php echo site_url( 'xmlrpc.php', 'rpc' ); ?>" />
    <api name="MetaWeblog" blogID="1" preferred="false" apiLink="<?php echo site_url( 'xmlrpc.php', 'rpc' ); ?>" />
    <api name="Blogger" blogID="1" preferred="false" apiLink="<?php echo site_url( 'xmlrpc.php', 'rpc' ); ?>" />
    <?php
    /**
    * Fires when adding APIs to the Really Simple Discovery (RSD) endpoint.
    *
    * @link https://cyber.harvard.edu/blogs/gems/tech/rsd.html
    *
    * @since 3.5.0
    */
    do_action( 'xmlrpc_rsd_apis' );
    ?>
    </apis>
    </service>
    </rsd>
    <?php
    exit;
    }

    require_once ABSPATH . 'wp-admin/includes/admin.php';
    require_once ABSPATH . WPINC . '/class-IXR.php';
    require_once ABSPATH . WPINC . '/class-wp-xmlrpc-server.php';

    /**
    * Posts submitted via the XML-RPC interface get that title
    *
    * @name post_default_title
    * @var string
    */
    $post_default_title = '';

    /**
    * Filters the class used for handling XML-RPC requests.
    *
    * @since 3.1.0
    *
    * @param string $class The name of the XML-RPC server class.
    */
    $wp_xmlrpc_server_class = apply_filters( 'wp_xmlrpc_server_class', 'wp_xmlrpc_server' );
    $wp_xmlrpc_server = new $wp_xmlrpc_server_class();

    // Fire off the request.
    $wp_xmlrpc_server->serve_request();

    exit;

    /**
    * logIO() - Writes logging info to a file.
    *
    * @since 1.2.0
    * @deprecated 3.4.0 Use error_log()
    * @see error_log()
    *
    * @global int|bool $xmlrpc_logging Whether to enable XML-RPC logging.
    *
    * @param string $io Whether input or output.
    * @param string $msg Information describing logging reason.
    */
    function logIO( $io, $msg ) {
    _deprecated_function( __FUNCTION__, '3.4.0', 'error_log()' );
    if ( ! empty( $GLOBALS['xmlrpc_logging'] ) ) {
    error_log( $io . ' - ' . $msg );
    }
    }

     Redirect rule in my .htaccess

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>

    Hi @handmadehome,

    Thank you for your response. To further investigate the issue, please go to WooCommerce > Status > Logs and check for any fatal error messages or logs related to Google for WooCommerce. Once found, share the log using https://gist.github.com.

    Additionally, navigate to the System Status tab, click Get System Report, then select Copy for Support, and share that report as well.

    Thread Starter SM

    (@handmadehome)

    I can’t see any fatal errors in Logs. And this is the System Report: https://disk.yandex.ru/d/PimQroYFs7U3Nw

    Thanks!

    Zee

    (@doublezed2)

    Hello handmadehome,

    Thank you for your reply.

    I checked your site again and found that https://www.shop.handmadehome.me/xmlrpc.php is still inaccessible. This page should display the message: “XML-RPC server accepts POST requests only.”

    To troubleshoot, try disabling the MalCare WordPress Security plugin and check if the issue is resolved. If not, look for other security settings or firewalls that might be blocking connection requests. You can also contact your hosting provider to check for any server-side firewalls.

    Let me know how it goes.

    Best regards.

    Thread Starter SM

    (@handmadehome)

    I’ve contacted my hosting provider and it turns that they block xmlrpc by default:) All works now!

    I want to continue using Disable XML-RPC-API plugin. Only Jetpack IP will be whitelisted. Is this okay? Or I need to whitelist your ips?

    Zee

    (@doublezed2)

    Hello handmadehome,

    Thank you for your reply.

    I am glad to know that you have resolved the issue.

    May I ask why you want to use Disable XML-RPC-API plugin? This may cause some problems with the website functionality.

    Have a great day!

    Thread Starter SM

    (@handmadehome)

    May I ask why you want to use Disable XML-RPC-API plugin? This may cause some problems with the website functionality.

    As I understand, accessible XML-RPC is not safe.

Viewing 15 replies - 1 through 15 (of 16 total)

The topic ‘New method for synchronizing product data’ is closed to new replies.