33

www.twitter.com/share関数を使用するカスタムツイートボタンを使用してサイトを作成していますが、問題はツイートテキストにハッシュ「#」文字が含まれていることです。

例えば:

http://www.twitter.com/share?url=www.example.com&text=I+am+eating+#branstonpickel+right+now
ツイートのテキストは「私は食べています」と表示され、ハッシュとその後のすべてが省略されます。

Twitterフォーラムをざっと見て、ハッシュ「#」文字を共有URLの一部にすることはできないことを知りました。
https://dev.twitter.com/discussions/512#comment-877では、次のように言われています

ハッシュはURL内の特殊文字(ドキュメントフラグメントを識別する)であるため、ハッシュおよびそれに続くものはサーバーに送信されません。

URLEncodeする必要があるため、%23を使用します

テストリンクの2番目のポイントを試したとき:

www.twitter.com/share?url=www.example.com&text=I+am+eating+%23branstonpickel+right+now
ツイートのテキストは、「今、%23branstonpickelを食べています」と表示されました。文字通り、変換する代わりに%23が含まれています。ハッシュに。

わいせつな質問で申し訳ありませんが、私が間違っているのは誰か知っていますか?
フィードバックをいただければ幸いです:)

4

8 に答える 8

82

これが基本的な設定のようです。

https://twitter.com/intent/tweet?
url=<url to tweet>
text=<text to tweet>
hashtags=<comma separated list of hashtags, with no # on them>

これにより、次のツイートが事前に作成されます。<text> <url> <hashtags>

上記の例は次のようになります: https ://twitter.com/intent/tweet?url = http://www.example.com&text=I+am+eating+branston+pickel+right+now&hashtags=bransonpickel,pickles

以前はハッシュタグパラメータにバグがありました...最初のn-1個のハッシュタグしか表示されませんでした。現在、これは修正されています。

于 2012-12-12T22:09:25.607 に答える
56

URLでハッシュ(#)の代わりに%23を使用できます。

http://www.twitter.com/share?url=www.example.com&text=I+am+eating+%23branston+%23pickel+right+now

于 2014-03-25T10:55:03.680 に答える
3

私は間違っているかもしれませんが、ハッシュタグはあなたのツイートの最後に表示される別の変数として渡される必要があると思います。

http://www.twitter.com/share?url=www.example.com&text=I+am+eating+branston+pickel+right+now&hashtag=bransonpickel

結果は「私は今ブランストンピッケルを食べています#branstonpickle」になります

別のメモで、私はピッケルがピクルスであるべきだと思います!

乾杯

トビー

于 2012-02-08T16:09:14.073 に答える
2

PHPを使用している場合は、次を使用できます。

<?php echo 'http://www.twitter.com/share?' . http_build_query(array(
    'url' => 'http://www.example.com',
    'text' => 'I am eating #branstonpickel right now'
)); ?>

これにより、すべてのURLエンコードが実行され、読みやすくなります。

http_build_queryの詳細については、PHPマニュアルを参照してください:http: //us2.php.net/http_build_query

于 2014-07-29T10:05:59.640 に答える
1

encodeURIComponentを使用してURLをエンコードします

于 2016-10-26T21:42:10.293 に答える
0

line jump、、、および特殊なUnicodeが含まれるURLの場合#、次のように機能します。@

var lineJump = encodeURI(String.fromCharCode(10)),
hash = "%23", arobase="%40",
tweetText = 'https://twitter.com/intent/tweet?text=Le signe chinois '+hans+' '+item.pinyin+': '+item.definition.replace(";",",")+'.'
    +lineJump+'Merci '+arobase+'Inalco_Officiel '+arobase+'CRIparis ❤️ '
    +lineJump+hash+'Chinois '+hash+'MOOC'
    +lineJump+'https://hanzi.cri-paris.org/',
tweetTxtUrlEncoded = tweetText+ "" +encodeURIComponent('#'+lesson+encodeURIComponent(hans));
于 2018-02-08T12:24:41.543 に答える
0

urlencode

https://twitter.com/intent/tweet?text=<?= urlencode("I am eating #branstonpickel right now"); ?>"

于 2020-01-03T06:56:06.490 に答える
0

このコードを使用して変更するだけです

<a href="https://twitter.com/intent/tweet?text=hello%20this%20%23hashtag"> </a>

20%はスペースを意味します23%はハッシュタグを意味します

于 2021-12-01T16:49:45.180 に答える