Währungen

Aus Shophelfer Wiki
Wechseln zu: Navigation, Suche

Klickweg von der Admin-Startseite aus: Konfiguration -> Land / Steuer -> Währungen

Hier legen Sie die Währungen an, die Ihr Shop dann akzeptiert.

Über den Button "Neue Währung" legen Sie einen Eintrag an und über "Bearbeiten" können Sie diesen später verändern oder auch ganz löschen.

Wichtig für das Anlegen einer Währung ist der Währungscode nach ISO 4217. Dieser muss für jede Währung richtig hinterlegt werden.

Dies sind alphabetische Codes, bestehend aus je 3 Buchstaben. Die ersten beiden stehen üblicherweise für die Landeskennung, der letzte ist der Anfangsbuchstabe für den Währungsnamen.



Mit etwas Programmierkenntnissen kann man die aktuellen Wechselkurse der Europäischen Zentralbank per Cronjob holen und braucht sich somit nicht mehr automatisch darum kümmern.

Dazu legt man eine php Datei an, lädt sie in den Shoproot und ruft sie per Cronjob auf. Die Datei benötigt folgenden Inhalt:


<?php
require_once("includes/application_top.php");
 
$oExchangeRatesData = simplexml_load_file("http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml");
$oExchangeRates = $oExchangeRatesData->Cube->Cube->Cube;
 
echo "<pre>";
foreach($oExchangeRates as $aRate) {
        $aCurrency[(string)$aRate['currency']] = (float)$aRate['rate'];
}
$aCurrency[DEFAULT_CURRENCY] = 1;
 
$sSql = sprintf("SELECT * FROM `currencies`");
$oQuery = xtc_db_query($sSql);
while($aRow = xtc_db_fetch_array($oQuery)) {
        if(array_key_exists($aRow['code'], $aCurrency)) {
                $sSql = sprintf("UPDATE `currencies` SET value = %f, last_updated = now() WHERE currencies_id = %d", $aCurrency[$aRow['code']], $aRow['currencies_id']);
                xtc_db_query($sSql);
                echo sprintf("Aktualisiere %s\n", $aRow['code']);
        } else {
                echo sprintf("Kein Wechselkurs gefunden für %s\n", $aRow['code']);
        }
}