RSS geht nicht mehr

  • Hallo,

    ich habe seit einer Woche folgende Fehlermeldung, wenn ich die RSS-Beiträge anklicke, bzw. RSS-Kommentare:

    XML-Verarbeitungsfehler: XML- oder Text-Deklaration nicht am Beginn der Entität
    Adresse: http:// xxx/index.php/feed/
    Zeile Nr. 2, Spalte 1:<?xml version="1.0" encoding="UTF-8"?>
    ^

    Da ich blutiger Anfänger bin, habe ich auch keine Ahnung was und wo ich geändert habe, dass diese nicht mehr geht.

    Habe schon probiert in der header.php das auf charset=iso-8859-2 zu ändern. Aber das half auch nichts.

    WP aktuelle Version (2.6.2), Thema green dog.

    Kann das an einer Server-Einstellung liegen ? Eigentlich wurde an den Scripte nichts geändert, aber Einiges in den WP Einstellungen und ein update von 2.61. auf 2.6.2 gemacht.

    Bin für jeden Tipp dankbar, da ich keine Ahnung habe, was mir dieser Fehler sagen will und wie ich den behebe.

    LG
    Conny

    W.P 2.7,Thema GreenDog

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Es steht etwas vor dem Anfang der XML-Datei, was nicht sein darf. Das kann ein Leerzeichen sein, eine Leerzeile oder ein UTF-8-BOM. Hättest Du einen Link gepostet, könnte man das genauer sagen. ;-) Aber du kannst ja auch mal selber schauen, sollte sich in der Datei doch sehen lassen. Und die Fehlermeldung sagt ausnahmsweise sogar mal ganz klar, was Sache ist, also lieber nicht an den Codierungs-Einstellungen schrauben. ;-)

    Was auch immer es ist, Du müsstest dann herausfinden, wo es herkommt, fürchte ich. Das wird vielleicht nicht ganz so einfach. Wenn es ein BOM ist (siehe Wikipedia), was mich nicht wundern würde, solltest Du zuerst mal alle Dateien durchschauen, die Du selber gespeichert hast. wp-config.php zum Beispiel. Und dann brauchst Du einen guten Texteditor, der Dir Dateien als UTF-8 ohne BOM abspeichert.

  • Hi,

    danke Du hast mir weitergeholfen. Es war eine leere Zeile in der abgeänderten wp-blog-header.php. Dort habe ich an den Anfang php Counter und page-restrictor php eingefügt... und dazwischen eine Leerzeile. Dass sich das so auswirkt....

    LG

    Conny

    W.P 2.7,Thema GreenDog

  • Auch deshalb sollte man WordPress-Dateien nicht ändern! Würde das nicht eher ins Theme gehören, oder willst Du Seitenaufrufe auch im Backend zählen?! So oder so verursacht Dir das doch dann bei jedem Update wieder Stress, weil Du Deine Änderungen bewahren musst. Und Updates kommen bei WordPress recht häufig.

    Zitat

    Dass sich das so auswirkt....

    Es wirkt sich aus, wenn die Leerzeile nicht in einem PHP-Block steht. Dann steht sie effektiv nämlich schon im HTML-Output. Je nachdem wo Du das machst, provozierst Du damit auch noch PHP-Fehler der Art "Konnte Header nicht setzen.". ;-)

    Einmal editiert, zuletzt von Ammaletu (14. September 2008 um 17:20)

  • Ok. Danke, ich gebe ja zu, dass ich kein Programmierer bin und nur sehr gute HTML-Kenntnisse habe. Aber dazu ist ja ein Forum da, dass User mit mehr Erfahrung anderen unter die Arme greifen.

    Ich habe nicht viel geändert, sondern nur meine Statistik eingebaut und den page restrictor. Bei beiden den code so wie er auch von den Herstellern für den Einbau in WP empfohlen wird. Dass aber eine Leerzeile ein Problem sein kann, das war mir neu... Man lernt halt immer was dazu.

    Danke Dir. Schönen Sonntag noch.

    Conny

    W.P 2.7,Thema GreenDog

  • Gleiches Problem

    Hallo,

    ich habe ein selbes Problem bei meinem neuen Blog. Habe auch schon einmal alles komplett neu hochgeladen und nur die wp-config.php und das Template gleich gelassen.

    Kann der Fehler denn im Template liegen?

    Oder etwas in der wp-config.php?

    Und das hier ist die Website.

    Für Hilfe schon einmal vielen Dank!

  • Sieht so aus, als ob in Deinem Fall irgendwo ein Zeilenumbruch ausgegeben wird. Das kann in der wp-config.php der Fall sein, aber z.B. auch in der functions.php des Themes. Schau die Dateien noch mal im Detail an, beide dürfen nichts ausgeben! Das könnte z.B. so aussehen:

    PHP
    ...
    ?>    <-- Sieht unverdächtig aus, aber hier gibt PHP einen Zeilelumbruch aus.
    <?php
    ...
  • Probiere es doch einfach aus. Am Anfang und am Ende dürfen keine Leerzeilen sein. Aber auch zwischen einzelnen

    PHP
    <?php
    ...
    ?>
    
    
    <?php
    ...
    ?>

    dürfen keine Leerzeilen sein. Hast du die functions.php daraufhin auch kontrolliert?

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • In der functions.php steht folgendes:

    In der comments.php konnte ich eine Leerzeile finden und entfernen, aber ansonsten habe ich leider nichts wirklich gefunden...

    Nachtrag: Also am Template kann es nicht liegen, habe mal das Standard-Template von WordPress aktiviert, hier kommt der gleiche Fehler...

    Lust auf ein paar Weihnachtslieder?

    Einmal editiert, zuletzt von fourns (30. September 2008 um 21:42)

  • Also ich seh eine eindeutige Leerzeile in deiner functions.php !!

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Wie maxe schon schriebe, bitte auf jeden Fall die functions.php so ändern:

    [LEFT]

    Zitat

    Also am Template kann es nicht liegen, habe mal das Standard-Template von WordPress aktiviert, hier kommt der gleiche Fehler...

    Das war schon mal eine gute Idee. Die functions.php Deines Themes ist natürlich trotzdem falsch, aber vielleicht findet sich etwas ähnliches ja auch noch in der wp-options.php!? Hast Du andere Dateien des WordPress-Kerns bearbeitet?
    [/LEFT]

  • Sieht aus, als hättest du jetzt keine Leerzeilen mehr drin ... aber immer noch Leerzeichen. Guck noch mal ganz genau und lösche alles was vor <?php steht und alles was hinter ?> steht.

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Verstehe ich das richtig?

    Angenommen es steht folgendes im Quelltext:

    PHP
    <?php
    break;
    } // end switch
    
    
    include('admin-footer.php');
    ?>

    muss es so geändert werden:

    PHP
    <?php
    break;
    } // end switch
    include('admin-footer.php');
    ?>

    Oder sowas:

    PHP
    <?php
            /* Changes every other comment to a different class */
            $oddcomment = ( empty( $oddcomment ) ) ? 'class="alt" ' : '';
        ?>
    
    
        <?php endforeach; /* end for each comment */ ?>
    
    
        </div>

    so geändert:

    PHP
    <?php
            /* Changes every other comment to a different class */
            $oddcomment = ( empty( $oddcomment ) ) ? 'class="alt" ' : '';
        ?>
        <?php endforeach; /* end for each comment */ ?>
        </div>

    Lust auf ein paar Weihnachtslieder?

    Einmal editiert, zuletzt von fourns (3. Oktober 2008 um 11:36)

  • Es wurde jetzt hier schon mehrfach gepostet, dass zwischen den einzelnen <?php ... ?> keine Leerzeilen und -zeichen stehen dürfen. So wär es richtig:

    PHP
    <?php
            /* Changes every other comment to a different class */
            $oddcomment = ( empty( $oddcomment ) ) ? 'class="alt" ' : '';
    ?>
    <?php endforeach; /* end for each comment */ ?>

    Innerhalb des php dürfen Leerzeilen sein:

    PHP
    <?php
    break;
    } // end switch
    
    
    include('admin-footer.php');
    ?>

    Aber du hast es ja mittlerweile hinbekommen, oder?

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Also ich kann diesen Feed lesen: pfaendr.de - private blogging

    Evtl. nur noch ein Browser-Cache Problem. Hast du deinen Cache mal geleert? Oder versuch es mal mit STRG+F5.

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Narf.. tatsächlich. Danke dir.

    Aber so ganz habe ich es nicht verstanden wieso dann im Template Standardmäßig Leerzeilen oder Leerzeichen enthalten waren. Muss dies nicht immer zu einem Fehler führen?

  • Nein, in den "normalen" Templates, wie z.B. index.php, single.php, page.php, archive.php, comments.php etc. führt das nur selten zu irgendwelchen Fehlern. Aber die functions.php und die wp-config.php sind da sehr sensibel ;-)

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!