Вход

Просмотр полной версии : Замена Title и др. из PHP-скрипта


forever
01.06.2008, 18:40
С наступившим летом всех! ;)

Вот такая задачка встала:

на страницу вставляется TypoScript Object lib.ShowVacancy

lib.ShowVacancy = USER_INT
lib.ShowVacancy {
includeLibs = fileadmin/scripts/TelgazController.class.php
userFunc = user_TelgazController->ShowVacancy
}

Каким образом из метода ShowVacancy() можно изменить title для страницы? Подскажите, где найти более подробную информацию.

Спасибо.

forever
01.06.2008, 18:56
Маленькое уточнение - title будет меняться в зависимости от значения переменной из массива $_GET

void
01.06.2008, 20:06
Во-первых, includeLibs - объект верхнего уровня.

По существу: меняйте $GLOBALS['TSFE']->page['title']

forever
01.06.2008, 20:56
Менял, не помогает.

Видимо как раз из-за того, что объект верхнего уровня ))

Подскажите, как надо правильно :) Писать отдельно экстеншн? Или все-таки можно как-то подключить существующий класс, ничего не меняя?

pomotom
01.06.2008, 21:59
Если поле доступно из базы , можно решить наподобие

config.noPageTitle = 1

page.headerData.20 = TEXT
page.headerData.20 {
field = title
wrap = <title> | &nbsp;:: {$page_slogan}</title>
}

page.headerData.30 = TEXT
page.headerData.30.value (

)


# set the news headline as html-title on news detail page

[globalVar = TSFE:id = XXX]

temp.newsTitle=COA
temp.newsTitle {
wrap= <title> | &nbsp;:: {$page_slogan}</title>
5=RECORDS
5 {
source = {GPvar:tx_ttnews|tt_news}
source.insertData = 1
tables = tt_news
conf.tt_news >
conf.tt_news = TEXT
conf.tt_news.field=title
}
}

page.headerData.20 < temp.newsTitle

[end]



Если нет - посмотрите в коде tt_news.

forever
22.10.2008, 02:19
Поле из базы недоступно.

Спустя столько времени случайно наткнулся на решение. Еще не проверял, но по-моему это оно. Всего лишь нужно определить в TS функцию, которая будет генерить title вот таким образом:

config.titleTagFunction = tx_extendedshop_pi1->product_title