Ich habe ein Raummodell und möchte einen Share-Button für Facebook erstellen. Also entschied ich mich, dies mit der Shareur-URL-Methode zu tun. Ich möchte ein Facebook-Icon auf der show.html.erb (Raumansicht) haben, wo ein Benutzer oder Besucher das Zimmer auf Facebook teilen kann. Wenn ich auf den Link klicke, werde ich nach Facebook weitergeleitet, wo ich den Link manuell eingeben muss und nicht automatisch den, den ich teilen möchte. Wenn ich die show.html.erb link_to in bin Aktualisierung:Facebook Share-Taste funktioniert nicht?
<%= link_to image_tag('facebook_icon_red.png'), 'http://www.facebook.com/sharer.php?u=<%= yield :url %>', :target => :blank %>
Dann bin ich erhalte eine Fehlermeldung:
Wie kann ich diese Arbeit machen?
application.html.erb
<!DOCTYPE html>
<html>
<head>
...
...
<!-- for Facebook -->
<meta property="og:title" content="<%= @room.listing_name %>" />
<meta property="og:type" content="room" />
<meta property="og:image" content="" />
<meta property="og:url" content="<%= room_url(@room) %>" />
<meta property="og:description" content="<%= @room.detailed_description %>" />
</head>
<body>
<!-- Facebook Sharing Settings-->
<div id="fb-root">
</div>
<script src="http://connect.facebook.net/en_US/all.js" type="text/javascript"></script>
<script type="text/javascript">
FB.init({
appId: MY_ID(SOME NUMBERS),
status: true,
cookie: true,
xfbml: true
});
FB.Canvas.setAutoResize();
</script>
...
...
...
</body>
</html>
show.html.erb (Zimmer)
...
<!-- Do you like this Accommodation? -->
<%= link_to image_tag('facebook_icon_red.png'), "http://www.facebook.com/sharer.php?u=", :target => :blank %>
FB.ui(
{
method: 'feed',
name: 'Facebook Dialogs',
link: 'http://developers.facebook.com/docs/reference/dialogs/',
picture: 'http://fbrell.com/f8.jpg',
caption: 'Reference Documentation',
description: 'Dialogs provide a simple, consistent interface for applications to interface with users.',
message: 'Facebook Dialogs are easy!'
},
function(response) {
if (response && response.post_id) {
alert('Post was published.');
} else {
alert('Post was not published.');
}
}
);
Wofür nennen Sie FB.ui mit der Feed-Methode? – CBroe
Die Facebook-JavaScript-API sollte mir erlauben, zu teilen und mir einen Rückruf zu geben. [Quelle] (http://stackoverflow.com/questions/4980061/twitter-and-facebook-share-with-callbacks/6253936#6253936) – trickydiddy
Ja, aber es hat keine Verbindung zu Ihrem Link überhaupt, und dieser Link löst aus hier teilen. Ihr FB.ui-Aufruf hat nichts mit diesem Link zu tun und geschieht automatisch, ohne dass der Benutzer etwas anklickt. Das macht wenig Sinn. – CBroe