redes - boton share de facebook
Botón de compartir de Facebook y texto personalizado (9)
¿Hay alguna manera de hacer que Facebook comparta botón que publica texto personalizado en la pared o noticias?
Esta es la solución actual (diciembre de 2014) y funciona bastante bien. Cuenta con
- abrir una ventana emergente
- fragmento autónomo, no requiere nada más
- funciona con o sin JS. Si JS está desactivado, la ventana de compartir aún se abre, aunque no como una pequeña ventana emergente.
<a onclick="return !window.open(this.href, ''Share on Facebook'', ''width=640, height=536'')" href="https://www.facebook.com/sharer/sharer.php?u=href=$url&display=popup&ref=plugin" target="_window"><img src=''/_img/icons/facebook.png'' /></a>
$ url var debe definirse como la URL para compartir.
Este es un simple diálogo de alimentación que ofrece Facebook. Lea aquí para obtener más detalles
Para proporcionar parámetros personalizados a Facebook, es mejor que solo proporcione el enlace y Facebook obtiene su Título + Descripción + Imagen automáticamente de la página que está compartiendo. Para "ayudar" a la API de Facebook a encontrar esas cosas, puede colocar las siguientes cosas en el encabezado de la página que está compartiendo:
<meta property="og:title" content="title" />
<meta property="og:description" content="description" />
<meta property="og:image" content="thumbnail_image" />
Si la página no está bajo su control, use lo que AllisonC ha compartido anteriormente.
Para el comportamiento de tipo de vista modal emergente:
Use su propio botón / enlace / texto y luego puede usar un tipo de ventana de vista modal de esta manera:
<script type= ''text/javascript''>
$(''#twitterbtn-link,#facebookbtn-link'').click(function(event) {
var width = 575,
height = 400,
left = ($(window).width() - width) / 2,
top = ($(window).height() - height) / 2,
url = this.href,
opts = ''status=1'' +
'',width='' + width +
'',height='' + height +
'',top='' + top +
'',left='' + left;
window.open(url, ''twitter'', opts);
return false;
});
</script>
donde twitterbtn-link y facebookbtn-link son identificadores de anclas.
Pruebe este sitio http://www.sharelinkgenerator.com/ . Espero que esto ayude.
Puede personalizar el cuadro de diálogo de compartir de Facebook utilizando el SDK de JavaScript asíncrono provisto por Facebook y configurando sus valores de parámetro
Echa un vistazo al siguiente código:
<script type="text/javascript">
$(document).ready(function(){
$(''#share_button'').click(function(e){
e.preventDefault();
FB.ui(
{
method: ''feed'',
name: ''This is the content of the "name" field.'',
link: ''URL which you would like to share '',
picture: ‘URL of the image which is going to appear as thumbnail image in share dialogbox’,
caption: ''Caption like which appear as title of the dialog box'',
description: ''Small description of the post'',
message: ''''
}
);
});
});
</script>
Antes de copiar y pegar el siguiente código, primero debe inicializar el SDK y configurar la biblioteca de jQuery. Haga clic aquí para saber paso a paso cómo establecer la información sobre el mismo.
Tienes varias opciones:
- Utilice el botón Compartir de FB estándar y establezca el texto a través de la API de Open Graph y metaetiquetas en su página.
- En lugar de Compartir, use el método stream.publish de FB.ui , que le permite controlar la URL, el título, el título, la descripción y la miniatura en tiempo de ejecución.
- O use http://www.facebook.com/sharer.php con los parámetros adecuados.
Usamos algo como esto [usar en una línea]:
<a title="send to Facebook"
href="http://www.facebook.com/sharer.php?s=100&p[title]=YOUR_TITLE&p[summary]=YOUR_SUMMARY&p[url]=YOUR_URL&p[images][0]=YOUR_IMAGE_TO_SHARE_OBJECT"
target="_blank">
<span>
<img width="14" height="14" src="''icons/fb.gif" alt="Facebook" /> Facebook
</span>
</a>
podría combinar la idea de window.open
con la función window.open
: http://www.w3schools.com/jsref/met_win_open.asp
function openWin(url) {
myWindow = window.open(url, '''', ''width=800,height=400'');
myWindow.focus();
}
Y luego, en cada enlace, llama a la función openWin con la url de la red social correcta.
use esta función derivada del enlace provisto por IJas
function openFbPopUp() {
var fburl = '''';
var fbimgurl = ''http://'';
var fbtitle = ''Your title'';
var fbsummary = "your description";
var sharerURL = "http://www.facebook.com/sharer/sharer.php?s=100&p[url]=" + encodeURI(fburl) + "&p[images][0]=" + encodeURI(fbimgurl) + "&p[title]=" + encodeURI(fbtitle) + "&p[summary]=" + encodeURI(fbsummary);
window.open(
sharerURL,
''facebook-share-dialog'',
''width=626,height=436'');
return false;
}
O también puede usar la función FB.ui más reciente si usa FB JavaScript SDK para una función de devolución de llamada más controlada.
referir: FB.ui
function openFbPopUp() {
FB.ui(
{
method: ''feed'',
name: ''Facebook Dialogs'',
link: ''https://developers.facebook.com/docs/dialogs/'',
picture: ''http://fbrell.com/f8.jpg'',
caption: ''Reference Documentation'',
description: ''Dialogs provide a simple, consistent interface for applications to interface with users.''
},
function(response) {
if (response && response.post_id) {
alert(''Post was published.'');
} else {
alert(''Post was not published.'');
}
}
);
}