私は現在、Twitter で動作する短い URL スクリプトに取り組んでいます。
現在、目的のツイート テキストを長い URL のテキストエリアに入力しています。これまでのところ、URLを検出する次のものがあります。
$regex = "/(http|https|ftp|ftps)\:\/\/[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(\/\S*)?/";
if ( preg_match( $regex, $text, $url ) ) { // $url is now the array of urls
echo $url[0];
}
ツイートを入力すると、次のようになります。
hi here is our new product, check it out: www.mylongurl.com/this-is-a-very-long-url-and-needs-to-be-shorter
次に、新しい URL の末尾に追加するランダムな文字をいくつか生成しているので、最終的には shorturl.com/ghs7sj のようになります。
クリックすると、shorturl.com/ghs7sj www.mylongurl.com/this-is-aver-long-url-and-needs-to-be-shorter にリダイレクトされます。これはすべてうまくいきます。
私の質問は、ツイートのテキストにまだ長い URL が含まれていることです。長い URL を短い URL に置き換える方法はありますか? 新しいコードが必要ですか? または、これを行うために上記を適応させることはできますか?
私の望む結果はこれです:
hi here is our new product, check it out: shorturl.com/ghs7sj
これは wordpress に基づいているため、現在、すべての情報は posts および post_meta テーブルに保存されています。ツイートには 1 つの URL しかないことに注意してください。