Pulsar Multiple Autocomplete : Comment fixer l'erreur Warning: count(): Parameter must be an array or an object that implements Countable

code source

Pour fixer l'erreur qui apparaisse quand vous utiliser le plugin auto complete développé par pulsar agency pour le CCK seblod il suffit de suivre ce petit tutoriel:

l'erreur qui apparaisse sous php 7.3:

Warning: count(): Parameter must be an array or an object that implements Countable in /opt/lampp/htdocs/joomla/plugins/cck_field/pulsarMultipleAutocomplete/pulsarMultipleAutocomplete.php on line 318

Il suffit de changer le code utilisé dans le plugin depuis la ligne 318:

if(count($value) && !empty($value)){
$script .= 'jQuery(".autocomplete_'.$field->id.'").empty();';
$script .= 'jQuery(".autocomplete_'.$field->id.'").append("'.$initialDataStr.'").val('.$initialDataVal.').trigger("change");';
}
$script.= '
});


';

Par ce code:

if (is_countable($value)){
if(count($value) && !empty($value)){
$script .= 'jQuery(".autocomplete_'.$field->id.'").empty();';
$script .= 'jQuery(".autocomplete_'.$field->id.'").append("'.$initialDataStr.'").val('.$initialDataVal.').trigger("change");';
}}
$script.= '
});


';

Comme vous constatez nous avons utiliser la fonction is_countable()