This is the technical support forum for WPML - the multilingual WordPress plugin.

Everyone can read, but only WPML clients can post here. WPML team is replying on the forum 6 days per week, 22 hours per day.

This thread is resolved. Here is a description of the problem and solution.

Problem:

My site is hosted on SiteGround and I cannot move from PHP 7.0 to 7.1 due to WPML incompatibility according to the compatibility test tool from Siteground.

Solution:

The Siteground script is a "simple" one. It does not check for actual LOGIC that WILL be executed. In this case, WPML has backward compatibility with pre PHP 7.1 versions and for PHP 7.1 versions and above. The script, however, does not know which one of the functions will be used, and because it finds them both - it outputs the error message because it detects the old one - which will be executed only if you have lower PHP version.

TL;DR; it is safe to use PHP 7.1

This topic contains 4 replies, has 3 voices.

Last updated by andreaC-50 1 year ago.

Assigned support staff: Itamar.

Author Posts
October 6, 2018 at 9:04 am #2792630

andreaC-50

Hi guys,

For SiteGround hosting provider I should use PHP 7.1 but I still use PHP 7.0 because SiteGround tools are still reporting that:

a)
"SG Optimizer: You website doesn't run on the recommended by SiteGround PHP version."

b)
The following plugins/themes are not compatible with PHP 7.1.
WPML Multilingual CMS
Errors:
FILE: /home/xxxxxxxxx/public_html/wp-content/plugins/sitepress-multilingual-cms/inc/utilities/wpml-data-encryptor.class.php
---------------------------------------------------------------------------------
FOUND 0 ERRORS AND 8 WARNINGS AFFECTING 3 LINES
---------------------------------------------------------------------------------
55 | WARNING | Extension 'mcrypt' is deprecated since PHP 7.1 - use openssl (preferred) or pecl/mcrypt once available instead.
55 | WARNING | Function mcrypt_create_iv() is deprecated since PHP 7.1; use OpenSSL instead
55 | WARNING | Extension 'mcrypt' is deprecated since PHP 7.1 - use openssl (preferred) or pecl/mcrypt once available instead.
55 | WARNING | Function mcrypt_get_iv_size() is deprecated since PHP 7.1; use OpenSSL instead
69 | WARNING | Extension 'mcrypt' is deprecated since PHP 7.1 - use openssl (preferred) or pecl/mcrypt once available instead.
69 | WARNING | Function mcrypt_encrypt() is deprecated since PHP 7.1; use OpenSSL instead
88 | WARNING | Extension 'mcrypt' is deprecated since PHP 7.1 - use openssl (preferred) or pecl/mcrypt once available instead.
88 | WARNING | Function mcrypt_decrypt() is deprecated since PHP 7.1; use OpenSSL instead
--------------------------------------------------------------------------------

See also: https://wpml.org/forums/topic/wpml-and-php-7-1/ - this is a topic marked as solved but today SiteGround still report the warning.

I'm using:
- WordPress 4.9.8
- WPML Multilingual CMS 4.0.7

Ciao
Andrea

October 8, 2018 at 8:48 pm #2797294

Itamar
Supporter

Languages: English (English ) Hebrew (עברית )

Timezone: Asia/Jerusalem (GMT+03:00)

Hello, Andrea and thanks for reporting this issue.

I can see in our internal documentation that this issue is still escalated to our developers.
The same incompatibilities that you report here were already reported in another forum ticket. Here is the link. https://wpml.org/forums/topic/wpml-plugins-errors-warnings-with-php-7-2/
I'll now escalate this ticket to the same internal ticket that we already have.
When there is news about this issue, I'll inform you here.

Regards,
Itamar.

October 9, 2018 at 12:51 pm #2800009

Leopat

Hello, same problem here.
Any updates on this issue?

October 9, 2018 at 7:06 pm #2801705

Itamar
Supporter

Languages: English (English ) Hebrew (עברית )

Timezone: Asia/Jerusalem (GMT+03:00)

Hi.

Here is what our third tier supporter writes about this issue.

The siteground script is a "simple" one.
It does not check for actual LOGIC that WILL be executed.
In this case, WPML has backward compatibility with pre PHP 7.1 versions and for PHP 7.1 versions and above.
The script, however, does not know which one of the functions will be used, and because it finds them both - it outputs the error message because it detects the old one - which will be executed only if you have lower PHP version.

TL;DR; it is safe to use PHP 7.1

Best Regards,
Itamar.

October 11, 2018 at 8:03 pm #2809657

andreaC-50

I asked SiteGround to tune it's tool
My issue is resolved now. Thank you!