ShopNix

Tagebuch eines Shops auf Basis von osCommerce

Archive for the ‘Oxid’ Category

Übersetzungshilfe

leave a comment »


Die Übersetzung der sprachabhängigen Komponenten einer Software ist oft ein mühsames Unterfangen, zumal die Übersetzer ungern in der Syntax sprachabhängiger Dateien arbeiten. Zudem haben sie erst nach etlichen Arbeitsschritten die Möglichkeit, das Ergebnis ihrer Bemühungen im Zusammenhang zu sehen.

Deshalb habe ich ein kleines Programm geschrieben, das sowohl mit der in PHP weit verbreiteten Variante mit Konstanten zurecht kommt, als auch die Syntax der Smarty-Template-Engine versteht.

Für die Einrichtung sind Vorkenntnisse in PHP und MySQL erforderlich. Das Ergebnis ist eine Weboberfläche, auf der auch ein Übersetzer ohne derlei Kenntnisse arbeiten kann. Lediglich für die Übernahme eventuell enthaltener Formatierungen und Variablen muss er möglicherweise eine kurze Einweisung bekommen.

Die zu übersetzenden Termini werden im Zusammenhang mit den Kontext des Programms in Blöcken angeboten, vor dem Block steht die Konstante bzw. Variable, oben der Text in der Ausgangssprache darunter jeweils ein Eingabefeld für die Zielsprache.

Der Übersetzer kann jederzeit auf Mausklick die Zieldateien erzeugen und im parallel installierten Zielprogramm sein Ergebnis im Zusammenhang überprüfen.

Die Software steht unter dem Titel sx-translator auf SourceForge zum Download bereit. Da es im Zusammenhang mit dem modified Shop entstanden ist, sind die mitgelieferten Tabellen bereits für diesen Shop vorbelegt. Wer das System für andere Zwecke einsetzen möchte, muss dessen Dateien anlegen und die Sections der Smarty language.conf einpflegen. Das geht bisher noch nicht über die Weboberfläche. Die Dateien der Quellsprache werden dann in die DB eingelesen, anschließend sollte diese Funktion in der  Konfiguration gesperrt werden.

Auf Anfrage kann auch eine Testumgebung gestellt werden. Bitte verwenden Sie dazu die Kommentarfunktion.

Advertisements

Written by spessart

16. Mai 2013 at 20:05

Das Azure-Theme im Oxid-Shop

leave a comment »


Leider hat Oxid die Pflege des Basic-Themes ab Version 4.7 eingestellt, und nun fange ich noch einmal von vorne an. Zwar gibt es eine Dokumentation für diejenigen, die Basic weiterhin verwenden wollen. Da ich aber einen völlig neuen Shop zu gestalten habe, nehme ich lieber den Mehraufwand in Kauf, als auf einem toten Pferd in’s Rennen zu gehen.

Hilfestellung dazu bietet Oxid in seiner Dokumentation und in dem Tutorial „Understanding Theme Management“ an. Dabei ist zu beachten, dass sich mit dem Versionswechsel auch die Verzeichnisstruktur geändert hat. So findet sich beispielsweise die in der o.a. Doku erwähnte Datei theme.php nicht mehr unter /out/azure/, sondern unter /application/views/azure. Das zugehörige Vorschaubildchen finde ich noch am alten Ort.

Template-Struktur

Zur Template-Struktur des Shops findet sich im Netz eine Hilfe. Hier hat sich jemand die Mühe gemacht, die Namen der Smarty-Elemente auszugeben.

CSS

Die CSS-Dateien befinden sich noch unter /out/THEME/src/css.

Die ersten Änderungen betreffen meist die Farbgestaltung. Dazu suche ich mir zunächst die Farben heraus, die das Original-Theme verwendet:

  • Orange (z.B. in der waagerechten Navigation als Hintergrund) : #ec6105
  • Hellblau bis Türkis (als Rahmen um die Boxen) : #389cb4
  • Grau (z.B. Hintergrund der Infobox unten) : #d1d8db

Neben den reinen Farbangaben sind natürlich auch graphische Elemente vorhanden, die ihre eigenen Farben oder Farbverläufe mitbringen. Da haben wir z.B. grad_grey-light.svg, das mit dem o.a. Grau korrespondiert. Deshalb durchsuche ich meine css-Datei zunächst nach den Farbwerten und notiere die korrespondierenden Grafiken.

Das Ergebnis gibt’s zumindest vorläufig nur lokal.

 

Written by spessart

8. April 2013 at 20:13

Veröffentlicht in Oxid

Tagged with , , ,

Error logs oder wie protokolliere ich Fehler mit PHP

leave a comment »


Zu diesem Thema gibt es einen recht ausführlichen Artikel von Jan Winkler, vielen Dank dafür.

Er behandelt unter anderem auch die Parameter in php.ini, meine Notizen hier beschränken sich auf die alltäglichen kleinen Notwendigkeiten. Oft will ich nur den Inhalt einer Variablen protokollieren, und zwar in dem Verzeichnis für temporäre PHP-Dateien. Außerdem will ich ausgeben, wann und wo ich es tue. Das geht so:

error_log(date('Y-m-d H:m:s'). __FILE__. ', '.__LINE__.": \n sHost:\t". $sHost."\n", 3,sys_get_temp_dir()."/datei.log");

und das Ergebnis sieht so aus:

2013-04-03 10:04:08/var/www/virtual/beispiel.de/htdocs/shop/core/oxsysrequirements.php, 396:
sHost: beispiel.de

Written by spessart

3. April 2013 at 11:36

Veröffentlicht in Oxid, PHP