2009-07-05 5 views
6

У меня есть контент, который я хочу разместить на нескольких страницах моего сайта TYPO3. Я мог бы просто вставить это в шаблон, но я также хочу, чтобы этот контент был доступен для редактирования в редакторе Rich Text Editor.TYPO3: Как вставить содержимое страницы в шаблон

У меня возникла идея создать скрытую страницу, но я не знаю, как вставить этот контент в шаблон.

Требуется ли заявление о заглавии select?

Кроме того, в качестве последующего вопроса я могу добавить что-то, чтобы сказать, включите только страницы, у которых есть страница id как их непосредственный родитель в иерархии страниц.

ответ

7

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

[PIDinRootline = pages-uid, pages-uid, ...] 
temp.foo = RECORDS 
temp.foo { 
    tables = tt_content 
    source = ID # Enter the object's ID here 
} 
[end] 

С другой стороны, если вы хотите включить все записи из страниц, будучи детьми какой-либо другой страницы , затем попробуйте что-то вроде:

1 = CONTENT 
    1.table = tt_content 
    1.select { 
    pidInList = parent-uid 
    } 

Не знаю, правильно ли я прав. Dmitri.

5

От Include typo3 content elements on every page:

temp.foo = RECORDS 
temp.foo { 
    tables = tt_content 
    source = ID # Enter the object's ID here 
} 

Обратите внимание на идентификатор содержание идентификатор записи, а не идентификатор страницы.

Но это не отвечает на вопрос о том, как включать только страницы/записи с определенным родителем.

+0

это не сработает, я поместил тот же самый код в свой шаблон расширения, и элемент контента не отображается. – user3182532

3

Вы можете настроить скрытую страницу и затем «импортировать» элементы содержимого на заданной странице через опечатку на страницах (или всего дерева страниц ниже) по мере необходимости. «Трюк» предназначен для использования colPos с выделением. При этом вы можете даже положить несколько (различных) элементов контента в одном (скрытой) страницы, которые отображаются на разных страницах (в зависимости от настроек колонки они «в»

Пример:.

  • Создайте скрытую (или системную) страницу (здесь example-pageid = $ PID_STATIC)
  • Создайте элемент контента на этой странице (текст)
  • Редактировать этот элемент контента, который будет отображаться в правом столбце (справа равен colPos = 2)
  • Добавьте следующий шаблон в шаблон, на котором вы ant и элемент содержимого, который будет показан. Вы можете установить pid (pageId) в константах через PID_STATIC или «hardcode» в файл typoscript.

.

lib.aditionalcontent = COA 
lib.aditionalcontent { 
    10 = CONTENT 
    10 { 
     table = tt_content 
     select.where = colPos = 2 
     select.orderBy = sorting 
     select.pidInList = {$PID_STATIC} 
    } 
  • Добавьте элемент lib.aditionalcontent в шаблон, где содержание должно быть показано на рисунке. Например:

.

page.10 = TEMPLATE 
page.10.template = FILE 
page.10.template.file = fileadmin/maintemplate.htm 
page.10.workOnSubpart = DOCUMENT_BODY 
page.10.marks.ADITIONAL_CONTENT < lib.aditionalcontent 

.

Остерегайтесь того, что вы устанавливаете colPos в соответствии с столбцом, в который вы ввели элемент содержимого, иначе он просто не будет отображаться.

Вы можете использовать разные столбцы, чтобы сделать это для другого контента, который должен отображаться/не должен отображаться на определенной странице.

Это также работает с sytemfolders и не скрытыми страницами.

Если вы используете TemplaVoila, это также должно работать, хотя вам нужно переключиться на список, чтобы увидеть и установить colum для элемента контента (если он не скрыт для этого пользователя, не являющегося администратором).

Чтобы узнать, какое colPos-номер является позицией столбца, перейдите в phpMyAdmin и найдите поле «colPos» в таблице tt_content.

Смежные вопросы