Как связать два плагина новостей для Typoscript

Я должен показать на своей отдельной странице: сингл и список новостей с одинаковыми категориями сингла. У меня есть два плагина на моей бэкэнд-странице, и я пытался назначить категории одиночных в список для typoscript, но я не смог этого сделать.

Это код, я использовал page.x для значений отладки и перехвата:

page.100 = TEXT
page.100.data = GP:tx_ttnews|tt_news
page.100.wrap = The single tt_news id is: |

page.100.data = GP:tx_ttnews|cat
page.100.wrap = The category of single is: |

page.110 = TEXT
page.110 
{
  value = { register:newsCategoryUid }
  insertData = 1
  wrap = - Categories: |
}

plugin.tt_news 
{
  categorySelection = { register:newsCategoryUid }
  #show only selected categories
  categoryMode = 1
}

person César Dueñas    schedule 15.10.2016    source источник


Ответы (2)


Не полностью видно, что вы пытаетесь. Я думаю, что лучше всего поместить значение cat во временный объект. У вас есть плагины, вставленные TypoScript или как Content Element? Вы используете tt_news, а не новости Джорджа Рингера, верно?

temp.tx_news_catId = TEXT
temp.tx_news_catId.data = GP:tx_ttnews|cat
temp.tx_news_catId.intval = 1

page.110 < temp.tx_news_catId
page.110.wrap = Category: |

plugin.tt_news 
{
  categorySelection < temp.tx_news_catId
  # you need to use data not categorySelection = {...} <- that should 
  # only work on constants
  # but only works if categorySelection capabilities
  #categorySelection.data = register:newsCategoryUid
  #show only selected categories
  categoryMode = 1
}

(Непроверенный TypoScript)

надеюсь, это поможет вам немного

PS: Вы проверили, есть ли у categorySelection возможности stdWrap?

person HR123    schedule 15.10.2016
comment
Да, в качестве элемента контента вставлены два плагина, и я использую tt_news. - person César Dueñas; 17.10.2016

Я действительно не понимаю, что вы хотите сделать, может быть, это немного поможет:

Если вы хотите показать в подробностях статьи о действиях с той же категорией, что и текущая, вы можете использовать фрагмент, подобный этому:

Добавьте это к Detail.html, который передаст uid первой категории объекту TypoScript lib.tx_news.relatedByFirstCategory.

<f:if condition="{newsItem.firstCategory}">
        <f:cObject typoscriptObjectPath="lib.tx_news.relatedByFirstCategory">{newsItem.firstCategory.uid}</f:cObject>
</f:if>

и ТС:

lib.tx_news.relatedByFirstCategory = USER
lib.tx_news.relatedByFirstCategory {
    userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
    extensionName = News
    pluginName = Pi1
    vendorName = GeorgRinger

    switchableControllerActions {
        News {
            1 = list
        }
    }

    settings < plugin.tx_news.settings
    settings {
        relatedView = 1
        detailPid = 31
        useStdWrap := addToList(categories)
        categories.current = 1
        categoryConjunction = or
        overrideFlexformSettingsIfEmpty := addToList(detailPid)
        startingpoint = 78
    }
}

Я взял это из руководства.

person Georg Ringer    schedule 17.10.2016
comment
Спасибо!! Это решение помогает в tx_News, но в нашем текущем проекте мы используем tx_ttnews. Но мы будем использовать tx_news в новых проектах - person César Dueñas; 18.10.2016