[TYPO3-Solr] Custom Index on tt_content is not refreshe automatically

Holger hbirkner at gv-bayern.de
Mon Oct 14 10:07:51 CEST 2013


Ok, I changed my indexing configuration and now it hast the same name like the table that I try to index.
But still the changed date in the tx_solr_indexqueue_item table does not change when I change a tt_content element.

@ Dmitry
The articles are tt_content elements that have some additional fields and I am indexing tt_content.
I have created an extension for the additional fields.

@Oliver
1 ) is it not possible to index tt_content that is on a folder (in typo3)
I thought folders and pages are more or less the same thing in typo3

2) My content is in tt_content which is a TCA table, I think.
I also have extended the TCA of tt_content in my extension.

Thanks
Holger

PS.: here is my new indexing template

plugin.tx_solr.index {
  # für alle indizes
  # typo3 hat timestamp --> solr isodate
  fieldProcessingInstructions {
    changed = timestampToIsoDate
    created = timestampToIsoDate
    endtime = timestampToIsoDate
    sortDate_dateS = timestampToIsoDate
  }

  queue {
    tt_content = 1
    tt_content {
      # tabelle definieren, die die inhalte enthält
      fields {
        
        
        title = header
                
        ##################
        # Kurztext
        ##################
        
        abstract = shorttext
        
        
        ##################
        # Text
        ##################        
        
        content = SOLR_CONTENT
        content.field = bodytext
        
        ##################
        # Schlagworte
        ##################
        
        keywords = SOLR_MULTIVALUE
        keywords.field = keywords

        ##################
        # Datum (Sortierung)
        ##################
        
        sortDate_dateS = sort_date
        
        ##################
        # Kategorien
        ##################
        cat_stringM = SOLR_MULTIVALUE
        cat_stringM {
          cObject = CONTENT
          cObject {
            table = tt_content
            select {
              #recursive = 30
              uidInList.field = uid
              pidInList = 0
              selectFields = sys_category.*
              join = sys_category_record_mm ON tt_content.uid = sys_category_record_mm.uid_foreign JOIN sys_category ON sys_category.uid = sys_category_record_mm.uid_local
              andWhere = ((sys_category_record_mm.tablenames = 'tt_content' AND NOT tt_content.fe_group="") OR (sys_category_record_mm.tablenames = 'tt_content' AND tt_content.fe_group=""))
              andWhere = tt_content.deleted = 0
              andWhere = sys_category.pid = 510
              
              #AND sys_category.pid = {$uid.pages.tags} --> categorien, die auf einer bestimmten pid erstellt wurden (brauchen wir nicht)
            }
            renderObj = COA
            renderObj {
              10 = TEXT
              10.field = title
              10.wrap = |,
            }
          }
          separator = ,
          removeEmptyValues = 1
        }
        
        ##################
        # Beitragstyp
        ##################
        typeString_stringS = CASE
        typeString_stringS {
          key.field = CType
          
          article = TEXT
          article {
            value = Artikel
          }
          circular = TEXT
          circular {
            value = Rundschreiben
          }
        }
        
        
        
        url = TEXT
        url {
          typolink.parameter = {$plugin.tx_article.artikelAnsichtPID}
          typolink.additionalParams.dataWrap = &tx_article_pi2[articleID]={field:uid}&tx_article_pi2[action]=show&tx_gvbarticle_pi2[controller]=Article
          #typolink.additionalParams.insertData = 1
          typolink.returnLast = url
          typolink.useCacheHash = 0
        }
        
        #####################
        # Titel für Sortierung
        #####################
        sortTitle_stringS  = header

        circularNumber_stringS = CASE
        circularNumber_stringS {
          key.field = CType
          circular = TEXT
          circular {
            field = circular_number
          }
        }
        
      # zusaetzliche Einschränkung, contenttypen indiziert werden sollen
      # und deleted muss 0 sein
      additionalWhereClause = ctype IN('article','circular') AND deleted = 0
    }
  }
}


More information about the TYPO3-project-solr mailing list