Facebooks Like-Button in Magento einbauen

Vor kurzem machte sich das Gerücht breit, dass Facebook einen Like-Button für das Web plant. Nur kurze Zeit später wurde dies auch bestätigt, und kurz darauf umgesetzt. Wenige Stunden nach Veröffentlichung war bereits ein Plugin für Magento verfügbar. Nachfolgend findet man eine Anleitung, mit der man den Button in seinen eigenen Magento-Shop integrieren kann.

Diese Anleitung erfolgt auf Basis des Default-Theme von Magento. Natürlich kann man diese Anleitung auch bei jedem weiteren Theme anwenden.

Folgende Dateien muss während des Tutorials angepasst werden. Beachtet bitte, dass ab der Version 1.4 die einzelnen Dateien gegebenenfalls erst erstellt werden müssen.

  • /default/default/template/catalog/product/view.phtml

In diesem kleinen Tutorial wird der einfachere Weg genutzt, den Button einzubinden. Folgende Zeile wird in die view.phtml integriert:

<iframe src=”http://www.facebook.com/plugins/like.php?href=<?php echo $this->helper(‘core/url’)->getCurrentUrl(); ?>&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light” scrolling=”no” frameborder=”0″ allowTransparency=”true” style=”border:none; overflow:hidden; width:450px; height:28px”></iframe>

Die Stelle ist dabei beliebig wählbar. Zum Testen setzten wir den Iframe an den Beginn der view.phtml.

Im Prinzip kann man den Button auch in andere Template-Dateien einbauen. Aktuell wird dabei die Magento-URL der aktuellen Seite angegeben. Über die Angabe einer anderen URL (z.B. in der Kategorieübersicht die Produkt-URL) kann man den Button auch für andere URLS angeben. Möchte man den Button mit anderen Angaben generieren, kann man dies auf der Facebook-Seite machen.

Dieser Beitrag wurde unter Magento abgelegt und mit , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

21 Antworten auf Facebooks Like-Button in Magento einbauen

  1. Pingback: Fachwissen für Shopbetreiber und die, die es werden wollen « Ecommerce Fachwissen

  2. Danke für den Link.
    Es handelt sich dabei um ein Plugin für WordPress.

  3. Hallo Michael,
    klasse und vielen Dank für diesen Input. Ein User von uns hat uns darauf aufmerksam gemacht. Grundsätzlich sollte man sich auch bei Magento überlegen, ob jede Extension wirklich notwendig ist. Manchmal reicht auch der einfache Source Code aus – Dankeschön.
    Viele Grüße vom Team ShopTrainer

  4. Benjamin sagt:

    Hallo Michael,

    vielen Dank für den Tip.
    Jedoch wird der Link nur auf der eigenen Pinnwand angezeigt und leider nicht “geshared” für alle unter Neuigkeiten. D.h. nicht auf den Pinnwänden der Freunde sichtbar.
    Kann man dies auch irgendwie realisieren?
    Viele Grüße

  5. Paeddl sagt:

    Hallo Michael,

    ich würde um den Magento-Link allerdings noch ein “urlencode” packen, da Facebook das auch so erwartet.

    Viele Grüße aus Berlin!

  6. @Paeddl

    Vielen Dank für deinen Hinweis. Baue ich ein.

    @Benjamin

    Im Artikel beschrieben ist der “I Iike” Button.
    Kann es sein, dass du nach dem Share-Button suchst?


    <a target="_blank" style="font-size: 11px; line-height: 13px; font-family: 'lucida grande',tahoma,verdana,arial,sans-serif; text-decoration: none; padding: 2px 0pt 0pt 20px; height: 16px; background: url("http://b.static.ak.fbcdn.net/images/share/facebook_share_icon.gif&quot ;) no-repeat scroll left top transparent;" id="facebook_share_both_1207" href="http://www.facebook.com/share.php?u=<?php echo $this- rel="nofollow">helper('core/url')->getCurrentUrl(); ?>">Share on Facebook</a>

    Dieser Code ist bereits für Magento vorbereitet.

    Viele Grüße,
    Michael

  7. Paeddl sagt:

    Hallo Michael,

    ich habe so das Gefühl, dass bei der Like-Button-Integration per iFrame eine Shop-Grafik nicht übertragen wird. Normalerweise ist es bei Facebook nämlich so, dass die auf der Website angegebene Grafik angezeigt wird, wenn man mit der Maus auf den Namen zeigt. Hast du diesbzgl. schon Erfahrungen gesammelt? Ich würde nämlich wahnsinnig gern ein Produktbild bei Facebook anzeigen.

  8. mag_magento sagt:

    Hallo Michael,

    ich kriege bei Magento 1.3.2.3 folgenden Error:

    Notice: Use of undefined constant ‘core – assumed ‘‘core’

    Allerdings nutze ich nicht das default template sondern ein eigenes. Hat es etwas damit zu tun?
    Wie steht´s mit der Frage von Paeddl?

  9. Jascha sagt:

    Danke für den Tipp! Das werden wir dann demnächst mal so testen, sobald die Fan-Anzahl auch passt.. ;-)

    Grüße aus Köln

  10. Andreas sagt:

    Zitat: “ich kriege bei Magento 1.3.2.3 folgenden Error: Notice: Use of undefined constant ‘core – assumed ‘‘core’”

    Hatte gerade auch das Problem.

    Ersetze alle ‘ und ” indem du sie manuell nochmals eingibst, hat zumindest bei mir funktioniert.
    Das Problem scheint ein Problem mit UTF-8 zu sein.

  11. mag_magento sagt:

    @andreas: Vielen Dank, das hat geklappt! Wo ist hier der “i like andreas button” ?! ;)

  12. mag_magento sagt:

    Eine Sache noch. Leider wird nicht das Produktbild angezeigt sondern ein Bild aus einem Callout (in dem Fall das sofortüberweisung.de Logo).
    Wie kann ich das verändern?

  13. Hi,

    das Bild kann man über folgendes Meta-Tag angeben:
    <meta property=”og:image” content=”URL”/>

    Viele Grüße,
    Michael

  14. mag_magento sagt:

    Hallo Michael,

    gibt es auch eine Möglichkeit das in das Template (view.phtml)einzubauen? Statt der statischen URL müsste dann ja etwas wie “getSmallImagelink(); ?>” funktionieren oder? Hat jemand einen funktionierenden Code-Schnipsel für mich? Bin leider nicht besonders gut in php.

    Danke und Grüße!

  15. mag_magento sagt:

    Habe es mit folgendem in der view.phtml versucht:

    getChildHtml(‘media’) ?>

    <meta property="og:image" content="init(Mage::registry(‘current_product’), ‘small_image’)->resize(100,100);?>” />
    <meta property="og:title" content="getMetaTitle()?>” />

    Er zeigt aber immer noch das falsche Bild an.

  16. mag_magento sagt:

    oh, da fehlt die Hälfte. Ich versuche es nochmal:

    getChildHtml(‘media’) ?>

    <meta property="og:image" content="init(Mage::registry(‘current_product’), ‘small_image’)->resize(100,100);?>” />
    <meta property="og:title" content="getMetaTitle()?>” />

  17. mag_magento sagt:

    sorry, kriege den code hier nicht reinkopiert.

  18. Den Code habe ich auf der Produktdetailseite verwendet



    <iframe src="http://www.facebook.com/plugins/like.php?href=getProductUrl()); ?>&layout=standard&show_faces=true&width=450&action=like&colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:28px">

  19. Edit: Nach dem ?href muss noch das öffnende PHP-Tag kommen, das wurde im Beispielcode rausgeschnitten

  20. maxi sagt:

    Hat es jemand geschafft, dass das richtige Bild angezeigt wird?
    Das wäre echt noch wichtig!

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>