1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

loginseite weiß wenn ich was in die functions schreibe

Dieses Thema im Forum "Installation" wurde erstellt von irmen, 4. Januar 2015.

  1. irmen

    irmen Well-Known Member

    Registriert seit:
    8. Januar 2010
    Beiträge:
    971
    Zustimmungen:
    2
    Hallo ich bin sehr erstaunt, denn den Code, der nun scheinbar den Fehler oder die Ursache enthält, hatte ich schon mitte Dezember reingeschrieben und mir war bisher nicht aufgefallen, daß ich mich nicht mehr einloggen hätte können.
    Habe die ganze Zeit bis Weihnachten mit der Seite herumgearbeitet.

    WP 4.0.1
    childtheme von magazine-basic

    Nun möchte ich hier den Code posten, den ich in die functions.php meines Childthemes rein habe, und der offenbar bewirkt, daß dann die Loginseite weiss wird.(wenn ich den rauslösche, dann gehts)

    Viellicht kann mir jemand sagen, was genau daran jetzt kritisch ist.

    wäre super, wenn mir jemand hilft - ich bräuchte diese Widget nämlich schon!!
    vielen Dank!
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  2. mensmaximus

    mensmaximus Well-Known Member

    Registriert seit:
    24. Juli 2014
    Beiträge:
    8.857
    Zustimmungen:
    437
    Was für ein heilloses Durcheinander. Räume den Code erstmal auf und entscheide Dich für eine Syntax.
     
  3. irmen

    irmen Well-Known Member

    Registriert seit:
    8. Januar 2010
    Beiträge:
    971
    Zustimmungen:
    2
    allein diese Zeilen hier lassen den Login verschwinden.

    Kann mir jemand sagen, warum?
    Ist da ein Fehler drin?

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Ich habe mir das aus einem tutorial rauskopiert.
     
  4. maxe

    maxe Well-Known Member
    Ehrenmitglied

    Registriert seit:
    1. Mai 2008
    Beiträge:
    19.581
    Zustimmungen:
    277
    könnte schon alleine an den Leerzeilen im Code liegen.
     
  5. mensmaximus

    mensmaximus Well-Known Member

    Registriert seit:
    24. Juli 2014
    Beiträge:
    8.857
    Zustimmungen:
    437
    Wie ich schon sagte, ein heilloses Durcheinander mit drei verschiedenen IF Syntax und gemischter HTML/PHP Schreibweise. Kein Wunder wenn man da eine Klammer übersieht und Code an der falschen Stelle ausgeführt wird. Wie immer werden freundliche Hinweise aber ignoriert und somit Fehler übersehen.
     
  6. irmen

    irmen Well-Known Member

    Registriert seit:
    8. Januar 2010
    Beiträge:
    971
    Zustimmungen:
    2
    Danke für eure Antworten!!

    Die Leerzeilen hab ich jetzt raus - leider lags daran erstmal nicht.

    ich denke, es lag an einem Leerzeichen nach dem ?> - das ist aber schon recht fies!!

    Für alle, die auch so ein Probelm haben, ich hab die Lösung (für mich jetzt) auf folgender Seite gefunden:
    http://codex.wordpress.org/FAQ_Troubleshooting#How_do_I_solve_the_Headers_already_sent_warning_problem.3F

    Jetzt geht es auch mit dem heillosen Durcheinander :)

    @mensmaximus
    du schreibst "drei verschiedene if syntax" - ich finde zwei verschiedene,
    <?php if () : ?>
    und
    <?php if ( ) { ?>

    kannst du mir bitte draufhelfen, welches die dritte ist?
    ist while auch eine if syntax?

    Wäre sehr nett, damit ich das aufräumen und was dazulernen kann!!

    Vielen Dank!!

    Irmen
     
  7. mensmaximus

    mensmaximus Well-Known Member

    Registriert seit:
    24. Juli 2014
    Beiträge:
    8.857
    Zustimmungen:
    437
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  8. mensmaximus

    mensmaximus Well-Known Member

    Registriert seit:
    24. Juli 2014
    Beiträge:
    8.857
    Zustimmungen:
    437
    Quick Clean ohne Gewähr

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  9. irmen

    irmen Well-Known Member

    Registriert seit:
    8. Januar 2010
    Beiträge:
    971
    Zustimmungen:
    2
    wow, damit hab ich nicht gerechnet - vielen Dank!

    Das heißt, man soll nicht das Php immer unterbrechen sondern lieber echo '' schreiben?
    wie beendet man das Echo? mit '; - oder nur ' ?
    Also alles, was nicht php ist, wird mit echo eingefügt?

    Es gibt jetzt keine else abteilung mehr - was ja nicht schlimm ist in diesem Fall,
    weil dann ja sowieso nichts drinstünde(deshalb hast du es wohl weggelassen),
    aber was ist, wenn ich ein else habe?
    dann einfach wie gewohnt else{} - ?

    es gibt auch kein "endif" - brauchts das hier jetzt nicht mehr?

    Warum gibt es andere Schreibweisen, welche nimmt man für was?

    Ich weiß, du denkst dir "die spinnt wohl, soll ich hier nen Privat-Kurs abhalten?"
    Deshalb zusammenfassend meine Frage - hast du einen guten Link für mich,
    - eine Seite für so wenigchecker wie mich, wo's gut erklärt ist?

    Vielen, vielen Dank für deine Bereinigung/Hilfe!!

    Irmen


     
  10. mensmaximus

    mensmaximus Well-Known Member

    Registriert seit:
    24. Juli 2014
    Beiträge:
    8.857
    Zustimmungen:
    437
    Die vielen Unterbrechungen erschweren das Lesen des Codes. Wenn man also vorwiegend PHP Code hat arbeitet man einfacher mit echo. Hat man mehr HTML Code, wie z.B. in einem Template, fügt man den PHP Code via <?php ?> ein.

    Die Syntax ist echo 'mein_inhalt'; oder auch mehrzeilig wi z.B.
    echo '
    <div>text
    <a href="http://domain.de">link</a>
    </div>
    ';

    Echo ist der Befehl um etwas auszugeben. Das kann auch eine PHP Variable sein:
    $var = "Text";
    echo $var;

    Richtig. Überflüssiger Code kostet nur Ladezeit. Auch wenn wir nur über Millisekunden sprechen addiert sich das.

    Die Syntax ist:
    if () {
    } elseif () {
    } elseif () {
    } else {
    }

    Die geschweifte Klammer schließt ab.

    Die Schreibweise mit geschweiften Klammern ist die ursprüngliche Variante und wir vorzugsweise bei der reinen PHP Programmierung verwendet. Die Schreibweise mit Doppelpunkten wird vorwiegend in Templates verwendet, also wenn mehr HTML Code zum Einsatz kommt. Das macht das lesen einfacher. Die Schreibweise ohne geschweifte Klammer und ohne Doppelpunkt wird oft aus Faulheit verwendet und eignet sich nur für eine einzige Anweisung nach dem IF, nicht für einen Codeblock. Oft führt diese Schreibweise zu Fehlinterpretationen beim ungeübten Anwender, weil er nicht genau weiß was zur If Abfrage gehört.

    Tatsächlich kann ich hier keinen Kurz abhalten, ansonsten denke ich eher, dass Du zu Recht neugierig bist.



    Da tue ich mich tatsächlich schwer, weil ich seit 14 Jahren in PHP Programmiere und schon lange keine Bücher mehr gelesen habe. Google sollte aber ganz hilfreich sein um diverse Tutorials für Anfänger zu finden, ansonsten gibt es auf Amazon massenweise Bücher.
     
  11. himitsu

    himitsu Well-Known Member

    Registriert seit:
    10. März 2011
    Beiträge:
    612
    Zustimmungen:
    0
    Sind hier eventuell Ausgaben enthalten, also außerhalb der Funktion, direkt beim Laden der Datei?

    Und ann vorallem das ständige und auf und zu, ala
    Da wird einem ja fast schwindlig.
     
  12. irmen

    irmen Well-Known Member

    Registriert seit:
    8. Januar 2010
    Beiträge:
    971
    Zustimmungen:
    2
    @ mensmaximus
    Ich bin ganz platt - vielen Dank!
    Jubel, jubel viel gelernt!!!

    Äh, du wohnst nicht zufällig in München und magst mir eine - natürlich bezahlte - Privatnachhilfestunde geben?

    Danke!!Danke!!Danke!!Irmen


    @himitsu
    deine Frage oder Anregung verstehe ich leider schon wieder nicht ...
    PS Ja, mir ist sehr, sehr oft schwindlig ;)
     
  13. mensmaximus

    mensmaximus Well-Known Member

    Registriert seit:
    24. Juli 2014
    Beiträge:
    8.857
    Zustimmungen:
    437
    Ich bin zwar ein geborener Münchner aber vor 22 Jahren ins Rheinland ausgewandert :) Dank Skype muss man aber heut nicht mehr am gleichen Tisch sitzen. Meine Kunden in Australien und Indien begrüßen das sehr.
     
  14. himitsu

    himitsu Well-Known Member

    Registriert seit:
    10. März 2011
    Beiträge:
    612
    Zustimmungen:
    0
    Nja, da endet ein PHP-Block und es fängt sofort wieder ein Neuer an.
    Das kommt sehr oft im Code vor und macht ihn nur unübersichtlicher.
    Unnötiger zusätzlicher Code. Ist ja fast wie der Kommentierwahn bei einigen Leuten, die praktisch jeden einzelnen Befehl kommentieren und man dann vor lauter sinnloser Kommentare den Code oder gar wichtige Kommentare garnicht mehr sieht.
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden