RSSフィードを生成し、投稿のタイトルやURLなどを取得する必要があります。スーパーフィーダーを使うことにしました。したがって、この状況では、私はSuperfeedrのサブスクライバーです。データを取得するためのコールバック(サブスクライバーURL)フィールドがありますが、コールバックファイルに何を書き込む必要があるのかわかりません。ネットの例のコードを調べましたが、例のコードについては何も見つかりませんでした。ところで、私はこのプロセスをPHPで実行したいと思います。したがって、このファイルに何を書き込む必要があるかを知っている場合は、コメントしてください。
2 に答える
ジョン、あなたはそれを手に入れたと思います...それは良いことです。ここで、PHPに何を書き込むか:このコールバックURL(PHPファイル)は、2つの異なるケースで呼び出されます。
- あなたの意図を確認するために(あなたが購読したいことを確認するために)
- 新しいコンテンツを通知します。
私はPHPの人間ではありませんが、アルゴリズムについて説明します
2つを区別するには、リクエストのタイプを確認する必要があります。GETリクエストの場合はインテントの検証であり、POSTリクエストの場合は新しいコンテンツの通知です。
コンテンツの検証の場合は、GETパラメータとして提供されているhub.challengeをエコーする必要があります(echo $_GET['hub.challenge'];
動作するはずです)。また、本当にサブスクリプションを希望していることを確認する必要がありますが、アプリのロジックと私はそれを知りません(ほとんどの人$_GET['hub.topic']
はデータベースを検索し、そこにある場合はチャレンジをエコーします。そうでない場合は、何かをエコーします)そうしないと。
新しいコンテンツの通知の場合は、もう少し複雑です。HTTPリクエストのBODYにアクセスする必要があります(ここでも、PHPがどのように機能するかはわかりませんが、誰かが助けてくれると確信しています)。次に、それを解析してタイトルとURLを抽出し、必要に応じて処理します(ほとんどの場合)人々はそれをデータベースに保存します)。
これがお役に立てば幸いです。
私はこのコードをphpで使用しています。それが誰かを助けることを願っています
<?php
if(isset($_Get["hub_challenge"])){
echo $_Get["hub_challenge"];
return;
}