What gets shared
Change what one service posts
Give a service a template of your own and the widget uses it instead of the built-in one. This is how you add a via handle, a hashtag, or a different intent URL entirely.
The code
<div class="ats_kit ats_kit_size_32"> <a class="ats_btn_x"></a> <a class="ats_btn_facebook"></a> <a class="ats_btn_linkedin"></a> <a class="ats_dd"></a> </div>
A template, not a message
There is no option for the text to post, because there is no such thing across services. On X the message is the text parameter; on Bluesky and WhatsApp the URL is baked into the same field as the text. An option promising to set the message would produce the link twice on four services. Replacing the endpoint is honest about what you are taking over.
The slots you can use
The same ones the built-in templates use.
{url} the page being shared, already encoded
{title} the title, already encoded
{image} the image, when there is one
{instance} the Mastodon instanceWhat is refused
Only https, http, mailto and sms are accepted, checked as a whitelist rather than a list of things to ban. Anything else is ignored and the built-in template is used, so a typo costs you the customisation, never the button.
Live demo
The X button posts through a template that appends a via handle. The others are untouched.
Services (3 selected)
No service matches “”.
Button size
Shape
Circle is available when service names are off.
Behaviour
<script>
window.ats_config = window.ats_config || {};
window.ats_config.share_url = {
"x": "https://x.com/intent/post?url={url}&text={title}&via=addtosite"
};
</script>
<div class="ats_kit ats_kit_size_32">
<a class="ats_btn_x"></a>
<a class="ats_btn_facebook"></a>
<a class="ats_btn_linkedin"></a>
<a class="ats_dd"></a>
</div>
<script async src="//static.addtosite.com/widget.js"></script>Related
More in What gets shared