Jump to content
xt:Commerce Community Forum

Links ausblenden?


Recommended Posts

Hallo,

habe das gesamte Forum durchsucht und finde keinen Beitrag der zu meinem Problem passt.

Ich möchte auf der Seite "login.php" alle Links deaktivieren. Dadurch soll sichergestellt sein, dass ein weitersurfen im Shop erst nach Anmeldung möglich ist.

Es sollen also nur die reinen Anmeldeseiten frei erreichbar sein.

Für Lösungsvorschläge bin ich Dankbar.

ciao

Link to comment
Share on other sites

Da wirst Du wohl ein bischen mehr tun müssen. Es reicht ja nicht, die Links zu deaktivieren / verstecken. Wer die direkten Adressen kennt, erreicht die Seiten ja auch so.

Du müsstest also (vielleicht in die application_top.php) eine Abfrage reinbauen, die bei jeder Seite solange auf den Login verlinkt, wie ein User nicht angemeldet ist.

Ben

Link to comment
Share on other sites

Noch einmal meine Frage.....

Wie blende ich die Links auf der login.php aus, (respektive wie kann ich mittels sessionabfrage die anderen Shopseiten vor dem Zugriff nichtangemeldeter User schützen), damit ein User sich zwingend erst registrieren muss?

:confused: Habe es schon mehrfach versucht, klappt aber nicht!

Die application_top.php wird ja auch schon mit der login.php aufgerufen, von daher gibt es schon Probleme.

Vielleicht kann mir doch noch jemand helfen...

Danke und Gruss

Link to comment
Share on other sites

Hallo!

Suche mal in der in der includes/application_top.php nach folgendem Codeabschnitt:

// econda tracking
if (TRACKING_ECONDA_ACTIVE=='true') {
require(DIR_WS_INCLUDES . 'econda/class.econda304SP2.php');
$econda = new econda();
}[/php]

und füge darunter folgenden Code ein:

[php]if (substr(basename($PHP_SELF), 0,5) != 'login') {
if (!isset ($_SESSION['customer_id'])) {
xtc_redirect(xtc_href_link(FILENAME_LOGIN, '', 'SSL'));
}
}

Damit wird der Kunde so lange auf die Login-Seite umgeleitet, bis er sich eingeloggt hat. Er kann so zwar alle Links sehen, aber das Anklicken bringt ihm nichts. Sollen die Boxen ebenfalls alle ausgeblendet werden, so muss die templates/DEIN_TEMPLATE/source/boxes.php entsprechend angepasst werden. :D

MfG Hetfield :cool:

Link to comment
Share on other sites

Danke, ich versuche das sofort einmal!

Mein letzter Versuch war die Einbindung auf den Hauptseiten (index; shop_content usw.:

// ist der Kunde nicht eingeloggt, zurück zur Login Seite

if (!isset ($_SESSION['customer_id']))

{

if ($_SESSION['customer_id'] == '')

xtc_redirect(xtc_href_link(FILENAME_CREATE_ACCOUNT, '', 'SSL'));

} //Ende

Das funktioniert auch, aber komischerweise nicht in der Index.php und beim Impressum.

Ich verwende das Template xtc_004.SP2.1

Melde mich gleich nochmal, bis dahin Danke...

Link to comment
Share on other sites

@Hetfield

Habe jetzt meinen Code mal ausgeblendet und Deinen in die application_top eingebunden.

Klappt, von daher erst einmal Vielen Dankeschön....

Problem ist nur, dass gleiche wie bei mir. Oder so Ähnlich... Die oberen Reiter im besagten Template werfen den angemeldeten User zurück ins Anmeldemenue anstatt auf den Status zu reagieren.:rolleyes:

Woran kann das liegen??? Ich bin echt überfragt.

ciao

Link to comment
Share on other sites

Hallo!

Peinlich! :rolleyes: Die Kunderegistrierung vergessen! :eek: Hier der geänderte Code:

if (substr(basename($PHP_SELF), 0,6) != 'create') {
if (substr(basename($PHP_SELF), 0,5)!= 'login') {
if (!isset ($_SESSION['customer_id'])) {
xtc_redirect(xtc_href_link(FILENAME_LOGIN, '', 'SSL'));
}
}
}[/php]

Einfach gegen den ersten von mir geposteten ersetzen.

MfG Hetfield :cool:

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...