Plugin Author
Chouby
(@chouby)
Hi!
It seems that there is a misuse of an internal function of Polylang. However, it seems that it is not coming from ACF. I just downloaded it and did not find any Polylang function in ACF code.
Hello,
I’ve got the same problem. Any idea what to do about it?
for example if I am using second ACF function:
get_field('some_field', 'options')
then, warnings will be…
I have the same issue. The problem arises from this addition to ‘polylang/include/model.php:401’:
if (empty($translations) && $lang = call_user_func(array(&$this, 'get_'.$type.'_language'), $id))
when the $type parameter is neither ‘post’ nor ‘term’. The comment of the function states that only ‘post’ or ‘term’ are supported, but this is nowhere checked. A violation of this comment happens with the Advanced Custom Fields plugin. Here is a stack trace that illustrates the problem:
#0 PLL_Model->get_translations(acf, 136) called at [wp-content/plugins/polylang/include/model.php:379]
#1 PLL_Model->get_translation(acf, 136, en) called at [wp-content/plugins/polylang/include/wpml-compat.php:173]
#2 icl_object_id(136, acf, 1, en) called at [wp-content/plugins/advanced-custom-fields/core/fields/_functions.php:352]
#3 acf_field_functions->load_field(, field_5536aca143e36)
#4 call_user_func_array(Array ([0] => acf_field_functions Object (),[1] => load_field), Array ([0] => ,[1] => field_5536aca143e36)) called at [wp-includes/plugin.php:213]
#5 apply_filters(acf/load_field, , field_5536aca143e36) called at [wp-content/plugins/advanced-custom-fields/core/api.php:278]
#6 get_field_object(my_field, 177, Array ([load_value] => 1,[format_value] => 1)) called at [wp-content/plugins/advanced-custom-fields/core/api.php:214]
#7 get_field(my_field, 177)
…
Plugin Author
Chouby
(@chouby)
@jx73
Yes you are right, it’s not checked and was not an issue in previous versions. I will improve this.To be exact, it works with ‘post’, ‘term’ and any *translated* post type or taxonomy.
Debugging this in the same time as you, I noticed that ACF is calling icl_object_id with ‘acf’ as post type, while ‘acf’ is not a “translated” post type. That’s why it breaks.
Okay, we will wait for plugin update. Can i close this topic?
Plugin Author
Chouby
(@chouby)
I just uploaded a new development version which should fix this warning (1.7.4.1).
https://downloads.wordpress.org/plugin/polylang.zip
Can i close this topic?
I am not sure you can close it but you can mark it as resolved if it is π
Great, thank you for the fast resolution! π
We had the same Problem and now ist gone. Thank you very much for your great help. :-)))
@chouby : Can u guess how long it takes to get this fix distributed via usual WP update? π
Thanks in advance
I’m too awaiting for official plugin update π
Or you can just use the link Chouby provided and overwrite the polylang folder using FTP. Or if you don’t have that/dont know how just delete the plugin then reinstall via new plugin > upload zip.
The official update hasn’t gone through for me either but I just threw it in via FTP π
Just for the record though if you delete the old one and upload the zip file provided above, you’ll have to set it up all over again. Fortunately I hadn’t started using it but all of my languages are gone.
Plugin Author
Chouby
(@chouby)
Just for the record though if you delete the old one and upload the zip file provided above, you’ll have to set it up all over again.
Never use the red delete link in the plugins list table as, as stated in the message, the plugin will delete all its data (this is the way all plugins should offer to delete all their data).
For a manual upgrade, you just have to delete the plugin via FTP and upload the new version.
@chouby
Thanks for that Chouby. It works great now!