2016-08-29 10 views
1

先週、私はTYPO3で始まったので、Dashboardプラグインの拡張機能(ウィジェット)を作成する必要がありました(FEでは、ユーザーが特定のウィジェットのリストから選択してダッシュボード)。ニュースウィジェットからEXT:ニュース

ウィジェットはすべてのニュースのうち最新の5件を表示でき、(ドロップダウンを使用して)特定のカテゴリの最新の5件のニュースのみを表示できる必要があります。

ニュースについては、EXT:newsを使用しています。

それは私が今立ち往生している場所です。

私のカスタムエクステンションでは、ニュースエクステンションのデータ(タイトル、カテゴリ、本文)にアクセスしてテンプレートに渡すにはどうしたらいいですか?

答えて

2

フィルタリングのためにNewsDemandオブジェクトを完全に再利用できるので、これは非常に簡単です。例は次のようになります。

$newsRepository = $this->objectManager->get(NewsRepository::class); 
$demand = $this->objectManager->get(NewsDemand::class); 
$demand->setStoragePage('123'); 
$demand->setLimit(3); 
$demand->setCategories(['12', '34']); 
$demand->setCategoryConjunction('or'); 
$items = $newsRepository->findDemanded($demand); 
$this->view->assign('items', $items); 

は需要オブジェクトのすべての可能性を扱う NewsRepositoryを見てみましょう。

+0

TYPO3を初めて使った人にとっては、あなたの答えは少しわかりにくいですが、ちょっとした研究の後に私は何をすべきか分かります。ありがとうございました:) – codeFareith

+0

他の質問がある場合は、お気軽にお問い合わせください。エクステンションがどのように行われているか(extbaseを使用するかどうかなど)の詳細情報が必要です。 –

+1

まず、 objectManager。 '$ this-> objectManager - > ...'を使うことはできませんでしたが、 '\ TYPO3 \ CMS \ Core \ Utility \ GeneralUtility :: makeInstance(...)'でインスタンス化する必要があります。 しかし、今は動作します。 私が今知りたいことは:すべてのカテゴリを取得する方法はありますか? 結果をフィルタリングするために、カテゴリとサブカテゴリをリストするフロントエンドにドロップダウンを作成する必要があります。 たとえば、_Unternehmensmitteilungenのサブカテゴリである_Unternehmen_というカテゴリがあります。 Btw:extbaseと流体を使用しています – codeFareith

関連する問題