Magento: Debug-Ausgaben

24. September 2009 at 17:20

Leider funktioniert die Debug-Ausgabe mit Pfadhinweisen in Magento nur im Front-End. Gerade bei der Entwicklung im Backend benötigt man immer wieder ein paar Debug-Ausgaben, z.B. in welchem Block-Element man sich gerade befindet. Durch die Ausgabe im Template von

$this->debug();

bekommt ihr ein Array mit Informationen über den aktuellen Pfad, Name im Layout sowie den Modul Namen! Bei der Entwicklung im Admin-Bereich teilweise verdammt hilfreich. 😉

Alternativ ist die Ausgabe von Debug-Infos in eigene log-files möglich über den folgenden php-aufruf:

<? php
Mage::log("log-message", Zend_Log::DEBUG, "logefile.log");
?>

Magento: Debug mit Pfadhinweisen in Magento

22. September 2009 at 13:55

Debug Pfad Ausgabe in Magento

Bei der Template-Erstellung bzw. -Bearbeitung ist es nicht immer einfach zu wissen welcher Blog zu welcher Datei gehört. Aus diesem Grund empfehle ich die Pfadhinweise zu aktivieren. Diese Option findet ihr im Admin-Backend unter SYSTEM => KONFIGURATION => ERWEITERT => ENTWICKLEROPTIONEN => DEBUG

Dort die Option „Vorlagen Pfadhinweise“ aktivieren!

HINWEIS: Bevor die Option „Vorlagen Pfadhinweise“ sichtbar wird muss oben links im DropDown-Menu die entsprechende Webseite (z.B. „Main Website“) ausgewählt werden.

Beim nächsten Aufruf wird der Shop mit mehreren roten Pfadhinweisen dargestellt anhand welcher die entsprechenden Dateien gefunden werden können.

(Solution): MDN CrmTicket Bug when searching for a name and go back to Grid View

23. August 2016 at 18:18

firebug

In function „getCondition“ in der class
app/code/community/MDN/CrmTicket/Block/Admin/Widget/Grid/Column/Filter/CustomerName.php

change this buggy part

        if ($customerIdsSelected && sizeof($customerIdsSelected)>0) {
            if((count($customerIdsSelected) == 1) && count($customerIdsSelected[0] > 0)) {
                return array('in' => $customerIdsSelected);
            } else {
                return null;
            }
        }
        else
          return null;
      }

to

        if ($customerIdsSelected && sizeof($customerIdsSelected)>0) {
            if(count($customerIdsSelected) == 1 && count($customerIdsSelected[0]) > 0) {
                return array('in' => $customerIdsSelected);
            } else {
                return null;
            }
        }
        else
          return null;
      }

BTW: The programmer from MDN-CrmTicket unfortunately disregard both Zend and Magento Coding Style Guide! 🙁

 

Please share this article von facebook & google plus or where you want, thank you!

MySQL Query Sammlung / MySQL Query Library

8. April 2015 at 17:34

sql-statement-mysql

Some MySQL Querys which you need by the programming with php / mysql or  magento:

MySQL Update with sub-select: Update a value of an option, e.g. „price“, where option-name is like „optionname“

UPDATE catalog_product_option_type_price t1
SET t1.price='30'
WHERE t1.option_type_id in (SELECT option_type_id FROM catalog_product_option_type_title WHERE `title` like '%optionname%');

Other example with an own table where are not all product_id’s imported and must be updated by sku

UPDATE mypharmacy_stock_statistical_data t2,
(   SELECT entity_id,sku
    FROM catalog_product_entity
) t1
SET t2.product_id = t1.entity_id
WHERE t1.sku=t2.sku

Please share this article von facebook & google plus or where you want, thank you!

Wie deaktiviert man korrekt Observer-Funktionen OHNE die Core-Module zu verändern?

6. Mai 2014 at 13:14

Schreibt ein eigenes Module, dort in der etc/config.xml ist es möglich über z.b. folgende Zeilen den Aufruf der Methode „initByRequest“ durch das Event controller_action_predispatch zu deaktivieren.

Wichtig dabei folgende Zeile zum deaktivieren des Events: <type>disabled</type>

    <frontend>
        <events>
            <controller_action_predispatch>
                <observers>
                    <log>
                        <class>log/visitor</class>
                        <method>initByRequest</method>
                        <type>disabled</type>
                    </log>
                </observers>
            </controller_action_predispatch>
		</events>
	</frontend>

Warum nicht direkt im core?

Durch saubere Trennung zwischen eigenem (veränderten) und core-code, ist eure Magento-Version weiterhin wartbar,
daher Updates (vor allem Security-Fixes) lassen sich einfacher einspielen.

Mit jeder direkten Änderung am core-code, verschlechtert sich die Wartbarkeit der Magento-Suite.

Wenn euch der Tipp geholfen hat, bitte diesen Artikel auch bei Google+ und Facebook teilen, danke für euren Support!

robots.txt

11. Oktober 2013 at 10:31

Die robots.txt dient zur Rechteverwaltung einer Webseite für die Crawler der Suchmaschinen, nähere Infos unter:

http://de.wikipedia.org/wiki/Robots.txt

Zusätzlich sollte dort die jeweilige sitemap.xml eingetragen werden. Magento verwaltet die Sitemap.xml’s auf Webseitenebene, daher ist es wichtig pro Webseite eine eigene sitemap.xml anzulegen sowie diese regelmäßig zu aktualisieren.

Ebenfalls zu beachten ist, dass bei einem Multi Domain Shop jeweils eine eigene robots.txt pro Domain ausgeliefert wird und auch die Sitemap.xml jeweils mit der korrekten Domain verlinkt ist.

Irrelevante Seiten sperren

Auch die interne Linkstruktur ist ein wesentlicher Faktor für die Suchmaschinenoptimierung. Nicht alle Seiten einer Webseite sind auch für Suchmaschinen interessant. Folgende Seiten bzw. Links sollten nicht in den Index der Suchmaschinen aufgenommen werden und deshalb mittels dem meta-robots  „noindex“-Attribut (<meta name=“robots“ content=“noindex,follow“>) gesperrt werden, z.B.:

  • Kundenkonto-Login
  • Warenkorb
  • Hinzufügen zum Warenkorb aus Produkten
  • Kommentar/Bewertungs-Funktion
  • Allgemeine Geschäftsbedingungen
  • Datenschutzerklärung

 

SEO Guideline

11. Oktober 2013 at 10:23

SEO Guideline / SEO Leitfaden

Hier möchte strukturierte Übersicht über diverse SEO-Themen geben.

 

Wenn euch der Tipp geholfen hat, bitte diesen Artikel auch bei Google+ und Facebook teilen, danke für euren Support!

SEO auf der Cebit 2013: Tools-Anbieter, Dienstleister und SEO Veranstaltungen auf der CeBIT in Hannover

27. Februar 2013 at 15:12

cebit cb13_logo_col_de
Vom 05. bis 09. März findet wie jedes jahr in Hannover wieder die IT-Messe CeBIT statt.

Neben aktuellen Trends und Neuvorstellungen interessiert mich vor allem wer aus der Web-Szene ist vor Ort. Egal ob SEO, SEM, SMM, eCommerce oder sonst wie.

Hier eine kleine Übersicht der vertretenden Internet-Dienstleister, Suchmaschinen-Anbieter, Social-Media, etc.:

SEO Agenturen

SEO Events / Foren

eCommerce

Web-Portal-, Suchmaschinen- und Social-Media-Anbieter

Hier fehlt ein Anbieter?
Schreibe diesen bitte als Kommentar ins Ticket inkl. Halle & Stand-Nr. und ich nehme ihn mit auf, danke!

Über Mich

9. Juni 2010 at 05:32

Fly2Mars-Media ist eine inhabergeführte Online-Agentur, unsere Stärken sind Beratung und Umsetzung von Internet-Marketing, Suchmaschinenoptimierung, Webdesign, Design & Grafik, Webshop-Erstellung & -Betreuung, Programmierung von Web-, Datenkbank-, Server- & Desktop-Applikationen sowie Social Media Marketing!

Unser Team aus Spezialisten verfügt über langjährige Erfahrungen in den jeweiligen Fachgebieten. Kompetenz ist unsere Stärke!

Der Autor

Daniel Briegert

Daniel Briegert Foto 29-03-2011

Daniel Briegert

Daniel Briegert ist seit 1994 im IT-Umfeld tätig und gelernter Fachinformatiker Anwendungsentwicklung. Sein Spezialgebiet sind die Entwicklung von Web-Anwendungen auf LAMP (Linux, Apache, MySQL und  PHP) Basis. Seit 2003 gehört die Linux-Administration (LPI 1 zertifiziert) sowie die Betreuung komplexer IT-Infrastrukturen zu seinen Stärken. Im SEO (Search Engine Optimizing), SEM (Serach Engine Marketing) & SMM (Social Media Marketing) Umfeld ist er seit 2008 aktiv. Des Weiteren ist er der richtige Ansprechpartner bzgl. ZendFramework, Zend Server, MSSQL, Java, C#, Magento, phpGroupware, Joomla, WordPress, Java-Script, OpenOffice & vielen weiteren IT-Themen.

Twitter: twitter.com/fly2marsmedia

Facebook: www.facebook.com/danielbriegert

Kontakt: www.fly2mars-media.de/impressum

Google+:

Xing: www.xing.com/profile/Daniel_Briegert