Page 1 of 1

404.php

Posted: Tue Aug 26, 2008 1:30 pm
by moenk
Ich stell mir so vor, einen eigenen 404.php für das s9y zu haben. Das Ding will ich dann verwenden statt der index.php, wie sie nun noch ausgegeben wird. Die soll einen sauberen 404 zurückgeben und den Code wie Google ihn in den Webmaster-Tools vorschlägt verwenden, damit man schnell die gewünschte Seite findet.
Gibts irgendwie so eine minimale Variante einer php-Datei, auf der man sowas aufbauen kann? Also die soll den Header und Footer und sowas wie immer ausgeben, dazwischen codier ich dann das was ich gern da noch so hätte.

Re: 404.php

Posted: Tue Aug 26, 2008 2:08 pm
by garvinhicking
Hi!

Dafür kannst Du die $view smarty variable abfragen, wenn die auf "404" steht kannst du dann eigenen individuellen content ausgeben.

Eine eigenen PHP-Datei ist nicht möglich, aber auch nicht nötig, da du alles über smarty machen kannst und die 404 Header ja von s9y eh ausgegeben werden.

Grüße,
Garvin

Posted: Tue Aug 26, 2008 2:09 pm
by moenk
Mal für doofe wie mich ;-) In meinem Template kann ich einen Block für den 404-Fall vorsehen?
Da wäre ein Beispiel hilfreich wie das aussehen könnte. Oder wenns schon ein Template gibt wo das gemacht wurde reicht der Name, dann guck ich da rein.

Posted: Tue Aug 26, 2008 2:13 pm
by garvinhicking
Hi!

Klar. Am einfachsten geht das in der index.tpl, da in der nähe wo die $CONTENT Variable ausgegeben wird:

Code: Select all

{if $view == '404'}
Hier gibt's nichts zu sehen, gehen Sie weiter
{/if}
Dann siehst du statt blogcontent nur diese Zeile. Die IF-Abfrage kannst du auch überall anders einbauen, wenn du z.B. keine Seitenleisten ausgeben willst.

Templates mit so was gibts meines Wissens derzeit nicht von uns, da wir den Standpunkt vertreten dass 404-Seiten auch trotzdem das Standard-Blog zeigen sollten um die Benutzer auf seiner Seite zu halten.

Grüße,
Garvin

Posted: Tue Aug 26, 2008 2:31 pm
by yellowled
moenk wrote:Da wäre ein Beispiel hilfreich wie das aussehen könnte. Oder wenns schon ein Template gibt wo das gemacht wurde reicht der Name, dann guck ich da rein.
Mimbo oder Hemingway nutzen sowas, siehe jeweils in der index.tpl.

YL

Posted: Tue Aug 26, 2008 6:03 pm
by moenk
Das ja easy :-) - dankefein auf jeden Fall schon mal!
Nun sind die Wünsche der lieben Tante G. mir ja sofort Befehl, da soll dieser Code rein:

Code: Select all

<style type="text/css">
  #goog-wm { }
  #goog-wm h3.closest-match { }
  #goog-wm h3.closest-match a { }
  #goog-wm h3.other-things { }
  #goog-wm ul li { }
  #goog-wm li.search-goog { display: block; }
</style>
<script type="text/javascript">
  var GOOG_FIXURL_LANG = 'de';
  var GOOG_FIXURL_SITE = 'http://www.gis1.de/';
</script>
<script type="text/javascript" 
    src="http://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js"></script>
Damit haben die bunten Schmarties aber ihre Bauchschmerzen - und nu?
Schick wäre denn ja auch noch wenn das "de" und die URL in Variablen verpackt würden, gibts die auch?

Posted: Tue Aug 26, 2008 6:56 pm
by garvinhicking
Hi!

Siehe FAQ aufwww.s9y.org - { muss durch {ldelim} und } durch {rdelim} ersetzt werden.


de: {$lang}
url: {$serendipityBaseURL}

Grüße,
Garvin

Posted: Wed Aug 27, 2008 12:11 am
by moenk
Danke nochmal - hier nun der neue Content-Block im Zusammenhang:

Code: Select all

{if $view == '404'}
<td valign="top">
<style type="text/css">
  #goog-wm {ldelim} {rdelim} 
  #goog-wm h3.closest-match {ldelim} {rdelim} 
  #goog-wm h3.closest-match a {ldelim} {rdelim} 
  #goog-wm h3.other-things {ldelim} {rdelim} 
  #goog-wm ul li {ldelim} {rdelim} 
  #goog-wm li.search-goog {ldelim} display: block; {rdelim} 
</style>
<script type="text/javascript">
  var GOOG_FIXURL_LANG = '{$lang}';
  var GOOG_FIXURL_SITE = '{$serendipityBaseURL}';
</script>
<script type="text/javascript"
    src="http://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js"></script>
</td>
{else}
<td id="content" valign="top">{$CONTENT}</td>
{/if} 
Sieht zwar noch nicht so aus wie es soll, also das Muster von Google sieht da anders aus, aber das findet sich auch noch. Guck mir den Code noch mal an und vergleich den ob da noch was fehlt.

Posted: Sat Aug 30, 2008 11:23 am
by u1amo01
Sowas habe ich doch schon immer gesucht. Super!

Vielen Dank!

Posted: Thu Sep 04, 2008 8:34 pm
by Hallenser
Ein freundliches Hallo in die Runde: Ich bin der Neue! :-)

ich habe die Lösung bei mir ausprobiert, allerdings funktioniert es bei mir nicht. Egal welchen Beitrag auf meiner Startseite ich öffnen will, es erscheint nach Einfügen des Codes in die index.tpl immer die 404-Seite.

Ich vermute, das es an dem Permalink-Plugin liegt, was ich für meine URLs verwende. Ist das möglich und was kann ich tun?

Gruß,
Carsten

Posted: Thu Sep 04, 2008 10:43 pm
by garvinhicking
Hi!
Hallenser wrote:Ein freundliches Hallo in die Runde: Ich bin der Neue! :-)
Willkommen im Club :)
ich habe die Lösung bei mir ausprobiert, allerdings funktioniert es bei mir nicht. Egal welchen Beitrag auf meiner Startseite ich öffnen will, es erscheint nach Einfügen des Codes in die index.tpl immer die 404-Seite.
Was genau hast Du probiert, wie ist deine URL?

Hast du dir mal {$view} einfach irgendwo in deiner content.tpl ausgeben lassen um zu prüfen wie diese Variable steht, wenn du deine "ungültige" URL aufrufen willst?

Grüße,
Garvin

Posted: Thu Sep 04, 2008 11:28 pm
by Hallenser
Hier ein Beispiel meiner URLs: http://www.webmaster-support.net/virtual-pc.html

zZ. habe ich die Funktion natürlich disabled aber oben links in der Ecke, kann man die Ausgabe von {$view} sehen: der Wert ist bei den Beiträgen "404", bei der Startseite aber "start". Müsste hier nicht ein Code 200 ausgeben, wenn alles in Ordnung ist?
Wenn ich die HTTP-Header mit einem extern Programm auslese, werden sie übrigens immer korrekt angegeben. Eine nicht existierende Seite mit 404 und wenn alles OK ist 200.

Posted: Fri Sep 05, 2008 10:40 am
by garvinhicking
Hi!

Das ist aber strange, ich kann das nicht ganz verstehen. Könntest du mal deine index.php editieren und überall mal nach "404" suchen, und jedesmal wenn "404" der Variable $serendipity['view'] zugewiesen wird daraus ein "404a", "404b" etc. machen? So kann man rausfinden, welches der 404 genau dafür zuständig ist. Eigentlich setzt das custom permalinks plugin nämlich den View auf 200!

Ich gehe davon aus, dass du die aktuellste version vom custom permalinks plugin nutzt?

Viele Grüße,
Garvin

Posted: Sat Sep 06, 2008 11:10 am
by Hallenser
ich habe die index.php editiert und es scheint so, dass der letzte 404 Eintrag (404d) dafür verantwortlich ist. Ich habe mal die index.php kopiert. Falls Du möchtest, kannst Du sie hier einsehen: http://www.webmaster-support.net/index.txt

Es handelt sich um das Bulletproof-Template v1.3, das Permalink-Plugin ist die Version 1.12.

Posted: Sat Sep 06, 2008 6:12 pm
by Hallenser
Da ich festgestellt habe das, dass Permalink Plugin keine Auswirkungen auf die Trackbacks hat, die auf anderen Seiten gesetzt werden und auch in den Archiven die normale Linkstruktur verwendet wird, habe ich es kurzerhand deinstalliert. Jetzt funktionieren auch die Fehlerseiten so wie sie sollen!

Gruß,
Carsten