PHP does not support bzip2 decompression of the embedded WSDL file.
If you see this error while setting up FedEx Rates, it means that your PHP installation does not have bzip2 support to decompress the WSDL file that is embedded in the FedEx module.
In order for the FedEx SOAP interface to load properly, FedEx needs access to the web services description file (WSDL) file. The WSDL file is compressed and embedded in the FedEx module. It is made available through a specially formatted web address on your website.
For FedEx to be able to deliver the embedded WSDL through this specialized address, it must be decompressed using the bzdecompress() function of PHP. PHP must have Bzip2 support in order for the bzdecompress() function to exist.
- Enable Bzip2 support by recompiling PHP on the server with the –with-bz2[=DIR] flag. You must have direct access to the server binaries to do this.
- Ask your web hosting provider to add Bzip2 support to PHP.
- Configure Shopp to use an uploaded WSDL file (see below).
Configure Shopp to use an uploaded WSDL file
- Download a copy of the Media:FedExRatesWSDL.zip.
- Upload the WSDL file to your WordPress website.
- Edit your WordPress wp-config.php file
- Add the following configuration macro to tell Shopp/FedExRates where to find the WSDL file your filename and path may vary):
Note: Replace /full/path/to/ with your actual path and # in RateService_v#.wsdl with the current version number from the download.
Need to find your full file path? See this link: https://shopplugin.net/kb/find-full-file-path/
<?php define('SHOPP_FEDEX_WSDL_FILE','/full/path/to/RateService_v#.wsdl'); ?>