Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Letzte ÜberarbeitungBeide Seiten der Revision
oxid [2015/05/18 11:47] – [Oxid] geraldoxid [2024/02/29 13:36] – Externe Bearbeitung 127.0.0.1
Zeile 1: Zeile 1:
 ====== Oxid ====== ====== Oxid ======
  
 +2023: Download der letzten freien Open Source Versionen: [[https://github.com/proudcommerce/oxid-downloads]]
 +
 +[[oxid:gutscheine|Gutscheincodes]]
  
 [[oxid:images|Images/Bilder]] [[oxid:images|Images/Bilder]]
 +
 +[[oxid:changes|Meine Änderungen]]
 +
 +{{ ::oxid_eshop_ce_4.3.0_26948_db_schema.png?nolink&100|Datenbank-Schema}}
 +
 +
 +[[http://oxid-tpl-debug.stahlwarenhaus-hebsacker.de/azure/index.php?&redirected=1|Testinstallation, bei der die Namen der CSS-Elemente angezeigt werden]]
 +
 +[[http://wiki.oxidforge.org/Tutorials/de|Tutorials (Liste)]]
  
 [[http://docu.oxid-esales.com/CE/sourcecodedocumentation/4.1.3.19918/|Klassen-Dok/Hierarchie]] [[http://docu.oxid-esales.com/CE/sourcecodedocumentation/4.1.3.19918/|Klassen-Dok/Hierarchie]]
Zeile 11: Zeile 23:
   * [[bootstrap|Bootstrap]][[http://de.wikipedia.org/wiki/Bootstrap_%28Framework%29|Wiki]]   * [[bootstrap|Bootstrap]][[http://de.wikipedia.org/wiki/Bootstrap_%28Framework%29|Wiki]]
   * [[jquery|jQuery]]   * [[jquery|jQuery]]
 +  * [[phpmailer]]
  
  
 [[http://faq.oxidmodule.com/Tipps-und-Tricks/|Tips&Tricks]] [[http://faq.oxidmodule.com/Tipps-und-Tricks/|Tips&Tricks]]
 +
 +Ansicht aller Module/Elemente im Layout: [[http://oxid-tpl-debug.stahlwarenhaus-hebsacker.de/azure/]]
  
 {{::oxid_class_hyrarchie.png?linkonly|Grafische Hierarchie der Klassen}} {{::oxid_class_hyrarchie.png?linkonly|Grafische Hierarchie der Klassen}}
Zeile 24: Zeile 39:
  
 [[http://www.oxid-esales.com/de/support-services/dokumentation-und-hilfe/archiv-oxid-eshop/design-anpassen/einstellungen/elemente-ausblenden.html|Elemente ausblenden]] (& Angebote auf Startseite) [[http://www.oxid-esales.com/de/support-services/dokumentation-und-hilfe/archiv-oxid-eshop/design-anpassen/einstellungen/elemente-ausblenden.html|Elemente ausblenden]] (& Angebote auf Startseite)
 +
 +===== Fehlermeldungen anzeigen =====
 +
 +Fehler/Exceptions ansehen: Exceptions werden mitgeloggt in: /var/www/webserver/oxid/log/EXCEPTION_LOG.txt
 +
 +Quelle((https://faq.d3data.de/oxid-eshop/tipps-und-tricks/ich-erhalte-im-shop-eine-weisse-seite-was-nun/)): 
 +
 +  * möglicherweise protokolliert der Shop die Fehler in der Datei „exception.log“.
 +    Diese finden Sie bis Shopversion 4.1.6 im Hauptordner Ihres Shops.
 +In späteren Versionen liegt diese Datei mit dem Namen „EXCEPTION_LOG.txt“ bzw. „oxideshop.log“ im Shop-Unterverzeichnis „log“.
 +Diese Datei erfordert zwingend Schreibrechte.
 +  * Deaktivieren Sie den Produktivmodus im Adminbereich des Shops. Nach der Fehlersuche muss dieser unbedingt wieder aktiviert werden! Kann der Adminbereich nicht aufgerufen werden, können Sie den Produktiv-Modus auch in der Datenbank deaktivieren: Tabelle „oxshops“ -> Feld „oxproductive“ auf ‚0‘ setzen
 +  * in der Datei „config.inc.php“ setzen Sie die Zeile $this->iDebug = 0; auf $this->iDebug = 1; Diese Einstellungen sollte unbedingt danach wieder zurückgesetzt werden!
 +  * Fügen Sie ebenfalls in der „config.inc.php“ nach dem „<?php“-Tag folgende Zeile ein: ‚ini_set(„display_errors“, „on“);‘. Das folgende Semikolon darf dabei nicht fehlen.
 +  * Sollte dies alles nicht helfen, können Sie die Fehlerausgabe erzwingen. Legen Sie sich dazu von der Datei „oxshopcontrol.php“ im „views“-Ordner (ab Version 4.7.0 / 5.0.0 im Ordner „core“ ) eine Sicherung an und öffnen Sie das Original.
 +
 +Fügen Sie vor der Zeile
 +<code>    } catch( oxSystemComponentException $oEx ) {
 +    bitte folgenden Absatz ein:
 +    } catch (Exception $oEx) {
 +    dumpvar($oEx);
 +    die();
 +</code>
 +
 +Der Abschnitt sieht dann wie folgt aus:
 +<code>
 +    try {
 +    $this->_process( $sClass, $sFunction );
 +    } catch (Exception $oEx) {
 +    dumpvar($oEx);
 +    die();
 +    } catch( oxSystemComponentException $oEx ) {
 +</code>
 +Stellen Sie nach der Fehlersuche unbedingt die Sicherung dieser Datei wieder her!
 +
 +Nun sollten Sie eine Fehlermeldung sehen, anhand dieser wir das Problem besser einschätzen können.
  
  
Zeile 108: Zeile 159:
  
 Tutorials/Understanding OXID eShop Template Hierarchy and Override System [[http://wiki.oxidforge.org/Tutorials/How_template_hierarchy_and_override_system_works]] Tutorials/Understanding OXID eShop Template Hierarchy and Override System [[http://wiki.oxidforge.org/Tutorials/How_template_hierarchy_and_override_system_works]]
 +
 +===== Admin: menu.xml =====
 +
 +Menupunkte hinzufügen/ändern
 +
 +[[http://www.commodule.de/blog/allgemein/oxid-admin-menue/]]
 +
 +===== Eigene Admin-Seite erstellen =====
 +
 +[[http://www.einscommerce.com/eine-oxid-eshop-admin-seite-erstellen-oxid-eshop-4-7/]]
  
 ===== Programmierung ===== ===== Programmierung =====
Zeile 239: Zeile 300:
     [{$ergebnis}]     [{$ergebnis}]
 </code> </code>
 +==== Einfache SQL-Abfrage, ob sich die selben Benutzer mehrfach angemeldet haben ====
 +Mit folgendem SQL-Statement kann man Merfachaccounts mit gleichem Nachnamen und PLZ aus der Datenbank auslesen:
 +<code>
 +SELECT oxuser.oxfname, oxuser.oxlname, oxuser.oxstreet, oxuser.oxstreetnr, oxuser.oxzip, oxuser.oxcity, oxuser.oxboni
 +FROM oxuser, (
 +SELECT oxlname, oxzip
 +FROM oxuser
 +GROUP BY oxlname, oxzip
 +HAVING COUNT( * ) >1
 +) AS doubles
 +WHERE oxuser.oxlname = doubles.oxlname
 +AND oxuser.oxzip = doubles.oxzip
 +ORDER BY oxuser.oxlname, oxuser.oxzip
 +</code>
 +
 ==== Admin: Zuerst “alle” Oxid-Bestellungen anzeigen* ==== ==== Admin: Zuerst “alle” Oxid-Bestellungen anzeigen* ====
 Quelle((http://www.foxido.de/oxid-bestellungen-auf-alle-statt-auf-neu)) Quelle((http://www.foxido.de/oxid-bestellungen-auf-alle-statt-auf-neu))
 +
 +Oxid Source: Folgendes in der order_list.php (oxid 4.87)  einfügen/ersetzen:
 +<code>
 +    public function render()
 +    {
 +    parent::render();
 +
 +    $aFolders = $this->getConfig()->getConfigParam( ‚aOrderfolder‘ );
 +    $sFolder  = oxConfig::getParameter( „folder“ );
 +    // first display new orders
 +    if ( !$sFolder && is_array( $aFolders )) {
 +    $aNames = array_keys( $aFolders );
 +    $sFolder = $aNames[-1];
 +    }
 +
 +    $aSearch    = array( ‚oxorderarticles‘ => ‚ARTID‘, ‚oxpayments‘ => ‚PAYMENT‘);
 +    $sSearch    = oxConfig::getParameter( „addsearch“ );
 +    $sSearchfld = oxConfig::getParameter( „addsearchfld“ );
 +
 +    $this->_aViewData[„folder“]       = $sFolder ? $sFolder : -1;
 +    $this->_aViewData[„addsearchfld“] = $sSearchfld ? $sSearchfld : -1;
 +    $this->_aViewData[„asearch“]      = $aSearch;
 +    $this->_aViewData[„addsearch“]    = $sSearch;
 +    $this->_aViewData[„afolder“]      = $aFolders;
 +
 +    return „order_list.tpl“;
 +    }
 +
 +    /**
 +    * Adding folder check
 +    *
 +    * @param array  $aWhere  SQL condition array
 +    * @param string $sqlFull SQL query string
 +    *
 +    * @return $sQ
 +    */
 +    protected function _prepareWhereQuery( $aWhere, $sqlFull )
 +    {
 +    $oDb = oxDb::getDb();
 +    $sQ = parent::_prepareWhereQuery( $aWhere, $sqlFull );
 +    $myConfig = $this->getConfig();
 +    $aFolders = $myConfig->getConfigParam( ‚aOrderfolder‘ );
 +    $sFolder = oxConfig::getParameter( ‚folder‘ );
 +    //searchong for empty oxfolder fields
 +    if ( $sFolder && $sFolder != ‚-1‘ ) {
 +    $sQ .= “ and ( oxorder.oxfolder = „.$oDb->quote( $sFolder ).“ )“;
 +    } elseif ( !$sFolder && is_array( $aFolders ) ) {
 +    $aFolderNames = array_keys( $aFolders );
 +    //$sQ .= “ and ( oxorder.oxfolder = „.$oDb->quote( $aFolderNames[0] ).“ )“;
 +    }
 +
 +    return $sQ;
 +    }
 +    </code>
 +    
 +==== Oxid Captcha unleserlich ====
 +
 +Quelle((http://www.foxido.de/category/tipps/page/3))
 +
 +Update gemacht? 4.9.7?
 +
 +Evtl. config.inc.php vergessen?
 +<code>
 +    /**
 +    * Captcha encryption key.
 +    */
 +    $this->captchaKey = ‚<captchaKey>‘;
 +</code>
 +
 +    
 ==== Admin: Erledigte Bestellungen hervorheben ==== ==== Admin: Erledigte Bestellungen hervorheben ====
 Quelle((http://www.foxido.de/erledigte-bestellungen-hervorheben)) Quelle((http://www.foxido.de/erledigte-bestellungen-hervorheben))
  
  
 +Oxid Source: Folgendes in der order_list.tpl (oxid 4.87)  in Zeile 110 einfügen:
 +<code>
 +    <style>
 +    .ready{
 +    color:#00CC33;
 +    }
 +    </style>
 +</code>
 +Dann unterhalb von:
 +<code>
 +    [{ if $listitem->getId() == $oxid }]
 +    [{assign var=“listclass“ value=listitem4 }]
 +    [{ /if}]
 +</code>
 +folgendes einfügen (ca. Zeile 134):
 +<code>
 +    [{assign var=“ready“ value=“ ready“ }]
 +    [{ if $listitem->oxorder__oxfolder->value == „ORDERFOLDER_FINISHED“}][{assign var=“listclass“ value=$listclass$ready“ }]  [{ /if}]
 +</code>    
 ===== Probleme ===== ===== Probleme =====
  
Zeile 353: Zeile 518:
  
 ===== Allgemeine Tipps ===== ===== Allgemeine Tipps =====
 +
 +==== OXID Datenbankdump ohne Views ====
 +Quelle((http://www.marmalade.de/magazin/2014/11/oxid-datenbankdump-ohne-views/))
 +
 +
 +OXID nutzt für die Mehrsprachigkeit die Views von MySQL. Bei einigen Hostern machen diese jedoch Probleme, wenn man die Datenbank per mysqldump sichern möchte.
 +
 +Glücklicherweise beginnen die Views alle mit “oxv_”, so dass man diese auschließen kann.
 +
 +Hier das Entsprechende Script für den Aufruf auf der Commandline:
 +<code>
 +mysql [dbname] -u [username] -p[password] -e 'show tables where tables_in_[dbname] not like "oxv\_%"' | grep -v Tables_in | xargs mysqldump [dbname] -u [username] -p[password] > [dump_file]
 +</code>
 +Es werden alle Tabellen ausgelesen, welche nicht mit oxv_ beginnen und ein Dump mit allen anderen erzeugt.
 +
 +Nachdem man den Dump in die neue Datenbank importiert hat, im Backend unter “Tools” einfach die Views neu erzeugen.
 +
 +In manchen Versionen ist jedoch ohne Views gar kein Login ins Backend möglich. Hier hilft das setzen des entprechenden Eintrags in der config.inc.php
 +
 +<code>$this->blSkipViewUsage = true;</code>
 +
  
  
Zeile 472: Zeile 658:
 Wird als Beispiel "http" bzw. "https" verwendet. wird auch nur explizit diese im Shop registrierte Adresse verwendet. Steht hingegen "http(s)", schaltet der Shop die Variable je nach Shopzustand selbst. Wird als Beispiel "http" bzw. "https" verwendet. wird auch nur explizit diese im Shop registrierte Adresse verwendet. Steht hingegen "http(s)", schaltet der Shop die Variable je nach Shopzustand selbst.
 </code> </code>
 +
 +==== Shop offline ====
 +
 +  * nicht aktiv geschaltet
 +  * keine DB-Verbindung
 +  * DB-Views nicht verfügbar
 +  * Core-Table nicht vorhanden/fehlerhaft
 +  * Exception nicht abgefangen
 +
 +Sehr guter Überglick (auch technisch): [[http://www.marmalade.de/magazin/2014/07/oxid-wann-wird-die-offline-seite-angezeigt/]]
 +
 +===== Bevor es live geht =====
 +
 +[[http://wiki.oxidforge.org/Tutorials/Check_vor_dem_Livegang]]
 +
 +Stammdaten ->Grundeinstellungen -> Haken bei Produktivmodus 
 +
 +Stammdaten ->Grundeinstellungen -> Perform. -> Überprüfen ob Templates neu kompiliert werden müssen. Schalten Sie diese Einstellung aus, wenn der eShop in den Live-Betrieb geht. 
  
  
  
 
Nach oben
oxid.txt · Zuletzt geändert: 2024/03/05 14:41 von gerald
chimeric.de = chi`s home Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0
DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp   Dogecoin Donations Accepted Here    DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp  DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp