Üdv Mindenkinek!
Már minden létező oldalon jártam és modult kipróbáltam, de csak nem működik a dolog!
Azt szeretném, hogy az oldalon minden egyes blogbejegyzés alatt legyen egy facebook like és share gomb - igazából elég csak a like is - és ha erre rányomnak az emberek, akkor az adott oldal, tehát az adott blogbejegyzés linkje, címe kerüljön ki a facebookra!
Esetemben akármivel próbálkoztam mindig a főoldal linkje, és címe kerül ki...
Próbáltam több modult is:http://drupal.org/project/social-share , http://drupal.org/project/fb_social , http://drupal.org/project/fblikebutton , míg utóbbi két modul teljesen rossz volt tehát ugyanúgy a főoldal adatai jelentek meg, addig a social share modullal legalább a description megváltozott az adott bejegyzés leírásává.
Arra gondoltam talán az lehet a baj, hogy a facebook becachelte a rossz adatokat tehát elmentem erre az oldalra, mivel azt olvastam, hogy ez nem csak megmutatja, hogy milyen adatokat ér el a facebook, hanem törli is az oldalhoz tartozó cache-t. Mindenesetre semmi nem változott ezután sem!
Az oldalon saját zen alapú sminket használok, aminek a html.tpl.php fájljába be vannak írva a következő sorok:
A fájl kezdete:
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2010/fbml" xmlns:og="http://opengraphprotocol.org/schema/" xml:lang="<?php print $language->language; ?>" version="XHTML+RDFa 1.0" dir="<?php print $language->dir; ?>"<?php print $rdf_namespaces; ?> >
Valamint a head részbe a következő metaadatok:
<meta property="og:title" content="<?php print $node->title; ?>"/> <meta property="og:url" content="<?php print $node_url; ?>"/> <meta property="og:image" content="http://kreanod.hu/sites/default/files/like.jpg"/>
Kezdetben a title és url metaadatok nélkül próbálkoztam, úgy sem volt jó a dolog...
Keresgéltem és találtam még egy használható leírást itt, de hiába próbáltam ezzel is ugyanarra az eredményre jutottam, beletettem a "PHP alapú weboldalba..." beillesztendő kódot egy blokkba magamnak, szépen likeolja is csak éppen ugyanúgy a főoldal adatai jelennek meg nem pedig az adott blogbejegyzésé.
Ezen kívül elolvastam a facebook ide vágó leírását is, próbáltam ezt is beilleszteni kézzel-lábbal, de teljes kudarc, nem lettem okosabb...
Ha valaki tud segíteni, hogy hogyan is lehetne megcsinálni azt, hogy az adott node, jelen esetben blogbejegyzés, adatai jelenjenek meg a like gomb lenyomásakor a facebookon azt nagyon megköszönném!
Üdv
Peti
Nem írtál oldalcímet, de a
Nem írtál oldalcímet, de a beillesztett kódból sikerült kinéznem. Ha megnézed a blogoldalak forrását, látni fogod, hogy üresen hagyja az og:title és og:url meta tulajdonságokat, tehát az a helyzet, hogy a template fájlodban hiába hivatkozol a $node objektumra, az nem létezik. A [sminkneve]_preprocess_html() függvényben tudsz hozzáadni a html.tpl.php-hez új változókat a sminked template.php fájljában.
--
Csonka Gergely
http://cheppers.com
Huhh...
Huhh...
Szuper, de akkor hogyan tudok hivatkozni a node-om címére itt, ugyanúgy ahogy akartam a metánál?
Vagy honnan tudom kilesni ezeket a dolgokat?
Üdv
Peti
Nálam a modul beállítása
Nálam a modul beállítása oldalon van lehetőség a kölönbözö tartalomtípushoz való hozzárendelésre. Csak a tartalomtípust kell bejelölnöm, s márt kész.
www.sedvolgy.hu, www.vilonya.eu
Melyik modulra gondolsz?
Melyik modulra gondolsz, mert többet is felsoroltam? Egyébként azt hiszem, hogy mindegyiknél meg lehet adni ezt a beállítást, hogy melyik tartalomtípusnál jelenjen meg a like gomb! Csakhogy nekem egyáltalán nem ezzel volt problémám, hanem mint ahogy leírtam, azzal, hogy bizonyos meta adatok nem jelennek meg a facebookon, miután valaki "lájkolta" az adott bejegyzést! Tehát nem az adott bejegyzés címe, url-je jelenik meg, hanem magáé az oldalé! És ez amiatt van - mint ahogy Gergely is írta feljebb - hogy a html.tpl.php nem látja azokat a változókat amiket itt megadtam neki node title-re és url-re vonatkozóan!
Üdv
Peti
Mi lenne ha a node.tpl.php ba
Mi lenne ha a node.tpl.php ba tennéd be a content alá az FB által adott kódot? az nem jó? A kérdéses működést ellátja..
Drupal full-stack developer at Wunderman Thompson Budapest
A meta propertykre gondolsz?
A meta propertykre gondolsz? mert szerintem más biztos nem oldaná meg a megjelenés problémáját... De nem tudom ki fogom próbálni!
Üdv
Peti
Köszönöm Mindenkinek!
Na az a helyzet, hogy megtaláltam - lehet nem a legszebb, de biztos, hogy a legegyszerűbb megoldást (legalábbis számomra)!
A html.tpl.php fájlból kivettem az url és title propertyt, csak az image-t hagytam benne és az Open Graph meta tags modul segítségével, mindig minden bejegyzéshez meg tudom adni, hogy milyen címet és összefoglalót szeretnék látni, plusz ez magától "tudja" az adott node url-ét, tehát azt is tolja bele a html-be url property-ként! A facebook like gombot pedig akármelyik - akár a hivatalos facebook oldalon található - kód segítségével csak be kell illeszteni a template.php-ba!
Így működik minden szépen... egyetlen hátránya van, hogy minden bejegyzéshez külön meg kell adni, hogy miket szeretnél viszontlátni a metatagekben, tehát hogy mit szeretnél, hogy megjelenjen majd a facebook-on anno, ha valaki "lájkolta" azt a bejegyzésed. Ez sok tartalom felvitelnél, ha nagyon sok bejegyzés keletkezik, zavaró lehet... Emiatt lenne jobb csak az a megoldás, ha valahogy el tudnám érni, hogy a html.tpl.php-ban lássa az adott node title-re vagy url-re vonatkozó változókat.
De egyelőre ez a megoldás is tökéletes nekem, és köszönöm az eddigi segítséget!
Üdv
Peti