Hello Victor,
I spoke to the polylang developers and they asked me to report the bug:
” I’ve a recorded a long video showing it’s working when URL are in subdirectory but not in domain, with a start of explanations for Filter Everything developers.
https://www.loom.com/share/510a6c5f98024871bbb5c3dab02d00bc
wp-content/plugins/filter-everything/src/Admin/FilterSet.php:456
?:
Here the Polylang function?pll_current_language()
?&?pll_the_languages()
?are not known in the defined namespace FilterEverything\Filter:
if( flrt_pll_pro_active() && defined(‘FLRT_ALLOW_PLL_TRANSLATIONS’) && FLRT_ALLOW_PLL_TRANSLATIONS ){ $pll_current_language = pll_current_language(); $pll_languages = pll_the_languages( array(‘raw’ => 1 ) );
The other issue is in?flrt_pll_pro_active()
?:
function flrt_pll_pro_active(){ if( defined(‘POLYLANG_PRO’) ){ return true; } return false; }
The PHP constant is defined at the start of the wp-content/plugins/polylang-pro/polylang.php
file but in case of URL in domains, Polylang is checking if DNS settings are OK without conflict made by our code. To do so, we deactivate programmatically Polylang by adding ?deactivate-polylang=1
to the URL and send a request.
If DNS are well set and propagated, then WordPress replies with a code 200. In other cases, the error code is different (30X, 40X or 50X) and Polylang display the error ?deactivate-polylang=1
to inform you that something is wrong, and the domain is unreachable.
At the end of Polylang.php, we initialize and launch Polylang if?$_GET['deactivate-polylang']
?is empty. In your case, it is not so Polylang is not launch and the Filter Everything compatibility is broken.
Feel free to ask the Filter Everything developer to contact us in case they need help or technical explanations.”
Thank you,Victor!