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

wp_query wird nicht bei Hauptdomain aufgerufen ?

Dieses Thema im Forum "Plugin-Vorstellung" wurde erstellt von cywhale, 20. Juli 2007.

  1. cywhale

    cywhale Well-Known Member

    Registriert seit:
    23. Januar 2007
    Beiträge:
    205
    Zustimmungen:
    0
    Hallo.
    Derzeit arbeite ich wieder an meinem Statistikscript weiter und musste heute feststellen dass Aufrufe der Haupt-URL
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    NICHT vom Script erkannt werden. Sobald ich einen Parameter irgendeiner Art an die URL anhänge funktioniert das logging, z.B. bei
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    .

    Habe zum Testen ein Miniplugin geschrieben dass sich wie das Statistikscript an parse_query als Hook hängt und die Aufrufe in eine Datei schreibt. Ausgabe:
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Zwischen den aufgerufenen pages 1-3 wurde jeweils die Hauptdomain aufgerufen - keine Daten. Zuletzt (4) dann Hauptdomain/Test => Daten geschrieben.

    Frage jetzt - Weiss jemand warum parse_query() nur bei Parametern aufgerufen wird bzw. welche Funktion kann noch VOR parse_query() als Hook verwendet werden um ALLE Aufrufe protokollieren zu können ?

    Vielen Dank für jede Hilfe

    Cy



    Das Debug-Plugin:
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
    #1 cywhale, 20. Juli 2007
    Zuletzt bearbeitet: 20. Juli 2007
  2. alex.rabe

    alex.rabe Well-Known Member

    Registriert seit:
    18. November 2006
    Beiträge:
    243
    Zustimmungen:
    0
    Nun parse_query() wird nach meinem Wissen für Redirect Funktionen genutzt, das aufrufen der Hauptdomaine enthält noch keine Parameter wie page, cat oder so (zb. /?page_id=9), also gibt es keine Parameter die "durchsucht" werden
     
  3. alex.rabe

    alex.rabe Well-Known Member

    Registriert seit:
    18. November 2006
    Beiträge:
    243
    Zustimmungen:
    0
    Ich denke mit wp_header odr wp_footer solltest du den besten Erfolg haben.

    z.b. Wordpress Stat klink sich einfach in den Footer ein...

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

    cywhale Well-Known Member

    Registriert seit:
    23. Januar 2007
    Beiträge:
    205
    Zustimmungen:
    0
    Ja, hatte mit wp_footer gearbeitet. Dann wiederum hatte ich Probleme mit den Feeds. Allerdings könnte ich ja versuchen den wp_footer beispielsweise als Fallbacklösung zu verwenden falls parse_query nicht möglich ist ?
     
  5. cywhale

    cywhale Well-Known Member

    Registriert seit:
    23. Januar 2007
    Beiträge:
    205
    Zustimmungen:
    0
    Habe als Hook nun 'template_redirect' direkt am Anfang des Dokumentenparsings gewählt (wp-includes/template-loader.php), scheint gut zu funktionieren. Ergänzen musste ich nun mangels parse_query Pingback:

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Mal sehen ob es funktioniert oder ich wieder einen Denkfehler drin habe...

    Grüsse

    Edit: Trackback add_action wieder gestrichen, wird auch vom template_redirect abgedeckt.
     
    #5 cywhale, 20. Juli 2007
    Zuletzt bearbeitet: 20. Juli 2007
  6. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Ich weiß zwar nicht genau, was bei Dir rauskommen soll, aber ich hänge mich ganz ans Ende mit
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    rein.

    Gruß
    Ingo
     
  7. cywhale

    cywhale Well-Known Member

    Registriert seit:
    23. Januar 2007
    Beiträge:
    205
    Zustimmungen:
    0
    Dabei rauskommen soll eine fertige Version von diesem hier: Klick

    Shutdown ist eine interessante Idee - kann ich irgendwo nachvollziehen ob Shutdown grundsätzlich bei jedem Aufruf (Seite, Feed, Trackback, Pingback,...) nutzbar ist ? Dann könnte ich immerhin einen Aufruf von do_action einsparen.


    Grüsse und Danke
     
  8. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Ich denke schon.
    Die index.php wird ja immer geladen, ohne die geht ja nichts mit der Datenbank. Diese lädt ihrerseits die wp-settings.php bei der fast am Ende mit
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    eine PHP-Shutdown-Funktion registriert wird. Und da wird dann do_action('shutdown') aufgerufen.
    Zumindest landet bei mir alles im Logfile, ob nun Seite, feed oder pings (xmlrpc.php), allerdings auch die meisten Sachen aus dem Adminbereich, aber das könnte man ja rausfiltern.

    Gruß
    Ingo
     
  9. cywhale

    cywhale Well-Known Member

    Registriert seit:
    23. Januar 2007
    Beiträge:
    205
    Zustimmungen:
    0
    Hrm... die Idee war gut. Beim Versuch zeigte sich aber dass entweder 'shutdown' erst nach 'wp_footer' aufgerufen wird oder ich ein grösseres Pfadproblem durch 'shutdown' bekommen habe.

    Problem: Im Moment hänge ich das Basislogging an 'template_redirect', später bei der Anzeige der Seite wird noch an 'wp_footer' die Ausgabe eines kurzen (optionalen) Javascriptes zwecks Bildschirmabmessungen, Farbtiefe und Browserfensterabmessungen gehängt.

    Um die JS-Daten jetzt einem Besuch zuzuordnen wird eine Pseudo-ID verwendet, die zuerst im Basislogging-Teil generiert und gespeichert wird. Nachdem jetzt bei 'shutdown' als Hook anscheinend zuerst das wp_footer-Javascript generiert wird und dann erst per 'shutdown' das Basislogging können die JS-Daten keinem Besucher mehr zugeordnet werden.


    Werde mir 'shutdown aber mal für später aufheben - prinzipiell könnte ich die Pseudo-ID im wp_footer-Teil generieren und speichern lassen, dann das frühere Basislogging durchführen. Mal sehen, aber im Moment möchte ich lieber den Code an sich aufräumen und die Alpha fertigmachen - 'template_redirect' scheint mein Hauptproblem vorerst gelöst zu haben.

    Danke nochmal an alle.
     
  10. Putzlowitsch

    Putzlowitsch Well-Known Member

    Registriert seit:
    21. Oktober 2006
    Beiträge:
    5.955
    Zustimmungen:
    47
    Naja, für meine Zwecke einer simplen Logdatei ist das mit dem Shutdown optimal, ich greife da nur auf die sowieso vorhandenen $_SERVER oder $_GET/$_POST-Variablen zu. Und klar, das heißt ja shutdown, weil es immer ganz am Ende ausgeführt wird, wenn alles was sonst so passiert, gegessen ist. Also quasi kurz bevor PHP fertig ist und die Seite ausgeliefert wird.

    Man kann es mit der Statistik auch übertreiben. Bildschirmabmessungen, Farbtiefe und sowas, tstststs :)

    Gruß
    Ingo
     
  11. cywhale

    cywhale Well-Known Member

    Registriert seit:
    23. Januar 2007
    Beiträge:
    205
    Zustimmungen:
    0
    Jup,jup, übertreiben kann man es immer. Bildschirm wäre mir im Prinzip auch egal, Farbtiefe auch, aber wenn man häufiger Webseiten baut ist z.B. die durchschnittliche Browserfenstergrösse schon interessant. Könnte man aber auch aus Online-Datenbanken bekommen bzw. nachschlagen. Genauso wie die Nutzungsverteilung der Browser. Usw, usw...

    Allerdings soll das Script WENN ich es jemals fertigstelle doch einen einigermassen angemessenen Umfang haben, schliesslich geht es nicht um mich alleine sondern auch um potentielle andere Nutzer, die dann vielleicht Interesse an solchen Angaben haben. Und die Standartdaten wie oben genannt gehören seit Jahren schon zur Grundausstattung der meisten Statistiksysteme :)

    Und nicht zuletzt wird sich der Javascriptteil auch abschalten lassen - wer nicht will, braucht das auch nicht zu nutzen.

    Grüsse und Danke nochmal - wie gesagt, 'shutdown' bleibt mir im Gedächtnis bzw. wird auf die ToDo-Liste kommen - mal sehen.
     
  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