2

最新のツイート「ウィジェット」を Symfony2 プロジェクトに挿入しようとしています。私は、完璧に仕事をこなす PHP で書かれた理想的なスクリプトを見つけました。

ただし、サードパーティの PHP ファイルを Symfony2 プロジェクトに配置するのに最適な場所がわかりません。すべての twig ファイルが存在するのと同じフォルダーに配置し、名前を tweets.php.twig に変更し、さらにそれらを web フォルダーに配置しました。Twitter フィードを必要とする twig ファイルにファイルを含めようとすると、ファイルが見つからないというエラーが表示されます。

私は正しい考えを持っていますか、それとも PHP を twig ファイルに変換するか、PHP スクリプトをコントローラーに書き込む必要がありますか?

4

1 に答える 1

3

推奨される方法は、ツイートウィジェットのすべてのロジックをカプセル化するSymfony2バンドルを作成することだと思います。次に、バンドルコントローラを呼び出し、応答をTwigテンプレートに渡します。

それが複雑すぎる場合、またはもっと速くて汚いものが必要な場合は、TweetWidgetController.phpのようなコントローラーを作成し、widgetActionのようなアクションとしてそこにコードを配置できます。ツイートウィジェットの出力をSymfonyレスポンスオブジェクトで返すようにしてください。

次に、メインコントローラーから-次のようなことができます

$widget = $this->forward('YourBundle:TweetWidget:widget', array('twitterid' => 'yourtwitterid'));

return $this->render('YourBundle:yourtemplate.html.twig',array('widget' => $widget->getContent()));

これで、Twigテンプレートで、次のように参照することで、好きな場所に配置できます。

{{ widget }}
于 2011-08-31T18:25:13.373 に答える