Albert Wilhelm * Der Betten-Bär * Gladbeck * Heilpraktiker

global denken
regional handeln

Einen Teil der Einnahmen spenden wir an soziale Projekte:

Togo - neuer Horizont e.V.
SOS Kinderdörfer
NatureFund

Zurück-Button Neu

intelligenter Button, der nur auf das "richtige" Zurück leitet, d.h. er wird nur angezeigt, wenn der Seitenbesucher zuvor eine Seite desselben Internetauftritts besucht hat. Coolkieabhängig und datenschutzkonform.

Diese Lösung (nur für CMSimple_XH) benötigt die Plugins
Privacy_XH (c) cmb und morepagedata_XH (c) syasti

(Hier kann ich kein Demo zeigen, weil die Plugins (noch) nicht installiert sind, aber z.B. >> hier gibts genug Demo -Datenschutz zustimmen nicht vergessen)


In template.htm schreibe ich direkt oberhalb von "<?=content()?>" (reinkopieren) :

<!-- upperback-Button nur sichtbar wenn Besucher auf irgendeiner Seite gewesen -->
<?php if (isset($upperbackbutton) and isset($_COOKIE['privacy_agreed'])) { ?>
<p style="text-align: left;"><img style="float: right;" title="zurück zur vorigen Seite" onclick="history.back()" onmouseover="this.src='./userfiles/images/zurueck-hover.png';" onmouseout="this.src='./userfiles/images/zurueck-button.png';" src="./userfiles/images/zurueck-button.png" alt="zurueck" width="114" height="37" /></p>
<?php } ?>

(Werte für "width" und "height" je nach Größe des verwendeten png)

(Anmerkung: das isset($upperbackbutton)bedeutet, dass er auf der betreffenden Seite unter dem Reiter "Mehr" in morepagedata angekreuzt ist, siehe unten...)

Soll der Zurück-Button wahlweise zusätzlich am unteren Rand des Contents erscheinen, direkt unterhalb von "<?=content()?>" reinkopieren:

<!-- lowerback-Button nur sichtbar wenn Besucher auf irgendeiner Seite gewesen -->
<?php if (isset($lowerbackbutton) and isset($_COOKIE['privacy_agreed'])) { ?>
<p style="text-align: left;"><img style="float: right;" title="zurück zur vorigen Seite" onclick="history.back()" onmouseover="this.src='./userfiles/images/zurueck-hover.png';" onmouseout="this.src='./userfiles/images/zurueck-button.png';" src="./userfiles/images/zurueck-button.png" alt="zurueck" width="114" height="37" /></p>
<?php } ?>


Der Cookie "privacy_agreed" wird von dem Plugin Privacy_XH gesetzt, nachdem der Seitenbenutzer Cookies zugestimmt hat.


In die "Einstellungen" von morepagedata_XH kommt:
eine Zeile
Anzeige:            oben zurück → cookie-abhängig
Variablenname:  $upperbackbutton
Typ:                  checkbox
 
wenn gewünscht eine weitere Zeile
Anzeige:            unten zurück → cookie-abhängig
Variablenname:  $lowerbackbutton
Typ:                  checkbox
 
Der Zurück-Button (oder auch beide Zurück-Buttons) kann nun, wenn er auf einer Seite erscheinen soll, beim Bearbeiten der Seite unter dem Reiter "Mehr" angekreuzt werden.

Außerdem braucht man die zwei button-Bilder zurueck-hover.png und zurueck-button.png im CMSimple-Verzeichnis userfiles/images. Selbst was hübsches mit einem Bildbearbeitungs-Programm erstellen oder hier downloaden:
oder alternativ ohne Bilder im Browserstyle mit <form> wie unter Zurück-Button (alt) beschrieben


Fertig - have fun smilecool
 


Ich benutze einen weiteren Zurück-Button für die Detailseiten von Shop-Artikeln (XH_Shop).

Diese Detailseiten werden ja u.a. von Suchmaschinen gecrawlt und sollen außerdem als "Landingpage" für Anzeigen dienen.

Auf Detailseiten soll der Zurück-Button exakt zu dem Shop-Artikel zurückführen, auf dessen "Details" man vorher geklickt hat.

Wenn der Besucher aber über einen Link von einer anderen Seite kommt (und noch gar nicht im Shop war), soll er natürlich kein "Zurück" sehen, sondern stattdessen einen Link, der ihn zur allgemeinen Shop-Übersicht leitet.

Das geht so:

In templates/template.htm schreibe ich direkt unterhalb von "<?=content()?>" :

<!-- zurück-Button nur sichtbar wenn Besucher vorher in Shop-catalog gewesen -->
<?php if (isset($backbutton) and isset($_COOKIE['shop_check'])) { ?>
<p style="text-align: left;"><img style="float: right;" title="zurück zur vorigen Seite" onclick="history.back()" onmouseover="this.src='./userfiles/images/zurueck-hover.png';" onmouseout="this.src='./userfiles/images/zurueck-button.png';" src="./userfiles/images/zurueck-button.png" alt="zurueck" width="114" height="37" /></p>
<?php }
else if(isset($backbutton)){ ?>
<p>
<div id="backbutton" >
<a href="./?Shop" >&nbsp;&rarr;&nbsp; zur Shop - Listen-Ansicht &nbsp;&nbsp;</a>
</div>
</p>
<?php } ?>

Der Cookie "shop_check" wird gesetzt beim Betreten des Shops. Hierfür kommt in die Template-Datei des XH_Shops   plugins/xhshop/templates/frontend/catalog.tpl  ganz oben in die erste Zeile:

<?php if (isset($_COOKIE['privacy_agreed'])) {
setcookie('shop_check', 'check_if_accept_cookie',time()+60*20);
} ?>


Den backbutton kann ich stylen in templates/stylesheet.css.
Einfach reinkopieren:
 
#backbutton a:link, #backbutton a:visited {
float: right;
background-color: #3d5c5c;
color: #f2f2f2;
font-weight: bold;
font-size: 100%;
text-decoration: none;
background-position: top;
background-repeat: repeat;
-moz-border-radius: 5px;
}
#backbutton a:hover {
cursor: pointer;
background-color: #1f2e2e;
background-image: none;
}
#backbutton a:active {
border-style: inset;
cursor: wait;
}
 


morepagedata und png´s dasselbe wie oben 



Fertig - have fun smilecool