widgets-js. Al añadir un widget de X a tu página, este archivo JavaScript se incluye en el código HTML de inserción, o puedes incluir directamente https://platform.x.com/widgets.js en tu página. (Consulta la documentación de configuración de X for Websites para ver un fragmento de código recomendado).
De forma predeterminada, widgets-js encontrará el marcado en una página y convertirá el marcado básico y funcional en widgets interactivos enriquecidos. Además, existen varias funciones de widgets-js que te permiten trabajar con contenido de X de forma dinámica:
Crear widgets en tiempo de ejecución con factory functions
Los widgets pueden generarse en tiempo de ejecución, sin necesidad de un código HTML de inserción. Un conjunto de factory functions puede generar cualquier tipo de widget:- twttr.widgets.createShareButton
- twttr.widgets.createFollowButton
- twttr.widgets.createHashtagButton
- twttr.widgets.createMentionButton
- twttr.widgets.createTimeline
- twttr.widgets.createTweet
Botones
createShareButton, createFollowButton, createHashtagButton y createMentionButton reciben argumentos similares.
Argumento principal
El primer argumento es obligatorio y es único para el tipo de botón. Proporciona una cadena que represente uno de los siguientes:url: la URL que se compartirá.screen_name: el screen_name de un usuario al que seguir o mencionar.hashtag: hashtag que se publicará y se mostrará en el botón.
Argumentos adicionales:
target: Obligatorio. El elemento en el que se renderizará el widget.options: Opcional. Un objeto hash con opciones adicionales para configurar el widget.
Los widgets normalmente se renderizan como elementos iframe. Cuando un iframe se mueve dentro del DOM, el navegador recargará su contenido. Para los botones esto puede desperdiciar ancho de banda, mientras que para Posts y timelines provocará que se pierda el contenido inyectado dinámicamente. Utiliza el argumento target para renderizar los widgets en su ubicación final en una página. Si necesitas retrasar la visualización de un widget, usa CSS para posicionar el widget fuera de la pantalla hasta que se necesite.
create devuelve una Promise. Puedes ejecutar código después de que se haya creado un widget pasando un callback a:
Ejemplos
Crear un botón de compartir para una URL:Opciones
Se pueden pasar configuraciones y opciones adicionales a las factory functions, como en los ejemplos anteriores. Configuración adicional para todos los widgets
Opciones de configuración adicionales para widgets de tipo botón
Opciones adicionales del botón Post
Posts
createTweet recibe el ID de un Post y luego los mismos argumentos adicionales que los botones.
Argumentos
tweetId: el ID de un Post que se renderizará. (Debe proporcionarse comoString, ya que los IDs de X se generan a partir de enteros de 64 bits y los enteros de JavaScript están limitados a 53 bits).target: Obligatorio. El elemento en el que se renderizará el widget.options: Opcional. Un hash de opciones adicionales para configurar el widget.
Ejemplos
Crear un Post incrustado para un Post del US Department of Interior:Opciones
Timelines
createTimeline recibe la definición de la fuente de datos para un timeline. Los argumentos adicionales son coherentes con los Posts incrustados.
Argumentos
- data source: Obligatorio. El objeto de definición de la fuente de datos para el contenido que se mostrará en el widget. Puede ser una cadena de widget ID para un widget legado.
target: Obligatorio. El elemento en el que se renderizará el widget.options: Opcional. Un hash de opciones adicionales para configurar el widget.
Ejemplos
Crear un widget de timeline:Ejemplo
Fuente de datos
La definición de la fuente de datos describe qué contenido hidratará el timeline incrustado. Hay varios tipos de fuentes de datos: profile; list; URL; widget configuration.Profile
Para alimentar un timeline incrustado con Posts de un usuario individual, utiliza una fuente de datosprofile. Para ello, establece sourceType en profile y establece uno de screenName o userId.
List
Para alimentar un timeline incrustado con una lista de X, utiliza una fuente de datoslist. Establece sourceType en list y establece tanto ownerScreenName como slug, o establece un id.
URL
Para alimentar un timeline incrustado con contenido de X representado por una URL, utiliza una fuente de datosurl. El contenido admitido incluye perfiles y listas.
Opciones
Todos los parámetros descritos anteriormente para todos los widgets y para los Posts incrustados también se aplican a los timelines incrustados.
Para más información sobre las opciones para personalizar los Timelines incrustados, consulta Timelines incrustados.
Estas funciones permiten integrar el contenido de un usuario de X en tu sitio de forma dinámica en una aplicación JavaScript, e integrar las interacciones del usuario en la experiencia de tu propia aplicación.
Por favor, haz preguntas y comparte tu código y ejemplos en el foro de desarrolladores. También puedes consultar la documentación principal de X for Websites.