はじめまして。
今、FACEBOOKの内容を
XML+PHPで取得し、自サイトに表示させる内容のものをやっているのですが
facebookに投稿されたらcronで定期的に見て、自サイトにもアップする。
一度XMLデータを整形し、データベースに格納。
データベースからそのまま回す
といった感じに今しております。
ただ、どうしても画像が表示されたり、されなかったりして困っています。
file_get_contentsをした後の
(string)$xml->channel->item->$i->descriptionの中に
画像も含めた本文データがあるようです。
ただし、その画像はデフォルトは小さい状態です。
facebookと同じように大きい写真で写真+記事と表示させたいのです。
URLを一部書き換えたりすると、大きな写真が取得できるものもありますが
具体的にはURLのうち !/v.*?0/! を抜くと大きいものは出るときは出る。
ただURLですが
scontent~から始まるものと
fbcdn-sphotos~からはじまるもの
サイズもs130x130の部分を書き換えると大きくなるもの、ならないもの
てんでバラバラで str_replace(preg_replace)をどのようにすればいいかで困っています。
中には一般サイトからの直リン?と思われるURLもありました。
また、シェアした投稿、編集済みになってしまった投稿は
画像などがうまく表示されない可能性が高い? と今の段階では踏んでおります。
このようにfacebookの内容を XML+PHPで
自サイトに表示させて運用されたことのある経験のある方、どのようにすればいいか、ご教示願いませんでしょうか?
当方でしたいことは
①画像が上(これはなんとかできています。)
②文章が下(これはなんとかできています。)
③画像は大きく表示(できるものと、そうでないものが混在)
④画像は代表1枚のみ表示(サムネイルで表示しない)
↑やり方があっているかは不明だが、一度配列に入れて $img[0]だけを呼び出すと、できているような気がする…
⑤画像のリンク切れを起こさない
⑤がどうしても無理なら、リンク切れしているデータに関しては
<img>をとっぱらう というのも考えています。
よろしくお願いします。
みんなの回答 2 件
つまり、俺らにタダで仕事をしろってことか?
出るときはでる、出ないときはでない、リンク切れてたら削る、とまで頭の中でまとまってるんなら、全画像HTTPで読みに行ってステータス取得すればよろしいかと。
っていうか、聞きたいことってphpがどうとかって事じゃなくてFBの画像URLのサムネと原画のファイル名の法則を知りたいってことでしょ?
関連するトピックス