Seite 1 von 1
Guten Morgen, Guten Tag, Guten Abend auf der Startseite
Verfasst: 27.02.2012, 10:12
von wolfschw
Hallo
Auf der Startseite wird der Kunde mit Guten Morgen, Guten Tag oder Guten Abend begrüßt.
In welcher Datei wird dieses berechnet und ausgegeben ?
Wollte diese begrüßung noch auf eine andere Seite einfügen, bekomme aber dies nicht hin.
gruß
Wolfgang
Verfasst: 27.02.2012, 15:38
von r23
Hallo,
die Funktion
oos_customer_greeting
aus
~/shop/includes/pages/main.php
nach
~/shop/includes/functions/function_kernel.php
verschieben.
im Script
Code: Alles auswählen
if (isset($_SESSION['customer_id])) {
$oSmarty->assign('customer_greeting', oos_customer_greeting());
}
dann in der Regel verwenden...
Hoffe die Antwort hilft weiter
ralf
Verfasst: 27.02.2012, 16:47
von wolfschw
Hallo
Ja so habe ich es auch schon raus gefunden.
Ich meinte aber das OOS_HEADING Guten Morgen oder auch Guten Tag
gruß
Wolfgang
Verfasst: 27.02.2012, 18:16
von r23
hallo,
oh sorry...
Guten Tag, Guten Morgen ... kommt aus
~/function_default.php
einfach die Funktion in die function_kernel verschieben
Code: Alles auswählen
/**
* Return time-based greeting
* Good morning, Good afternoon, Good evening
*
* @return string
*/
function oos_time_based_greeting() {
global $aLang;
if(date('G') >= 12 && date('G') <= 18) {
$time_based_greeting = $aLang['good_afternoon];
} elseif (date('a') == 'am') {
$time_based_greeting = $aLang['good_morning];
} else {
$time_based_greeting = $aLang['good_evening];
}
return $time_based_greeting;
}
d.h. in function_kernel.php die Funktion einfügen und in function_default.php löschen.
im Script
Code: Alles auswählen
$oSmarty->assign('die_template_varibale', oos_time_based_greeting());
Beste Grüße
ralf
Verfasst: 27.02.2012, 21:14
von wolfschw
Ok
So weit funktioniert es.
und wie mache ich dann die ausgabe in einer HTML-Datei ?
gruß
Wolfgang
Verfasst: 27.02.2012, 23:27
von r23
Hallo,
wichtig ist, dass die Varibale nach
an Smarty übergeben wird.
Code: Alles auswählen
require 'includes/oos_system.php';
if (!isset($option)) {
require 'includes/info_message.php';
require 'includes/oos_blocks.php';
require 'includes/oos_counter.php';
}
dies kann in den Blocks passieren oder in den Scripten von
~/includes/pages/*.*
mit
Code: Alles auswählen
$oSmarty->assign('time_based_greeting', oos_time_based_greeting());
im Template kann man dann an jeder Stelle mit
{$time_based_greeting} den Text ausgeben.
evtl. muss man den cache von den templates löschen?
ich verwende hierfür in ~/shop/includes/oos_system.php
Code: Alles auswählen
$oSmarty->force_compile = true;
$oSmarty->debugging = true;
$oSmarty->clear_all_cache();
allerdings muss man diese Zeilen nach der erfolgreichen Änderung unbedingt im Shop löschen!
hth
ralf