Client reports:
I LIKEd this article:
http://www.opcofamerica.org/news/guernica-wrong-question-tortureEverything works great from www.opcofamerica.org to FB; then, I check my FB page and see that the wrong image is coming over with the article.
The thumbnail that shows is Facebook is from this node:
http://www.opcofamerica.org/events/2011-opc-foundation-scholars-luncheon
Same problem for me when I tested on several articles. In one case, when I LIKEd the "WikiLeaks" article the first time, the correct thumbnail was sent to Facebook. But, when I LIKEd it subsequent times, a different thumbnail was sent. The thumbnail is supplied by CCK field; processed with ImageCache.
Moreover, posts are being sent with the correct Title (headline), but a teaser from one node and a thumbnail from another. None of the parts match.
I am not a programmer, but sounds like the module is seleting an image from an array without any NID actually relating it. Something like that.
Screenshots attached:
--------------------------
Facebook page for "guernica-wrong-question-torture" article LIKE (per URL above).
Facebook page for the WikiLeaks articles LIKE -- 3 different thumbnails, wrong teaser text
Modules used on site.
| Comment | File | Size | Author |
|---|---|---|---|
| #5 | URL-Linter-Facebook_OPC.pdf | 62.28 KB | greta_drupal |
| scr_OPC-modules_1-1-11.jpg | 539.78 KB | greta_drupal | |
| scr_facebook-post3.jpg | 51.27 KB | greta_drupal | |
| scr_facebook-post2.jpg | 53.78 KB | greta_drupal | |
| scr_facebook-post1.jpg | 56.09 KB | greta_drupal |
Comments
Comment #1
greta_drupal commentedNOTES:
For each/every Facebook LIKEd post on the Facebook page, the module is sending the teaser from the "About Us" node (node 25). This text is _not_ used as mission statement or anything else. The thumbnail being sent is random (?) from some other node -- not the "About Us" node.
As noted previously, the PAGE TITLE and the URL for the LIKEd article sent is correct. So, teaser and thumbnail image are wrong.
All of these tests were LIKEd from content that was promoted to front page.
NON-PROMOTED ARTICLES:
When LIKEd from a non-promoted article, from full node page (e.g., http://opcofamerica.org/news/ap-staffers-hold-byline-boycott), the Facebook page post shows only the node URL as link. No Title, thumbnail, or teaser is shown. Screenshot attached to main post as "scr_Facebook-Like_issue_nonpromoted-node.jpg".
In both cases, the nodes were of the same (custom) content type.
Comment #2
greta_drupal commentedNOTE: The Title being sent appears to be from the Page Title variable, not the Node Title variable. (Page Title is being generated from Drupal core behavior. Page Title module is not installed.)
Comment #3
greta_drupal commentedNOTE: Using this module on another site, http://E-QuipAfrica.org, and it works perfectly. No Facebook post mashups. So, must be a conflict with some module used on OPC site. I can attach a list of modules used on the E-Quip Africa site, if you'd like.
Comment #4
ferdi commentedCan you use the URL linter from facebook to get a better idea what's going on ? I.e. http://developers.facebook.com/tools/lint/?url=http://opcofamerica.org/n...
Where does the description come from ?
Comment #5
greta_drupal commentedI have attached the linter page. As noted, the description is being pulled from first paragraph of the About Us page, which is not the page being LIKEd.
The module code pulls the "teaser: and "images attached to nodes".
So, I suspect the breakdown comes from:
Excerpt module -- which creates custom teaser (either manually entered or automatic)
CCK -- which creates the attached thumbnail image
The module needs a better default. If it cannot find a (core) teaser, or cannot find a (core) attached image, it should do _nothing_ rather than randomly grabbing a teaser and image from somewhere. It does seem random.
Moreover, why pull the Page Title, rather than the node title. Page Titles sometimes get non-sensically changed for SEO purposes. Node Title is the most accurate reflection of what the article subject matter.
I could live with it only sending Facebook the node title as link. But, not with it sending erroneous data.
I am not a PHP programmer, but this seems pretty easy to fix. For one thing, from the code, it appears that the only variable reference to the node (NID) is for the URL...which is the only thing that the module is doing correctly, actually.
Don't mean to be snarky. The module is a great start. And, it appears to be the only module doing LIKE functionality. (Someone please let me know if you have found something else.) Let's perfect it!
If anyone can offer a patch, I'd welcome it!
Comment #6
ferdi commentedIf you look at the html source of the page , the two lines added by this module are:
before that you have that "description" meta that fb is picking up
Comment #7
greta_drupal commentedYes, I saw that. What is your point? Facebook is picking up what the module is sending, or rather telling it to.
Comment #8
ferdi commentedThe description that you see in facebook is not random and it's not the first paragraph of the About page. Every page in your site contains the following :
which is not generated by fb_social module. If you dont change that, there is no one that is going to stop fb from picking it up and display as "description" for every post in your site.
Comment #9
greta_drupal commentedDarn. I forgot about Nodewords -- which did use the first paragraph of About Us page as default description.
When I emptied the Nodewords default, the correct LIKEd page text was displayed on Facebook. However, the wrong thumbnail still is displayed. And, I cannot tell from Facebook source what is being used. In all three of my tests, of 3 different articles, the same thumbnail was displayed on Facebook for each. (And, it isn't a default image of any kind.)
I also configured the Nodewords settings to automatically generate a description from the teaser or body, if the field on node is empty. Nodewords is not doing that (nothing populated on node edit form or output in HTML -- as configured), so I cannot test what then would be displayed on Facebook. Whether any Nodewords description would interfere or not. At this point, I only know that if Nodewords is not affecting the node description, the Facebook post text is correct.
That being said, as long as the thumbnail is not accurate, the module is useless.
Comment #10
amirtaiar commentedIn my issue, the teaser on facebook is the first block on the sidebar.
Have been added the nodewords and add some metatags to a specific node.
Also configure the default nodeword settings, ant yet, the same issue.
Comment #11
greta_drupal commentedFacebook Lint reports this as a data source:
nodes"
"Data Source: "All images" extracted from all
Where is this coming from in module code? Because clearly that is not what any wants (all images from all nodes!).
Comment #12
anawillem commentedI second amirtaiar.
When facebook looks for the information it finds to display as the teaser text, it looks for the description metadata generated for a page or for the first text that is between
tags.
My understanding is that I have 3 choices:
1. wait for this issue to get fixed in which case it would be great to get a ballpark understanding of when (1 month, 2 years, 6 months, etc).
2. redraw the entire theme so that the conditions I mention above will be satisfied. UGGGHHHH.
3. install something like the RDF module that will hopefully generate all of that on the fly.
Although #3 is interesting, it seems like overkill? Does anyone have experience with this?
It would be great to understand if I have other solutions I am not aware of, or if anyone has thoughts about this!
Thanks.
Comment #13
greta_drupal commentedMonth and a half and no response from the developer on this bug? Disappointing.
Comment #14
ferdi commentedSee http://drupal.org/node/1106732
Comment #15
t.a. barnhart commentedi am having the same problem. i can manually change the text being sent to FB, but the available thumbnails do not include one of my embedded video -- FB has no trouble when i include the page URL for my Vimeo page. it's like the video is invisible to FB on Drupal.