Beiträge von Arno Simon

    Mal eine kleine Gegenfrage... Wo liegt Deine index.php? Innerhalb oder ausserhalb des WP-Blogs? Ich mein... dann könnte man sich einige Arbeit sparen, wenn die Datei in die BLog-Struktur eingeflochten wäre...

    Die Frage anders aufgezäumt: Wie ist die Struktur Deiner WebSite derzeit umrissen?

    vG

    Arno

    Hmmm... also ich hatte aktuell "/%post_id%/%postname%/" auf dem Localhost eingestellt und stelle jetzt nochmal "/%year%/%monthnum%/%day%/%postname%/" und "/archives/%post_id%" ein - die beiden Beispiele aus der Permalink-Konfiguration. Mit beiden Beispielen und meiner ursprünglichen Einstellung haben weder mein StartPage-Plugin noch der obige Mod der Seitendarstellung in irgendeiner Form ein Problem. Bei mir kommt keine Fehlermeldung und auch kein ungewünschter Effekt hoch.

    vG

    Arno

    PS und welchen Effekt erzielen wir durch das Umsetzen des Hacks?

    Der Hack greift an einer früheren Stelle ein, nämlich unmittelbar nach Aufbau der Verbindung zur Datenbank, wenn noch keinerlei Links etc. generiert wurden. Dadurch stehen die neuen Daten jetzt früh genug in der DB um Einfluß auf die soeben gestartete Seite zu haben.

    den effekt hatte ich auch. habe gerade mal nachgesehen, ob es einen besseren Ort für den hack als die wp-blog-header.php gibt und den gibt es.

    nimm ihn dort heraus und setze ihn in die wp-settings.php. Ab Zeile 70 (WP1.5.2) findest Du dort folgendes Coding:

    PHP
    $wpdb->postmeta         = $table_prefix . 'postmeta';
    
    
    if ( defined('CUSTOM_USER_TABLE') )

    Dazwischen setzt Du jetzt das require_once:

    PHP
    $wpdb->postmeta         = $table_prefix . 'postmeta';
    
    
    require_once( dirname(__FILE__) . '/as-switch.php');
    
    
    if ( defined('CUSTOM_USER_TABLE') )

    Du darfst aber nicht erwarten, vom selben Rechner aus via LocalHost _und_ via Internet auf Deine Seite zugreifen zu können, das geht nicht. Wenn Du am Localhost-Rechner bist, mußt Du via Localhost arbeiten und von anderen via Internet - auch wenn Du Dich in einem lokalen Netzwerk befindest! Andernfalls müßte die IP-Weiche noch so umgebaut werden, das Dein lokales Netzwerk Berücksichtigung findet und das ist nun doch für den Moment mit Kanonen auf Spatzen geschossen...

    vG

    Arno

    Hi Babbix,

    sorry, dein "no-ip.info"-Dienst arbeitet etwas anders als "heimserver.de" (wo ich bin) und routet die Inhalte geradewegs durch, was auch besser so ist ;) Bei heimserver.de werden die Inhalte zunächst einmal abgefangen und dann weitergegeben, wodurch sich weitere Arbeiten, als das was ich gleich beschreibe, ergeben.

    Du hast Deine Seite auf dem Localhost aufgesetzt, wodurch unter anderem in der Tabelle wp-options die beiden Einträge "siteurl" und "home" auf localhost eingetragen wurden.

    Beim Aufruf aus dem Internet wird Dir zwar jetzt Dein Content, welcher aus den $_GET-IDs ermittelt wird, korrekt ausgegeben, alle anderen URL-Angaben werden jedoch aus der Datenbank generiert - auch die Urls für das Style-Sheet und für die auszugebenden Grafiken.

    Um jetzt sowohl auf dem Localhost als auch aus dem Internet heraus arbeiten zu können, muß WordPress registrieren, von wo es denn nun aufgerufen wird, um die beiden oben genannten Einträge in der wp-options so einstellen zu können, das es einerseits vom Localhost und andererseits aus dem Internet heraus funktioniert.

    Dazu ist 1. ein kleiner Hack in der /blog/wp-blog-header.php notwendig. Füge dafür ziemlich am Anfang der Datei zwischen

    PHP
    $wp_did_header = true;
     
    $query_vars = array();

    folgendes

    PHP
    require_once( dirname(__FILE__) . '/as-switch.php');

    ein, so das diese Stelle nun so

    PHP
    $wp_did_header = true;
    require_once( dirname(__FILE__) . '/as-switch.php');
    $query_vars = array();

    aussieht.

    Der 2. Schritt:
    In der WordPress-Root (Verzeichnis /blog/ setze ich jetzt hier mal vorraus, anderes mußt Du anpassen), in welcher auch die wp-blog-header.php liegt, legst Du jetzt eine Datei
    as-switch.php an und fügst folgenden Quelltext ein:

    Dieses Coding prüft nun, ob Deine WebSite aus dem Internet oder Lokal von Deinem Rechner aufgerufen wird. Je nach dem von wo aus Deine Seite aufgerufen wird, werden nun die beiden oben genannten Einträge in Deiner Datenbank zwischen den Internet und dem Localhost hin und her geschaltet, so das auch die Urls für Grafiken und das Stylesheet dementsprechend angepasst werden.

    Du siehst, es ist letztlich ein IP-Problem und kein Style-Problem ;)

    vG

    Arno

    [edit]ein zuviel gepastetes require_once entfernt[/edit]

    Das Problem ist, das über diese "Heimserver"-Dienste (wie no-ip.de; heimserver.de etc.pp.) in der Regel Deine Seite innerhalb eines Frames nach außen geladen wird. Das selbe Problem habe ich mit meinem eigenen Heimserver auch. Habe mir damit beholfen in den header.php eine ip-weiche einzubauen.

    PHP
    if($_SERVER('SERVER_ADDR') == $_SERVER['REMOTE_ADDR']) 
    {
    /* Hier folgt das normale html-link-Tag im Header um die CSS-Datei anzugeben. Man arbeitet lokal */ 
    } else {
    echo '<style=.....'; // Hier kommt der normale Tag zur Einleitung der ins HTML integrierten Style-Angaben hin
    // jetzt mit geeigneten PHP-Befehlen die CSS-Datei auslesen und per Echo hier ausgeben.
    echo '</style>'; // Das ganze muß innerhalb des Headers geschehen }



    Detailierter kann ich jetzt nicht darauf eingehen, weil ich auf der Arbeit sitze.

    vG

    Arno

    Hallo Johannes,

    ich habe mir gedacht das es Sinnvoll währe die Template_Tags (haben ja einige andere schon versprochen, aber nicht gemacht :( ) zu übersetzen und mich dann mal daran gemacht die "Category Tags" (oben rechts) zu übersetzen. Die ersten beiden Punkte sind schon durch.

    Sofern von Seiten des Kern-Doku-Teams nicht eine andere Vorgehensweise bevorzugt wird, habe ich mir erlaub den Inhalt erstmal aus dem Codex zu klauen und dann zu übersetzen. Sofern mir "Ergänzenswertes" auffallen würde, würde ich das aus meiner Sicht dann auch entsprechend machen.

    vG

    Arno