Удобный CONTENT

в этом примере я покажу как удобней всего (по мне так) организовать CONTENT объект при этом отделив данные от вида.

классический способ использования CONTENT

some.ts.obj = CONTENT
some.ts.obj{
  #Обрамляем наш объект, контейнер для вывода записей блога
  wrap = <div class="posts">|</div> 
  table = [some_table]
  select{
    ... bla bla bal ... # см. select http://typo3.org/documentation/document-library/references/doc_core_tsref/4.2.1/view/1/5/#id4288915
  }
  #вот здесь пошел объект вывода.
  #представим что у нас запись блока и мы выводом, заголовок, дату и текст
  renderObj = COA
  renderObj{
    #Обрамляем каждую запись, контейнер для вывода поста
    wrap = <div class="post">|</div>
    10 = TEXT
    10{
      field = title
      wrap = <h1>|</h1>
    }
    20 = TEXT
    20{
      field = date
      wrap = <span>|</span>
      strftime = [strftime format]
    }
    30 = TEXT
    30{
      field = bodytext
      wrap = <div class="post_body">|</div>
    }
  }
}

как видем из этого примера шаблон записи блога «размазан» по конфигурации content объекта

мой способ (отделяем данные от вида):

some.ts.obj = CONTENT
some.ts.obj{
  #Обрамляем наш объект, контейнер для вывода записей блога
  wrap = <div class="posts">|</div> 
  table = [some_table]
  select{
    ... bla bla bal ... # см. select http://typo3.org/documentation/document-library/references/doc_core_tsref/4.2.1/view/1/5/#id4288915
  }
 
  renderObj = COA
  renderObj{
    #ДАННЫЕ
    10 = LOAD_REGISTER
    10{
      post_title.cObject = TEXT
      post_title.cObject.field = title
 
      post_date.cObject = TEXT
      post_date.cObject{
        field = date
        strftime = [strftime format]
      }
      post_body.cObject = TEXT
      post_body.cObject.field = bodytext
    }
 
    #ВИД
    20 = TEXT
    20{
      value(
<div class="post">
  <h1>{register:post_title}</h1>
  <span>{register:post_date}</span>
  <div class="post_body">{register:post_body}</div>
</div>
      )
      insertData = 1
    }
  }
}

преимущества такого способа:
1. Компактность
2. Прозрачность

Оставьте отзыв