Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 来自EXT:News的新闻小部件_Php_Plugins_Typo3_Tx News_Typo3 Extensions - Fatal编程技术网

Php 来自EXT:News的新闻小部件

Php 来自EXT:News的新闻小部件,php,plugins,typo3,tx-news,typo3-extensions,Php,Plugins,Typo3,Tx News,Typo3 Extensions,上周我从TYPO3开始,现在我必须为仪表板插件做一个扩展(小部件)(在FE中,用户可以从特定小部件列表中选择并将它们放置在此仪表板上) 小部件应该能够显示所有新闻中的最新5条,并且(通过下拉菜单)只能显示特定类别的最新5条新闻 对于新闻,我们使用EXT:News 这就是我现在被困的地方 在我的自定义扩展中,如何从新闻扩展中访问应得的数据(标题、类别和正文)以将其传递到我的模板中?这非常容易,因为您可以完全重用NewsDemand对象进行筛选。一个例子如下所示: $newsRepository =

上周我从TYPO3开始,现在我必须为仪表板插件做一个扩展(小部件)(在FE中,用户可以从特定小部件列表中选择并将它们放置在此仪表板上)

小部件应该能够显示所有新闻中的最新5条,并且(通过下拉菜单)只能显示特定类别的最新5条新闻

对于新闻,我们使用EXT:News

这就是我现在被困的地方


在我的自定义扩展中,如何从新闻扩展中访问应得的数据(标题、类别和正文)以将其传递到我的模板中?

这非常容易,因为您可以完全重用
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);

看看
新闻存储库
,它处理了需求对象的所有可能性。

对于刚接触打字3的人来说,你的答案有点神秘,但经过一点研究,我想我知道该怎么做了。谢谢:)如果您有任何其他问题,请随时提问-不过还需要更多信息,例如您的扩展是如何完成的(是否使用extbase)…首先,我对objectManager有一些问题。我无法使用
$this->objectManager->…
,但必须通过
\TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(…)
实例化它。但它现在起作用了。我现在想知道的是:有没有一种方法可以得到所有的类别?我必须在前端创建一个下拉列表,列出类别和子类别,以过滤结果。例如,我们有一个名为Unternehmen的类别,它是Unternehmensmitteilungen的子类别,顺便说一句:我们使用extbase和fluidThink,我想我自己找到了它。我是这样做的:
$categoryRepository=$objectManager->get('GeorgRinger\\News\\Domain\\Repository\\categoryRepository')$categories=$categoryRepository->findAll()