Über 24 Gründe, warum Code nicht funktioniert und wie man ihn behebt
Veröffentlicht: 2013-08-21Ich teste den Code immer zuerst, um sicherzustellen, dass er funktioniert, aber es gibt viele Gründe, warum er manchmal nicht funktioniert, sowohl für mich als auch für andere Leute, die ihn verwenden, obwohl er nicht kaputt ist.
Hier ist eine Liste mit einigen Gründen, warum der Code nicht funktioniert:
- Vergessen, den Browser-Cache zu leeren: Sie können CSS-Änderungen vornehmen und denken, dass sie nicht funktionieren, obwohl sie tatsächlich funktionieren, weil der Browser tatsächlich eine ältere Version von Seiten anzeigt, die den älteren Code enthalten. Löschen Sie zur Sicherheit Ihren Browser-Cache.
- Den Server-Cache nicht gelöscht: Einige Anbieter von Managed Hosting verwenden sehr aggressives serverseitiges Caching. Ich weiß, dass WPEngine das bedeutet, dass es tatsächlich Tage dauern kann, bis CSS-Änderungen auf Ihrer Website erscheinen. Sie können diese Änderungen vornehmen, die wirklich funktionieren, aber denken, dass sie nicht funktionieren, weil Sie die Änderungen am Frontend nicht sehen können. Löschen Sie Ihren Server-Cache und testen Sie den Code lokal auf die Verwendung von serverseitigem Caching oder einem Caching-Plugin.
- CSS-Code in die Funktionsdatei eingefügt: CSS-Code funktioniert nicht richtig in der Funktionsdatei, die ein öffnendes PHP-Tag enthält, was bedeutet, dass es von einem auf dem Server installierten PHP-Prozessor gelesen wird.
- PHP in das Stylesheet eingefügt : PHP-Code funktioniert nicht in einer .css-Datei, die von einem Browser und nicht von einem auf dem Server installierten PHP-Prozessor gelesen wird.
- Eingefügtes PHP oder CSS in die Kopf- und Fußzeilen-Skripts: Designs, die ein Feld für Kopf- und Fußzeilen-Skripts enthalten, erleichtern das Hinzufügen von Javascript für Google Analytics-Tracking und Live-Chat-Skripts, nicht PHP-Skripts.
- Kopieren Sie es von einer Webseite und fügen Sie es in den Design-Editor ein: Sehr häufiger Fehler, der dazu führen kann, dass sich die Apostrophe umdrehen, was zu einem weißen Bildschirm des Todes führt, der Ihre Website beschädigt. Kopieren Sie immer den Rohcode und fügen Sie ihn mit einem Texteditor wie Notepad++ am Ende der Datei ein.
- Nicht den gesamten Code kopiert: Das Kopieren eines CSS-Codeblocks, der die Klasse nicht enthält oder in dem eine schließende Klammer fehlt, führt dazu, dass der Code nicht funktioniert. Sie denken also vielleicht, dass der Code kein Geed ist, wenn das einzige Problem darin besteht, dass Sie eine Klammer oder ein Semikolon zurückgelassen haben.
- Hat nicht den gesamten Code eingefügt: Dasselbe wie oben und passiert manchmal.
- Die neuen Hooks verwendet, wenn Ihr Design die alten verwendet: Die Verwendung von Code, der Loop-Hooks für Sites enthält, die noch das alte XHTML-Markup auf neuen Sites ausführen, funktioniert nicht. Der Code funktioniert auf älteren Websites, sodass er nicht beschädigt ist, aber er funktioniert nicht auf HTML 5-aktivierten untergeordneten Themen.
- Verwendet die alten Hooks, wenn Ihr Theme die neuen verwendet: Dasselbe wie oben
- Verwenden eines alten Browsers, der die Klassen im Code nicht unterstützt: Einige ältere Browser unterstützen bestimmte CSS-Klassen nicht, was bedeutet, dass der Code nicht das tut, wofür er geschrieben wurde. Sie können mehrere Browser installieren, um den Code zu testen, oder kostenlose Online-Tools für die browserübergreifende Kompatibilität verwenden.
- Verwenden der neuesten Browserversion, die die Klassen im Code noch nicht unterstützt: Einige neue Browser unterstützen einige CSS-Klassen nicht, was bedeutet, dass der Code auf älteren Browsern funktioniert, aber Sie denken vielleicht, dass dies nicht der Fall ist, weil Sie eine Beta verwenden Version oder die neueste Version, die gerade erst freigegeben wurde.
- Kopieren Sie das öffnende PHP-Tag und fügen Sie es in Ihre Funktionsdatei ein: PHP-Snippets enthalten im Allgemeinen ein öffnendes PHP-Tag, das jedoch nicht in eine Funktionsdatei eingefügt werden sollte, die dieses Tag bereits enthält. In diesem Fall erhalten Sie eine Fehlermeldung und Ihre Website wird beschädigt. Dies lässt sich leicht beheben, indem Sie einfach das Tag entfernen. Aus diesem Grund empfiehlt es sich immer, einen Texteditor zu verwenden, um den Code in die eigentliche Datei einzufügen, anstatt den WordPress-Editor zu verwenden. Wenn Sie den Code zur eigentlichen Datei hinzufügen, können Sie ihn problemlos erneut öffnen und das Problem schnell beheben, was bei Verwendung des Design-Editors nicht der Fall ist, da Sie bei einem Programmierfehler von der Website ausgeschlossen werden.
- Kopieren und Einfügen beider Lösungen, anstatt eine auszuwählen: Viele Posts und Foren enthalten mehrere Code-Snippets, die dieselben Probleme lösen. Wenn Sie 2 Code-Snippets einfügen, die dasselbe tun, kann dies Ihre Website beschädigen, sodass Sie möglicherweise denken, dass der Code beschädigt ist, was nicht der Fall ist. Verwenden Sie jeweils nur ein Snippet.
- Kopierter Funktionscode in eine Vorlagendatei: Manchmal finden Sie PHP-Code, der geschrieben wurde, um in einer Vorlagendatei und nicht in einer untergeordneten Themen-Funktionsdatei verwendet zu werden. Vorlagencode funktioniert nicht immer in einer Funktionsdatei, da er im Allgemeinen in öffnende und schließende PHP-Tags eingeschlossen ist. Benutzerdefinierte Funktionen bedeuten im Allgemeinen nicht, dass sie je nach Thema in einer te,plate-Datei im Allgemeinen nicht funktionieren. Stellen Sie einfach sicher, dass Sie genau wissen, in welche Datei Sie den Code einfügen müssen, da Sie sonst möglicherweise eine Fehlermeldung erhalten, weil Sie denken, dass der Code nicht funktioniert, wenn dies der Fall ist.
- Sie haben ein Plugin installiert, das den Code überschreibt: Einige Plugins überschreiben den PHP-Code, was bedeutet, dass Code mit Filtern und Hooks möglicherweise nicht funktioniert. Ein Beispiel dafür ist das Plugin Genesis Simple Edits. Wenn Sie dieses Plugin installiert haben, mit dem Sie die Post-Informationen und Post-Meta anpassen können, funktioniert das Hinzufügen von PHP-Code, um dasselbe zu tun, was einen Post-Meta- oder Post-Info-Filter enthält, nicht. Sie denken vielleicht, dass der Code nicht funktioniert, obwohl er es tatsächlich tut, und alles, was Sie tun müssen, um das Problem zu lösen und den Code zum Laufen zu bringen, ist das Plugin zu deaktivieren.
- Verwenden von PHP-Code zum bedingten Ändern des Layouts Dieser Code funktioniert nicht bei einigen Themes, die bbPress verwenden, die auch das Genesis bbPress Connect-Plugin verwenden. Dieses Plugin hängt sich in die Genesis-Filter ein, was dasselbe ist, was PHP-Code tut, um Layouts bedingt zu ändern, sodass es nicht funktioniert, da es den Code überschreibt.
- Verwenden von XHTML-CSS-Klassen auf untergeordneten HTML 5-Designs – Beispiel: #content funktioniert nicht auf untergeordneten HTML 5-Designs, die .entry-content verwenden.
- Verwenden von HTML-Markup auf einem XHTML -Design – .site-header funktioniert nicht auf einer Website, auf der XHTML-Markup ausgeführt wird, daher müssen Sie #header verwenden.
- Titelseiten-Vorlagencode – Jeder Code in Ihrer Titelseitenvorlage funktioniert nur, wenn Sie die Standard- Leseeinstellungen verwenden. Wenn Sie diese Einstellungen ändern und eine statische Seite als Startseite auswählen, funktioniert der Code in Ihrer Startseitenvorlage nicht.
- CSS nach Medienabfragen hinzugefügt – Fügen Sie am besten benutzerdefiniertes CSS vor Ihren Medienabfragen hinzu, da es sonst möglicherweise nicht funktioniert.
- CSS hinzugefügt, um bereits formatierte Klasse zu ändern – Sie haben CSS am Ende Ihres Stylesheets hinzugefügt, um das Styling eines vorhandenen Elements zu ändern, das standardmäßig bereits formatiert ist. Ein Beispiel dafür ist, wenn Sie einen Widget-Bereich ändern, um das Genesis-Widget für hervorgehobene Posts zu verwenden, wenn er standardmäßig so gestaltet ist, dass er das Widget für hervorgehobene Seiten verwendet. Ihr CSS ist möglicherweise anders, aber Sie verwenden eine andere Klasse. Was Sie tun müssen, ist das Standard-CSS so zu ändern, dass es bei längeren Stilen das Featured-Page-Widget und nur das Featured-Post-Widget formatiert.
- Homepage- Template-Code – Jeglicher Code in Ihrer home.php-Template-Datei funktioniert nur auf der Startseite, wenn Sie die Standard-Leseeinstellungen verwenden. Wenn Sie eine statische Seite als Startseite verwenden, funktioniert der Code nur dann auf Ihrer Beitragsseite (z. B. einer Blogseite), wenn Sie die Blogseitenvorlage nicht aus dem Dropdown-Menü ausgewählt haben. (Gilt nur für Themen, die eine Blog-Seitenvorlage enthalten).
- Falsch geändertes CSS macht andere CSS kaputt – Ein Mitglied hat Code installiert, um ein benutzerdefiniertes Layout zu erstellen, aber es hat nicht funktioniert, weil das CSS zum Ändern der Inhaltsbreite nicht funktioniert hat. Sie entdeckten, dass andere CSS, die sie zuvor mit !important hinzugefügt hatten, verhinderten, dass das neue CSS funktionierte.
Der obige Code funktioniert NICHT, wenn Sie auch das Genesis Simple Edits-Plugin aktiviert haben, da es den Post-Info-Filter überschreibt.
Das ist alles, was mir im Moment einfällt, aber ich bin sicher, dass es noch viele weitere Gründe gibt, warum Code nicht funktioniert (aber wirklich funktioniert), die dieser Liste hinzugefügt werden könnten.
zusammenhängende Posts
- 5 wichtige Punkte, die vor der Neuveröffentlichung von Code zu berücksichtigen sind