WordPress.org

Ready to get started?Download WordPress

Forums

Facebook Comments
Facebook Comments Language Errors (5 posts)

  1. ceedubb
    Member
    Posted 1 year ago #

    On the settings page I'm getting the following warnings:

    http://ceedubb.com/images/fb-comments-error.jpg

    Warning: DOMDocument::load() [domdocument.load]: http:// wrapper is disabled in the server configuration by allow_url_fopen=0 in /nfs/c02/h06/mnt/28882/domains/ceedubb.com/html/wp-content/plugins/facebook-comments-plugin/class-admin.php on line 198
    
    Warning: DOMDocument::load(http://www.facebook.com/translations/FacebookLocales.xml) [domdocument.load]: failed to open stream: no suitable wrapper could be found in /nfs/c02/h06/mnt/28882/domains/ceedubb.com/html/wp-content/plugins/facebook-comments-plugin/class-admin.php on line 198
    
    Warning: DOMDocument::load() [domdocument.load]: I/O warning : failed to load external entity "http://www.facebook.com/translations/FacebookLocales.xml" in /nfs/c02/h06/mnt/28882/domains/ceedubb.com/html/wp-content/plugins/facebook-comments-plugin/class-admin.php on line 198

    http://wordpress.org/extend/plugins/facebook-comments-plugin/

  2. Alex Moss
    Member
    Plugin Author

    Posted 1 year ago #

    We have seen one other person with this issue and we found that this was because phpxml is not installed on your server. You can tell your host to get this installed. Details are here:
    http://stackoverflow.com/questions/10693771/cakephp-class-domdocument-not-found

    In the meantime we're working on an alternative for you and will get an update for it as soon as possible.

  3. jwheck
    Member
    Posted 1 year ago #

    Since my webhost will not install phpxml in the name of security, I made a workaround by downloading http://www.facebook.com/translations/FacebookLocales.xml and copying the file the the facebook-comments-plugin folder on my server.

    Then I edited the code in class-admin.php starting at line 194:

    $blog_url = get_bloginfo('wpurl'); // get blog URL (ex: http://mywebsite.com)
    $plugin_url = plugin_dir_url(__FILE__); // get plug-in URL (ex: http://mywebsite.com/wp-content/plugins/facebook-comments-plugin/ )
    $plugin_url = str_replace($blog_url, '..', $plugin_url); // strip out blog URL so load command will look for local file
    $dom_object->load($plugin_url."FacebookLocales.xml"); // load local file

    Another (and IMHO, better) option would to use cURL (which my webhost does allow) for loading external files.
    First add the following function:

    /*
     * curl_get() to perform curl call to get external file and return as string
     * Copied from http://php.net/manual/en/function.curl-exec.php#98628
    
     */
    function curl_get($url, array $get = NULL, array $options = array())
    {
        // added line below to handle http_build_query() warning
        if (!empty($get)) $httpbuildquery = http_build_query($get);
    
        $defaults = array(
            CURLOPT_URL => $url. (strpos($url, '?') === FALSE ? '?' : ''). $httpbuildquery,
            CURLOPT_HEADER => 0,
            CURLOPT_RETURNTRANSFER => TRUE,
            CURLOPT_TIMEOUT => 4
        ); 
    
        $ch = curl_init();
        curl_setopt_array($ch, ($options + $defaults));
        if( ! $result = curl_exec($ch))
        {
            trigger_error(curl_error($ch));
        }
        curl_close($ch);
        return $result;
    }

    Next change line 198 from
    $dom_object->load("http://www.facebook.com/translations/FacebookLocales.xml");
    to

    $FacebookLocalesXML = curl_get("http://www.facebook.com/translations/FacebookLocales.xml");
    $dom_object->loadXML($FacebookLocalesXML);
  4. belgianwolfie
    Member
    Posted 1 year ago #

    @jwheck
    thanks for 1) solving the issue (I had the same issue)
    thanks for 2) coming back here, posting and sharing your (working) solution.

    above solution should (obviously) be added to facebook-comments-plugin/class-admin.php

  5. m_disseny
    Member
    Posted 11 months ago #

    Same issue here, cURL fix worked for me.

    Thanks a lot for sharing this @jwheck!

Topic Closed

This topic has been closed to new replies.

About this Plugin

About this Topic

Tags

No tags yet.