Support » Plugin: Avatar Privacy » Wavatar, MonsterID und Kegel

  • Resolved Torsten

    (@knodderdachs)


    Hallo,

    ich habe nach dem Installieren mal ein wenig herumprobiert, welche Avatare mir am besten gefallen, falls der Kommentator der Nutzung nicht zustimmt oder halt kein Gravatar-Bild hinterlegt hat.

    Dabei ist mir aufgefallen, dass Wavatar und MonsterID scheinbar nicht funktionieren? Es werden dann keine Bilder angezeigt.

    Weiterhin ist mir aufgefallen, dass, wenn ich den Kegel auswähle, das Scrolling auf der Website langsam und abgehackt ist. Das kann ich mir gar nicht erklären, ist aber reproduzierbar. Sobald ich irgendetwas anderes auswähle, läuft es wieder flüssig.

    Grüße
    Torsten

Viewing 10 replies - 16 through 25 (of 25 total)
  • Plugin Author pepe

    (@pputzer)

    OK, dann versuch bitte einmal auf dieser neuen Installation WP_DEBUG und WP_DEBUG_LOG zu aktivieren.

    Außerdem könntest Du folgenden Error-Handler in die wp-config.php einbauen, der gibt auch Stacktraces aus (läuft bei mir so in Produktion).

    
    /**
     * Adds a backtrace to PHP errors
     * 
     * Copied from: https://gist.github.com/625769
     * Forked from: http://stackoverflow.com/questions/1159216/how-can-i-get-php-to-produce-a-backtrace-upon-errors/1159235#1159235
     * Adjusted by jrfnl
     */
    function process_error_backtrace($errno, $errstr, $errfile, $errline) {
            if(!(error_reporting() & $errno))
                    return;
            switch($errno) {
                    case E_WARNING      :
                    case E_USER_WARNING :
                    case E_STRICT       :
                    case E_NOTICE       :
                    case ( defined( 'E_DEPRECATED' ) ? E_DEPRECATED : 8192 )   :
                    case E_USER_NOTICE  :
                            $type = 'warning';
                            $fatal = false;
                            break;
                    default                  :
                            $type = 'fatal error';
                            $fatal = true;
                            break;
            }
            $trace = debug_backtrace();
            array_shift($trace);
            if(php_sapi_name() == 'cli' && ini_get('display_errors') ) {
                    echo 'Backtrace from ' . $type . ' \'' . $errstr . '\' at ' . $errfile . ' ' . $errline . ':' . "\n";
                    foreach($trace as $item)
                            echo '  ' . (isset($item['file']) ? $item['file'] : '<unknown file>') . ' ' . (isset($item['line']) ? $item['line'] : '<unknown line>') . ' calling ' . $item['function'] . '()' . "\n";
                            
                    flush();
            } else if( ini_get('display_errors') ) {
                    echo '<p class="error_backtrace">' . "\n";
                    echo '  Backtrace from ' . $type . ' \'' . $errstr . '\' at ' . $errfile . ' ' . $errline . ':' . "\n";
                    echo '  <ol>' . "\n";
                    foreach($trace as $item)
                            echo '  <li>' . (isset($item['file']) ? $item['file'] : '<unknown file>') . ' ' . (isset($item['line']) ? $item['line'] : '<unknown line>') . ' calling ' . $item['function'] . '()</li>' . "\n";
                    echo '  </ol>' . "\n";
                    echo '</p>' . "\n";
    
                    flush();
            }
            if(ini_get('log_errors')) {
                    $items = array();
                    foreach($trace as $item)
                            $items[] = (isset($item['file']) ? $item['file'] : '<unknown file>') . ' ' . (isset($item['line']) ? $item['line'] : '<unknown line>') . ' calling ' . $item['function'] . '()';
                    $message = 'Backtrace from ' . $type . ' \'' . $errstr . '\' at ' . $errfile . ' ' . $errline . ': ' . join(' | ', $items);
                    error_log($message);
            }
    
            if($fatal)
                    exit(1);
    }
    
    set_error_handler('process_error_backtrace');
    
    Torsten

    (@knodderdachs)

    Habe ich gemacht; es wird kein debug.log erstellt.

    Den Code von oben habe ich zuerst in die wp-config.php eingefügt und habe keine Änderung festgestellt. Habe den Code dann mal in eine Datei namens backtrace-errors.php geschrieben und in /mu-plugins/ hochgeladen, wie auf GitHub geschrieben steht.

    Da passiert aber auch weiter nichts, außer, dass die Datei bei den Plugins in WordPress auftaucht.

    Plugin Author pepe

    (@pputzer)

    Error-Logging an sich (in der php.ini hast Du aktiviert?

    Torsten

    (@knodderdachs)

    Ja, in der error_log_php Datei stehen aber nur die Warnmeldungen von heute Nachmittag drin. Ansonsten nichts.

    Plugin Author pepe

    (@pputzer)

    Sehr schräg. Wäre es möglich, eine Spezialversion des Plugins dort zu installieren, um über direkte Ausgaben (error_log()) an bestimmten Stellen rauszuschreiben?

    Torsten

    (@knodderdachs)

    Klaro, ist ja nicht im Produktiv-Einsatz. Dürfte dann ja keine Probleme geben.

    Plugin Author pepe

    (@pputzer)

    Schreib mich bitte einmal kurz auf https://code.mundschenk.at an, per Mail dürfte das leichter gehen.

    For the full code – including documentation which may help you solve the “file not being created” issue – of the above backtrace code, see: https://gist.github.com/jrfnl/5925642

    Plugin Author pepe

    (@pputzer)

    Thanks, @jrf. We worked around it by good old-fashioned error_log calls, eventually. Next time, I’ll try to remember to just link to the Gist, though.

    The problem is that WP_Image_Editor_Imagick does not like streams (already patched in #42663, but not committed). I’ve worked around it in version 1.0.5.

    Torsten

    (@knodderdachs)

    Jup, 1.05 funktioniert nun einwandfrei. Danke nochmal für die tolle Unterstützung gestern!

Viewing 10 replies - 16 through 25 (of 25 total)
  • The topic ‘Wavatar, MonsterID und Kegel’ is closed to new replies.