Solved Wordpress: Call to undefined function IConv()

I tried installing the Wordpress Encyclopedia / Glossary / Wiki plugin yesterday and this happened:-
Fatal error: Uncaught Error: Call to undefined function IConv() in /usr/local/www/apache24/data/wp-content/plugins/encyclopedia-lexicon-glossary-wiki-dictionary/classes/fallback.mb-string.php:9 Stack trace: #0 /usr/local/www/apache24/data/wp-includes/class-json.php(221): MB_Convert_Encoding('\xE2\x80\xA6', 'UTF-16', 'UTF-8') #1 /usr/local/www/apache24/data/wp-includes/class-json.php(384): Services_JSON->utf82utf16('\xE2\x80\xA6') #2 /usr/local/www/apache24/data/wp-includes/class-json.php(542): Services_JSON->_encode('Crunching\xE2\x80\xA6') #3 [internal function]: Services_JSON->name_value('crunching', 'Crunching\xE2\x80\xA6') #4 /usr/local/www/apache24/data/wp-includes/class-json.php(468): array_map(Array, Array, Array) #5 /usr/local/www/apache24/data/wp-includes/class-json.php(282): Services_JSON->_encode(Array) #6 /usr/local/www/apache24/data/wp-includes/compat.php(293): Services_JSON->encodeUnsafe(Array) #7 /usr/local/www/apache24/data/wp-includes/functions.php(3577): json_encode(Array, 0, 512) #8 /usr/local/www/apach in /usr/local/www/apache24/data/wp-content/plugins/encyclopedia-lexicon-glossary-wiki-dictionary/classes/fallback.mb-string.php on line 9


Does this mean anything to anyone?

Can I recover by just removing the offending plugin directory? ie
/usr/local/www/apache24/data/wp-content/plugins/encyclopedia-lexicon-glossary-wiki-dictionary
 
Du you have converters/php73-iconv installed? Or what version that might match your PHP install. You can also install lang/php73-extensions, which is a metapackage for the most used PHP extensions. Just note that Wordpress uses the MySQLi interface offered with databases/php73-mysqli.

And yes, in Wordpress, if a plugin just leaves Wordpress with a white a screen, you can just delete the plugin folder for that plugin. Wordpress will then deactivate the plugin in the database, and should work again.
 
Many thanks. I ran pkg install -y php73-iconv, copied back the plugin folder, but still got the same error...although it disappeared after restarting apache :), so I can now check the hype I've read about the plugin...
 
I'm glad it worked :)

Well, it kinda worked...

I was able to get back into Wordpress but when I activated this plugin and tried to create a test post I got:-
Fatal error: Uncaught Error: Call to undefined function WordPress\Plugin\Encyclopedia\MB_StrToLower() in /usr/local/www/apache24/data/wp-content/plugins/encyclopedia-lexicon-glossary-wiki-dictionary/classes/core.php:174 Stack trace: #0 /usr/local/www/apache24/data/wp-includes/class-wp-hook.php(286): WordPress\Plugin\Encyclopedia\Core::printPrefixFilter(Object(WP_Query)) #1 /usr/local/www/apache24/data/wp-includes/class-wp-hook.php(310): WP_Hook->apply_filters('', Array) #2 /usr/local/www/apache24/data/wp-includes/plugin.php(531): WP_Hook->do_action(Array) #3 /usr/local/www/apache24/data/wp-includes/class-wp-query.php(3270): do_action_ref_array('loop_start', Array) #4 /usr/local/www/apache24/data/wp-includes/query.php(937): WP_Query->the_post() #5 /usr/local/www/apache24/data/wp-content/themes/mywiki/single.php(5): the_post() #6 /usr/local/www/apache24/data/wp-includes/template-loader.php(78): include('/usr/local/www/...') #7 /usr/local/www/apache24/data/wp-blog-header.php(19): require_once('/usr/local/www/...') #8 /usr/lo in /usr/local/www/apache24/data/wp-content/plugins/encyclopedia-lexicon-glossary-wiki-dictionary/classes/core.php on line 174

Is this another missing php pkg?
 
Thanks. Just wondering how you worked that out.... Did you know that the function MB_StrToLower() was provided by this pkg?
 
Yes but it's easy to find out: if you look to mb_strtolower's documentation, you can see that it is part of the mbstring extension. Then, you just have to find and be sure you have installed the corresponding package since each PHP extension is a separate FreeBSD port/package.
 
Back
Top