LinkedIn上的共享链接,如Twitter

问题描述 投票:0回答:1

我需要页面上的一些链接在Facebook,Google Plus,LinkedIn和Twitter上共享。我的链接看起来像这样:http://www.example.com/subdomain?key1=val1&key2=val2&key3=val3

几乎在所有情况下,共享URL都像这样:http://www.example.com/subdomain?key1=val1

删除第一个&之后的所有键和值。示例网址生成代码

<a href="http://www.linkedin.com/shareArticle?mini=true&url=~$requestedUrl|escape:'url'`" title="Share this on Linkedin" target="_new" class="lin"></a>

这将导致以下结果:

<a href="http://www.linkedin.com/shareArticle?mini=true&url=http://www.example.com/subdomain?key1=val1&amp;key2=val2&amp;key3=val3" title="Share this on Linkedin" target="_new" class="lin"></a>

$requestedUrl是从我的PHP发送的,并且将继续在Facebook,gplus,linkedin和Twitter之间共享。

php facebook twitter
1个回答
0
投票

快速浏览您的完整URL ...

<a href="http://www.linkedin.com/shareArticle?mini=true&url=http://www.example.com/subdomain?key1=val1&amp;key2=val2&amp;key3=val3" title="Share this on Linkedin" target="_new" class="lin"></a>

所以,您DID转义了&BUT!您使用了HTML转义。您需要的是URL转义。它们非常非常不同。

&变成带有HTML转义符的&amp;。但是&变成具有URL编码的%26。因此,您的代码应为...

<a href="http://www.linkedin.com/shareArticle?mini=true&url=http%3A%2F%2Fwww.example.com%2Fsubdomain%3Fkey1%3Dval1%26key2%3Dval2%26key3%3Dval3" title="Share this on Linkedin" target="_new" class="lin"></a>

因此,例如,我想共享此URL:http://www.revoltlib.com/?id=17。里面也有?!这是共享URL结果...

https://www.linkedin.com/sharing/share-offsite/?url=http%3A%2F%2Fwww.revoltlib.com%2F%3Fid%3D17

为我工作:

无论您定义或从中获取escape:'url',似乎都在完全错误地转义了类型。

© www.soinside.com 2019 - 2024. All rights reserved.