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

caching-plugin brutal cache vorgestellt

Dieses Thema im Forum "Plugin-Vorstellung" wurde erstellt von sateffen, 1. November 2010.

  1. sateffen

    sateffen Well-Known Member

    Registriert seit:
    1. November 2010
    Beiträge:
    85
    Zustimmungen:
    0
    guten abend liebe leute =)
    ich würd gern ein bissel featback und unterstützung in die pluginwelt von wordpress erhalten. ich hab viel gelesen, howto, usw, und hab nun ein eigenes plugin geschrieben

    die kenndaten:
    Autor: Sateffen el Raysaw (bin ich)
    Plugin-Name: Brutal Cache
    Version: Beta 1
    Download: http://sateffen.bplaced.net/wp-content/uploads/2010/11/brutal_cache.zip

    jut. nen bissel beschreibung wäre ganz gut:
    Das plugin soll dem user ermöglichen, vollste hand über das cachen zu ermöglichen. Dass bis jetzt natürlich erst grundlegende features vorhanden sind ist denk ich logisch. warum die version so krypisch erscheint erklär ich auch kurz: es ist ne beta version, und davon die erste^^
    warum ein neues caching-plugin? ich will lernen mit WP umzugehen, ich will lernen es zu erweitern, und ich fand die bisher gefundenen passen nicht ganzu dem was ich alles will. darum probier ich einfach rum. und nochwas: ja die konfiguration ist mit absicht nicht in SQL gemacht! das momentane (mit PHP) ist schneller fürs frontend wenn man sehr penibel ist und ich habe mich mit dem wordpress-datenbankmodul noch nicht beschäftigt. das wollte ich, wenn dieses plugin "fertig" ist, in einem weiteren plugin erlernen.

    ich hoffe hier gute kritik zu erhalten, was ihr von dem plugin haltet, wo fehler sind, was vllt echt grotten mies ist (aber bitte freundlich bleiben :D ich geb mir mühe, kann aber von anfang an nix perfekt), wenn etwas gut ist auch gerne loben, wachsen tu ich gerne =)
    wenn ihr lösungsvorschläge für probleme habt die ihr in dem ganzen seht: bin ich auch offen für. wie gesagt: ich will lernen.

    ich freu mich schon auf eure antworten =)
    euer sateffen

    edit:
    2.11.2010 18Uhr: Kleines Update. Ich hab vorher als vorraussetzung PHP 5.3 vorrausgesetzt, nun ist es auch mit älteren PHP versionen kompatibel
     
    #1 sateffen, 1. November 2010
    Zuletzt bearbeitet: 2. November 2010
  2. kaiser

    kaiser Well-Known Member

    Registriert seit:
    20. November 2008
    Beiträge:
    1.840
    Zustimmungen:
    0
    Hello Steffen,

    sieht ja erstmal ganz nett aus :D

    Vor allem, dass es eindeutige Funktionsnamen gibt. Allerdings, kann ich Dir nur empfehlen von dem Prefix "brutal_cache_XY_fn" auf was kürzeres umzusteigen, zB "bcp_XY_fn", weil man sonst recht komisch wird beim Schreiben und lesen (Die Namen auf Dauer schauen sonst alle gleich aus).

    Einen Link den ich bzgl. Plugin-/Themeentwicklung gerne weitergebe: http://wordpress.stackexchange.com/questions/715/

    Was ich selbst vom entwickeln gelernt habe: So ausführlich wie möglich dokumentieren. Der PhpDoc-Standard hat sich da als gute Hilfe erwiesen und wird auch von IDEs wie Firephp oder Eclipse unterstüzt. Ich mach's immer so:
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Wie Du siehst, kommentiere ich recht exzessiv. Hat sich aber oftmals bewehrt, weil Du in einem Monat oder schon einer Woche nicht mehr weißt, warum Du was gemacht hast. Ich verwende immer diese 3 Arten des Kommentars für unterschiedliche Dinge: Mehrzeilig für Dateieinleitungen, Class- und function-Beschreibungen; // einzeilig um den Fortschritt und das gewünschte Ergebnis zu kommentieren; # einzeilig um echo, print, var_dump auszukommentieren. So kann ich schnell nachschauen, ob irgendwo das richtige oder falsche Ergebnis raus kommt. Weiters in Kombination mit @todo, weil ich meine todo-Tasks so auch in Notepad++ mit einer Dateiübergreifenden Suche sofort finde. Nie lange an einem Problem bleiben, lieber ein @todo schreiben und weiter kommen.

    Ein anderer guter Tip ist auch, den Schreibstil beibehalten.
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Wichtig finde ich auch die Überprüfung von Existenzen, etc.. : file_exists, is_file, !empty, is_array(, !function_exists, !class_exists, usw. Damit ersparst Du Dir einen Haufen Ärger. Ich hab so meine Error-function, die __FILE__ mit aufnehmen kann, damit ich dann eine vernünftige Fehlermeldung bekomme und nicht bei jedem Update immer alles durchsuchen muss, ob es so eh noch existiert.

    Gutes Gelingen! (Ich abonnier den Thread mal).
     
    #2 kaiser, 4. November 2010
    Zuletzt bearbeitet: 4. November 2010
  3. kaiser

    kaiser Well-Known Member

    Registriert seit:
    20. November 2008
    Beiträge:
    1.840
    Zustimmungen:
    0
    Ach, komplett vergessen. Folgendes Plugin hilft bei der Entwicklung enorm: Log Deprecated Notices
     
  4. sateffen

    sateffen Well-Known Member

    Registriert seit:
    1. November 2010
    Beiträge:
    85
    Zustimmungen:
    0
    vielen dank für deine antwort =)
    das freut mich echt riesig dass tatsächlich jemand antwortet =)

    der eindeutige name war mir sehr wichtig, darum immer dieser schöne prefix. ich persönlich hab damit keinerlei schwierigkeiten auch mit den langen variablen und funktionsnamen zu arbeiten, im gegenteil: es ist für mich eine schöne und vor allem genaue übersicht wozu etwas gehört. mag komisch klingen, und für externe entwickler weiß ich ist das nicht nachzuvollziehen, aber für mich ist das sehr viel leichter wenn ich glied für glied (durch die _ getrennt) wirklich eine eindeutige sprechende zuweisung habe. so kann ich selbst in einem großen programm die internen dinge gut auseinander halten.
    das brutal_cache_ könnte man ersetzen, werd ich mal überlegen, aber für mich muss das halt eindeutig immer sein, und mit abkürzungen habe ich selbst immernoch kleine schwierigkeiten.

    durchkommentieren hast du vollkommen recht! ich dokumentiere, wenn ich in der entwicklung selbst bin, leider nur sehr schlecht, erst im nachhinein ausführlicher^^ danke für den wichtigen hinweis!
    ich benutze aber kein eclipse, firephp, netbeans, oder was weiß ich, da kriege ich keine unterstützung, ich selbst entwickel mit scriptly =) ein leichtgewichtiger editor der more than perfect ist =)
    dokumentierung werd ich mich nochmal ransetzen, vieln dank für diesen wichtigen hinweis, ich bin einfach bissel zu schussellig :-S

    meinem schreibstil bleib ich eigentlich treu, ich bevorzuge die einfachen ' da die doppelten nur für HTML interne dinge sind. das einzige was du meinen konntest wäre das mitten in dem put_contents das ."<?php \n ". der ASCII code wird leider als variable ausgewertet, und eine andere möglichkeit, so peinlich es ist, kenn ich leider nicht um die zeile zu breaken beim textfile schreiben.

    existenzen prüfen - stimmt. das ist wichtig und kann zu unangenehmen fehlern führen. ich schaue dass ich diese bedingungen zum fehlerabfangen einbaue, danke für den guten tipp =)

    das plugin lad ich mir gleich mal, mal anschauen was es kann, und den link hab ich mal gespeichert, am we mal lesen.
    vielen dank für die antwort =) das freut mich echt riesig dass tatsächlich jemand antwortet.
    ich setz mich das wochenende mal ran und bau das alles ein bischen um =) danke!
     
  5. kaiser

    kaiser Well-Known Member

    Registriert seit:
    20. November 2008
    Beiträge:
    1.840
    Zustimmungen:
    0
    Na gerne. :D

    Wegen der "Benamsung" von Variablen und Funktionen: Ich hab eigentlich eh nur den "brutal_cache_" Teil gemeint. Ich denke, dass da 3 Buchstaben ausreichen, daher auch "bcp_" = "brutal cache plugin".

    Einige Dinge waren auch mehr allgemein gemeint und nicht direkt auf Deinen Code bezogen.

    Wegen den line breaks: Ich hab dafür leider auch (hoffentlich nur noch) keine Lösung und mach auch immer
    <?php echo 'Das ist mein Test.' . "\n"; ?>
    Für eine andere Lösung wäre ich auch dankbar. Oftmals denk ich mir aber auch nur: Pfeif drauf. Wer in den Quellcode schaut, kennt sich eh nicht aus, sonst würde er/sie ja eh Firebug verwenden.

    Schönes We!
     
  6. sateffen

    sateffen Well-Known Member

    Registriert seit:
    1. November 2010
    Beiträge:
    85
    Zustimmungen:
    0
    sooooooo nu hab ich mal die Beta 1.2 veröffentlicht
    link: http://sateffen.bplaced.net/brutal-cache
    ich hab den code ein bissel ausdokumentiert, ein kontrollsystem eingebaut was ein bisschen sicherheit schafft, dass die files auch wirklich da sind und zumindest vermutlich richtig sind. desweiteren habe ich den "brutal mode" eingeführt. damit lassen sich blogs komplett verstatischen.
    bei mir funktioniert es einwandfrei, und der brutal mode fetzt auch so wie ich es wollte. von der standartanwendung ohne irgendwas nen ramverbrauch von 25mb, auf ca 1,2% runter, nurnoch knapp 300kb speicherauslastung.

    jetzt brauche ich aber praxistest-berichte. bei mir funktioniert es, aber ich brauche jetzt mal das augenmerk eines dritten.
    ich freu mich auf eure berichte =)
     
  7. kaiser

    kaiser Well-Known Member

    Registriert seit:
    20. November 2008
    Beiträge:
    1.840
    Zustimmungen:
    0
    Hab kurz rein geschaut. Sieht recht gut aus :)
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Übrigens, auch ein netter Artikel: http://scribu.net/wordpress/optimal-script-loading.html - Mittlerweile packe ich Dinge auch ganz gerne in eine/mehrere classes. Das erspart lange Funktionsnamen und ist auch leichter zu erweitern. Public/private/static sind doch ganz nette Dinge.

    und noch: http://phpdocu.sourceforge.net/howto.php (hier siehst Du die Liste aller offiziellen phpdoc kommentare)[FONT=Courier, Monospaced]
    [/FONT]
     
    #7 kaiser, 7. November 2010
    Zuletzt bearbeitet: 7. November 2010
  8. sateffen

    sateffen Well-Known Member

    Registriert seit:
    1. November 2010
    Beiträge:
    85
    Zustimmungen:
    0
    im PHP an sich bin ich nicht erst seit gestern^^ PHP mache ich seit gut einem jahr, nur eben wenig praktische anwendung, weil ich nie wirklich was groß gemacht habe. ich hab mal in nem browsergame den entwickler gemacht, aber das ist ja ncihts schweres.

    zu dem klammern weglassen:
    das habe ich am anfang gemacht und so massiv viele fehler in meinen skripten gehabt, weil ich die stück für stück erweitert habe und die klammern vergessen habe, dass ich es gelassen habe. außerdem ist das meiner meinung nach schlechter stil, weil man nicht das zusammenfasst was zusammengehört, und sei es nur eine zeile. übrigens:
    funkioniert auch ;)
    da meine proffessorin im C++ damit aber in jeder übung wieder fehler reinbaut (weil sie selbst zu dämlich ist) ist das einfach nicht guter stil.

    das ganze nach OO aufzubauen ist mir auch schon in den sinn gekommen, so könnt ich den controler noch ein wenig effizienter und einfacher nutzen. auch wäre das mit dem destructor dann besser gelöst. mal schauen ob ich das demnächst noch umbaue.

    den anderen beitrag werd ich mir heute abend nochmal zu gemüte führen, wenn ich mit studienberichte fertig bin.
    toll wäre aber mal ein praxistest =) codetechnisch wieß ich dass es zumindest läuft, zumindest bei mir.

    aber danke für die guten tipps =)
     
  9. kaiser

    kaiser Well-Known Member

    Registriert seit:
    20. November 2008
    Beiträge:
    1.840
    Zustimmungen:
    0
    Oha. So lernt man dazu. Bin ja selbst nur Autoditakt.

    Testen kann ich Dein Plugin leider nicht. Soweit ich das gesehen habe, deaktiviert der "brutal mode" ja alle hooks. Mein Theme-Framework ist aber modular aufgebaut und funktioniert nur über Hooks... Sorry. :/

    Was mir noch aufgefallen ist: Ich denke, die 1-20 select box könnte man doch auch durch ein input feld ersetzen (oder einfach $i=0, foreach $i++ etc.). Eine validate_fn() dazu, ob's ein num-Wert ist und fertig.. Wäre flexibler und "kleiner" und du würdest Dir das array im config-array ersparen.. ;)
     
  10. sateffen

    sateffen Well-Known Member

    Registriert seit:
    1. November 2010
    Beiträge:
    85
    Zustimmungen:
    0
    hmm, werd ich mir mal durch den kopf gehen lassen. könnt man machen

    der brutalmode macht den kompletten blog statisch. er greift ein bevor überhaupt wordpress beginnt. merkt er aber er hat kein cachefile lässt er wordpress ganz normal durchlaufen, so als wäre brutalcache niemals da gewesen, speichert aber am ende dann eine statische kopie des blogs. sofern also kein cachefile vorhanden ist werden alle hooks ganz normal ausgeführt.
    der modus dient denen die wirklich nichts groß variables haben, denn bei diesen ist es wirklich massiv spürbar. hilfreich bei wirklich schwachen servern.
    normalerweise sollte das auch mit deinem framework laufen, da dies entweder ungehindert arbeiten kann, oder (wie alles in wordpress) komplett ignoriert wird.

    oder wo genau besteht das problem? sonst kann ich da vllt eine lösung erarbeiten
     
  11. toscho

    toscho Well-Known Member

    Registriert seit:
    4. August 2006
    Beiträge:
    631
    Zustimmungen:
    0
    Mal ganz knapp ein paar Punkte, die mir beim ersten Reingucken aufgefallen sind:

    • Halte dich an die WordPress Coding Standards, solange du kannst. Besonders die Leerzeichen fehlen mir in deinem Code.
    • Verwende in allen Dateien UTF-8 als Zeichenkodierung. Ohne BOM natürlich.
    • Halte deine Zeilen maximal 80 Zeichen breit. Manche Editoren (Eclipse) können keinen automatischen Zeilenumbruch, da wird das Lesen mühsam.
    • Gehe sparsam mit regulären Ausdrücken um, die sind langsam. Statt …
      Code:
      Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
      … besser so:
      Code:
      Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
      In diesem Falle genügt freilich ein:
      Code:
      Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    • Wie schon erwähnt: Benutze Klassen und Objekte, um deine Werte zu speichern; mülle damit nicht den globalen Namensraum zu. Der ist in WordPress schon arg verseucht.
    • Wenn ich es richtig sehe, versuchst du, ins Pluginverzeichnis zu schreiben, ja? Ganz schlechte Idee. Schreibe immer nur ins Uploadverzeichnis (wp_upload_dir()), denn woanders darfst du nicht auf Schreibrechte hoffen.
    • Gib auch dem Cacheverzeichnis einen unverwechselbaren Namen. /cache/ könnte schon existieren.
    • Benutze keine Hashes, um die Dateien zu identifizieren. SHA1, MD5 und dergleichen sind nicht kollisionsfest. Du kannst ja einfach die Schrägstriche in der Request-URI durch Punkte ersetzen, um einen Dateinamen zu bekommen.
    • Gib Funktionen und Variablen immer englische Namen, das ist einfach eine Konvention. Auch die Kommentare schreib auf Englisch, wenn dir das nicht zu anstrengend ist. Wenn ich Code lese, dann schalte ich intern auf Englisch um. Das geht anderen sicher ähnlich. ;)
    • Wenn du das Cacheverzeichnis leeren willst, dann klettere nicht durch die ganze Dateiliste, sondern wirf einfach das Verzeichnis weg: rmdir() existiert genau dafür.

    Das war es erstmal. Ausprobiert habe ich es noch nicht; mein Testserver erleidet gerade die Entwicklung eines eigenen Plugins.

    Gruß
    Thomas
     
  12. sateffen

    sateffen Well-Known Member

    Registriert seit:
    1. November 2010
    Beiträge:
    85
    Zustimmungen:
    0
    heyho =) schön noch en andere meinung zu lesen.
    leerzeichen setz ich eig genügend, wenn nich dann nur weils der übersicht schaden würde (ja, kann auch schaden).
    UTF-8 nutz ich GARNICHT. ich kenne das problem mit diesem "BOM", darum bleibe ich bei alt herkömmlichen ANSI/ASCII code format. dies ist bei mir voreingestellt und dem bleib ich treu. UTF-8 müsst ich erst einstellen.

    80 zeichen werd ich mal ausmessen, was dem entspricht. mein editor ist ebenfalls ein floading editor (scriptly eben) und geht bis ins endlose nach rechts^^ hab ich persönlich noch nie probleme mit gehabt, weil ich so weiß was zusammengehört. ist das gleiche wie mit den { }

    strpos merk ich mir! ich hab irgendwann vor ewiger zeit mal gelesen dass es eine bessere art statt preg_match gibt, aber ich habs total vergessen. strpos merk ich mir und werd ich nutzen, danke!
    is_admin hab ich eig gesucht (eine ähnliche funktion) aber nich richtig gefunden. werd ich trotz allem mal durchlesen und checken, vielen dank =)

    an der OOart arbeite ich bereits. ich habe das ganze klassisch angefangen, weil jedes plugin klassisch aufgebaut ist, welches ich mir angeschaut habe. erst die erinnerung von kaiser hat mich drauf gebracht dass ich das ganze als klasse sehr einfach umsetzen kann. so kann ich außerdem den code noch übersichtlicher gestallten. den namespace werd ich also bissel säubern von den vielen funktionen =) danke nochmal für den hinweis.

    dass mit dem uploadverzeichnis wusst ich nicht, werd ich aber in der klassenfassung dran denken. danke. hast du aber eigentlich recht. hashes bin ich gewohnt zu nehmen wenn ich dinge einmalig habe. die kollisionswahrscheinlichkeit ist relativ gering. im bereich von 1-255 zeichen sind das bei 255^223 möglichkeiten nur ca 2^69 kollisionen. das ist nicht viel ;)
    aber du hast trotz allem recht: das ist einfacher zu lesen und zu merken. gute idee, vielen dank =)

    englische konvention: ich bin deutscher und mein englisch ist so mies, dass ich vermutlich beschreiben will dass ich ein verzeichnis leere und in englisch schreibe dass ich das 30mal kopiere oder son müll. mein englisch wird nicht sehr verständlich^^ meine namen sind eig grundsätzlich deutsch, außer ich biete sie als API an. die APIs werden grundsätzlich englisch gehalten, da ich nicht weiß wos hingeht, aber interne funktionen die eig nicht nach außen benutzt werden sollen bzw auch variablen und konstanten sind deutsch. ich kann aber mal versuchen, dem stil wegen, dieser konvention nachzugehen, zumindest namenstechnisch. kommentartechnisch wird es hier zu großen problemen kommen, oder ich mach das nochmal mit dem google translator. es hat nen grund warum ich mein abi nicht in englisch gemacht habe ;)

    rmdir() wird nicht funktionieren, da diese funktion vorraussetzt dass das verzeichnis leer ist ;)
    nen trashverzeichnis wäre aber durchaus sinnvoll. gute idee! in die ToDo list aufgenommen.

    mal schauen was ich noch alles einbasteln kann. danke für die tipps =)

    achja: eclipse ist aber keine gute idee. für mich persönlich war es zu unflexibel und unübersichtlich. ich code mit scriptly. schnell, einfach, flexibel. und wine-optimiert^^ (hab eben noch keine passende linux umgebung gefunden).

    wie gesagt: jetzt wird die todolist erstmal aufgeräumt und das ganze bissel leichter gestalltet. sollte ich denn hier auf PHP4 achten oder kann ich das einfach in PHP5 durchziehen? ich hab nur 5 gelernt^^ , aber ich denke wenn man in die zukunft schaut und sich die prozentualen verteilungen der serversoftware zeigt dann sollte ich PHP5 erstreben, ist schließlich auch bald wordpressvorraussetzung.
    ok =) danke! ToDo list erstmal abarbeiten
     
  13. toscho

    toscho Well-Known Member

    Registriert seit:
    4. August 2006
    Beiträge:
    631
    Zustimmungen:
    0
    Zumindest zwei aufeinander treffende Klammern solltest du separieren, damit man leichter sieht, welche zueinander gehören.

    Dann stell es ein. Wenn ich ein WordPress-Plugin lese, dann ist es in der IDE mit dem Core verlinkt, damit ich die internen Funktionen anklicken kann. Der Core aber ist in UTF-8 geschrieben – wie auch alle anderen Plugins.
    Man müßte also nur deinetwegen für diese Dateien manuell jedesmal eine andere Zeichenkodierung einstellen.
    UTF-8 hat noch mehr Vorteile, die ich hier nicht alle aufzählen will.
    Für Plugins ist am wichtigsten: Sie müssen sich ins Elternsystem fügen und dürfen bei einem Include niemals einen Fehler wegen eines ungültigen Bytes auslösen.

    Huch, mein Fehler, sorry. :)

    Eclipse hat viele Vorteile, die auf den ersten Blick schwer zu entdecken sind (geniale Tastenbelegung!).
    Unter Linux rockt außerdem noch Geany (läuft auch auf Win). Hat eine gute Projektverwaltung und ein recht schlüssiges Interface. Verlinkt leider keine Funktionen, soweit ich weiß.

    WordPress selbst wird in absehbarer Zeit (3.2 oder 3.3) nicht mehr mit PHP 4 laufen, und viele Plugins tun das schon jetzt nicht mehr. Vergeude keine Zeit damit. Wirklich ekelhaft sind 5.0.x-Versionen, denn die haben viele Bugs und sind mühsam zu testen. Aber da warte auf Feedback, ehe du im Vorhinein optimierst.
     
  14. kaiser

    kaiser Well-Known Member

    Registriert seit:
    20. November 2008
    Beiträge:
    1.840
    Zustimmungen:
    0
    Achja: Einer meiner Lieblingslinks. "scribu" ist einer der Core Entwickler und hat ein "Plugin-Framework" geschrieben. Meiner Meinung nach eines der "schönsten" Codebeispiele überhaupt. Verwende ich selbst gerne als Referenz: http://scribu.net/wordpress/scb-framework
     
  15. sateffen

    sateffen Well-Known Member

    Registriert seit:
    1. November 2010
    Beiträge:
    85
    Zustimmungen:
    0
    ich werd am wochenende damit anfangen. diese woche ist viel im studium los, das muss erstmal rum. aber ich habe schon ein sehr konkretes bild wie ich das alles gestalte.

    das is_admin() geht schonmal nicht, schließlich greift der brutal-mode so ein, dass WP garnichtmehr aktiviert wird ;) darum kann ich auf die konstanten des wp_upload_dir() auch nicht zugreifen. aber ich habe schon eine sehr einfache und sichere lösung, wie ich das umsetze. aber super dass du diese rechteverteilung aufgegriffen hast! da weiß ich jetzt wie ich fehler umgehe.

    mal schauen, danke =)
     
  16. kaiser

    kaiser Well-Known Member

    Registriert seit:
    20. November 2008
    Beiträge:
    1.840
    Zustimmungen:
    0
    Ad Constante) ABSPATH... ;) Gutes Gelingen!
     
  17. sateffen

    sateffen Well-Known Member

    Registriert seit:
    1. November 2010
    Beiträge:
    85
    Zustimmungen:
    0
    soooooo
    hat zwar ewig gedauert, aber ich habs soweit hingekriegt: das läuft nu alles wunderbar.
    das plugin ist in einer einzigen klasse geschrieben und es funktioniert soweit. ich hab mich um die rechte gekümmert und nu sollte das alles laufen.
    der code ist zwar nicht auskommentiert, aber das mach ich noch wenn ich zeit habe. also da nich meckern.
    ein problem was ich noch habe (daher auskommentiert) ist das "register_activation_hook". irgendwie funktioniert der nicht. immer wenn ich den nichtmehr auskommentiere meckert er mit einem fehler. der fehler wirkt sich nicht auf das system aus, aber er stört. warum er auftaucht weiß ich aber noch nicht, vllt kann ja jemand rüber guggen.
    mit xdebug durchgemessen habe ichs auch noch nicht, aber es funktioniert bei mir, daher denk ich dass das durchmessen auch erfolgreich sein sollte.
    ich freu mich schon auf feedback.
    hier der link: http://sateffen.bplaced.net/brutal-cache

    edit:
    im durchmessen mit xdebug sind fatale fehler aufgefallen, diese wurden alle beseitigt. nun läuft es stabil. außerdem ist der brutal mode jetzt auf windows, linux und unix servern aktivierbar.

    FÜR ENTWICKLER:
    so, ich hab nun 2 klassen formen fertig gemacht. mir wäre die 1.3 lieber als die 1.2.1, aber es funktioniert nicht... vllt jemand nen rat?
    Version 1.3 : http://sateffen.bplaced.net/brutal-cache/attachment/brutal_cache_beta1-3
    Hier sind die cachefiles leer, obwohl ich nicht weiß warum. und der brutal mode macht schwierigkeiten

    version 1.2.1: http://sateffen.bplaced.net/brutal-cache/attachment/brutal_cache_beta1-2-1
    funktioniert soweit, aber ich weiß nicht ob man das so auf die leute loslassen kann 0.0

    ich würd mich freun wenn ihr da mal rüberschaut und mir was dazu sagt... ich dreh voll am rad
     
    #17 sateffen, 13. November 2010
    Zuletzt bearbeitet: 14. November 2010
  18. kaiser

    kaiser Well-Known Member

    Registriert seit:
    20. November 2008
    Beiträge:
    1.840
    Zustimmungen:
    0
    Hey,

    wie schon gesagt: testen kann ich's leider nicht. Schaut dafür aber super sauber aus. Ich denk mal ich lern mehr, wenn ich mir Dein Plugin anschau, als ich Dir helfen kann ;)

    Edit: Kann's sein, dass Du bei der 3.0 Version 2mal dieselbe class drinnen hast? Check mal, ob WP das file auch einliest mit

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    ;)

    Weiters hast Du save_config_to_file eine ob_get_clean function drinnen. Macht das da Sinn (sorry, schau mir nur den Code an).

    Ich leg Admin-Seiten immer in separaten Dateien an und lade die zuerst und hol mir mit get_option die Werte in eine Variable. Hatte da schon mal Probleme, dass das zu spät geladen wurde und nicht verfügbar war (hat ordentlich Nerven gekostet). Vielleicht hat's da auch was...
     
  19. kaiser

    kaiser Well-Known Member

    Registriert seit:
    20. November 2008
    Beiträge:
    1.840
    Zustimmungen:
    0
    Übrigens, falls Du einmal Zeit hast: http://forum.wordpress-deutschland.org/plugin-vorstellung/78046-future-core-login-plugin-beta-neu-themeable-login.html

    Würde mich freuen wenn Du mir bei einer "Kleinigkeit" helfen könntest: Ich versuche die beiden alten Requests an den colors-fresh.css und den login.css aus dem Core los zu werden. Derzeit sind sie nur leer. Da müsste ich wp_admin() und wp_admin_css() aus general-template.php im Core irgendwie manipulieren. Hab aber keine Ahnung, wie das gehen könnte... Ich komm einfach nicht dahinter. Dankeschön im vorhinein :D
     
  20. sateffen

    sateffen Well-Known Member

    Registriert seit:
    1. November 2010
    Beiträge:
    85
    Zustimmungen:
    0
    das ob ist das schon richtig. funktionieren tut der part auf jedenfall.
    wenn man sich bissel mit dem buffering auseinander setzt ist das mega hilfreich =)
    ich gestehe, keine schöne lösung, aber eine schnelle und einfache^^ normalerweise sollte man das mit einer verkettung durch eine foreach machen, aber das ist nicht das problem. mein problem ist, dass alles mit dem normalen cachen funktinoiert aber der brutal mode nichtmehr, da kommen nur files raus die leer sind.
    des zweite classfile ist einfach nur die class wie ich sie ganz am anfang geschrieben habe.
    ich les mich weiter durch. was es aber noch schwerer macht, ist dass es lokal wunderbarst funktioniert, aber online nirgends =(
     
  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