PDA

Просмотр полной версии : TS код для генерации мета-тегов


Valery Romanchev
05.09.2007, 11:13
хороший пример попался
http://typo3.fruit-lab.de/forum/zeigen/beitrag/typo3fruit-labde/typo3-seo/titel-tag.html


еще надо типа этого добавить в localconf.php
$TYPO3_CONF_VARS['FE']['addRootLineFields'] = ',subtitle,keywords,description,author';


##########################
# Author: Sareen Millet #
# Mein TypoScript für: #
# - META #
# - DC.META #
# - TITLE #
##########################

##########################
# Default Inhalte #
##########################
lib.domain = TEXT
lib.domain.value =
lib.title = TEXT
lib.title.data = field:subtitle // leveltitle :-1,slide
lib.description = TEXT
lib.description.data = levelfield :-1, description, slide // levelfield :-1, subtitle, slide // leveltitle :-1,slide
lib.keywords = TEXT
lib.keywords.data = levelfield :-1, keywords, slide // levelfield :-1, subtitle, slide // leveltitle :-1,slide
lib.author = TEXT
lib.author.data = levelfield :-1, author, slide
lib.copyright = TEXT
lib.copyright.data = levelfield: 0, author
lib.robots = TEXT
lib.robots.value = index, follow


#########################
# Orginal ausschalten ###
#########################
config.noPageTitle = 1


#########################
# Title #################
#########################
lib.meta.title =< lib.title
lib.meta.title {
append =< lib.domain
append.required = 1
append.noTrimWrap = | - ||
outerWrap = <title>|</title>
}


##########################
# Meta ###################
##########################
lib.meta.description =< lib.description
lib.meta.description {
required = 1
outerWrap = <meta name="description" content="|" />
}
lib.meta.keywords =< lib.keywords
lib.meta.keywords {
required = 1
outerWrap = <meta name="keywords" content="|" />
}
lib.meta.author =< lib.author
lib.meta.author {
required = 1
outerWrap = <meta name="author" content="|" />
}
lib.meat.copyright =< lib.copyright
lib.meta.copyright {
required = 1
outerWrap = <meta name="copyright" content="|" />
}
lib.meat.robots =< lib.robots
lib.meta.robots {
required = 1
outerWrap = <meta name="robots" content="|" />
}

##########################
# DC-Meta ################
##########################
lib.meta.dc.title =< lib.title
lib.meta.dc.title {
required = 1
outerWrap = <meta name="DC.Title" content="|" />
}
lib.meta.dc.description =< lib.description
lib.meta.dc.description {
required = 1
outerWrap = <meta name="DC.Description" content="|" />
}
lib.meta.dc.subject =< lib.keywords
lib.meta.dc.subject {
required = 1
outerWrap = <meta name="DC.Subject" content="|" />
}
lib.meta.dc.creator =< lib.author
lib.meta.dc.creator {
required = 1
outerWrap = <meta name="DC.Creator" content="|" />
}
lib.meat.dc.right =< lib.copyright
lib.meta.dc.rights {
required = 1
outerWrap = <meta name="DC.Rights" content="|" />
}


##########################
# Zeilenumbrüche #########
##########################
lib.emptyLine = TEXT
lib.emptyLine.value (

)


###########################
# Header zusammenbauen ####
###########################
page.headerData.999 = COA
page.headerData.999 {
5 =< lib.emptyLine
10 =< lib.meta.title
15 =< lib.emptyLine
20 =< lib.meta.description
25 =< lib.emptyLine
30 =< lib.meta.keywords
35 =< lib.emptyLine
40 =< lib.meta.author
45 =< lib.emptyLine
50 =< lib.meta.copyright
55 =< lib.emptyLine
60 =< lib.meta.robots
65 =< lib.emptyLine
70 =< lib.meta.dc.title
75 =< lib.emptyLine
80 =< lib.meta.dc.description
85 =< lib.emptyLine
90 =< lib.meta.dc.subject
95 =< lib.emptyLine
100 =< lib.meta.dc.creator
105 =< lib.emptyLine
110 =< lib.meta.dc.rights
115 =< lib.emptyLine
}


##########################
# Anleitung: #############
##########################
# So wird anschließend ein Meta umdefiniert:
#lib.description.override = Eine neue Beschreibung
#lib.author.override = Author2


# So hängt man was an ein Meta hinten dran
#lib.keywords.append = TEXT
#lib.keywords.append.value = , hinten1, hinten2, hinten3

# So hängt man was an ein Meta vorne dran
#lib.keywords.prepend = TEXT
#lib.keywords.prepend.value = vorne1, vorne2, vorne3, vorne4,

# So wird eine Domain an den Seitentitel drangehängt
#lib.domain.override = MyPage.de

###########################
# Installation: ###########
###########################
# Damit die Meta's auch hirarchisch abgefragt werden können
# im Installations-Tool bei 'addRootLineFields' mit eintragen:
# subtitle,keywords,description,author
# => diese Felder können abgefragt werden mit
# lib.keywords = TEXT
# lib.keywords.data = levelfield :-1, keywords, slide
# bzw.:
# lib.title.data = leveltitle : -1, slide

Tod
05.09.2007, 13:23
А что этот пример в кратце делает?
Так много кода :) Может на сайте объясняется, а то я в немецком не шарю.

Valery Romanchev
05.09.2007, 17:58
А что этот пример в кратце делает?
Так много кода :) Может на сайте объясняется, а то я в немецком не шарю.

тайтл и мета-теги делает на основе данных с настоящих страниц
да в общем то код простой... выглядит только страшновато... а так - нет ни if ни stdWrap многоэтажных

Tod
05.09.2007, 20:22
Та я тоже смотрю код "в принципе" простой... но чтобы сразу вьехать зачем именно это все нужно:)) это скорее всего требуется пробовать на практике и смотреть что куда выводит...
всякие там eveltitle :-1,slide...
вот например конструкция типа
lib.title = TEXT
lib.title.data = field:subtitle // leveltitle :-1,slide
это берется "подзаголовок" текущей страницы, а если его нет предыдущей чтоли? ну по логике и набору слов:)
Чем спрашивается ему не понравилось обычное))
lib.title = TEXT
lib.title.data = field:title
(который ведь есть по идее в каждой странице, без этого их создать нельзя)

Хотя там потом в Title добавляется домен чтоли:) append =< lib.domain
В общем, видимо какие-то специфические цели были у автора... или это хорошо все на SEO влияет)))
Кстати по "DC-Meta", оно хоть как-то РЕАЛЬНО используется? нужно в смысле? А то сколько видел сайтов только в типо3 встречал это ДЦ:)

Olga25
16.07.2009, 11:55
Damit die Meta's auch hirarchisch abgefragt werden können
# im Installations-Tool bei 'addRootLineFields' mit eintragen:
# subtitle,keywords,description,author
# => diese Felder können abgefragt werden mit

Не понятно куда надо внести subtitle,keywords,description,author?
У меня TYPO3 Ver. 4.2.6

gunner
17.07.2009, 12:40
Damit die Meta's auch hirarchisch abgefragt werden können
# im Installations-Tool bei 'addRootLineFields' mit eintragen:
# subtitle,keywords,description,author
# => diese Felder können abgefragt werden mit

Не понятно куда надо внести subtitle,keywords,description,author?
У меня TYPO3 Ver. 4.2.6

Go to the "Install Tool", and in the field "[addRootLineFields]" add these
two fields: "keywords,description"

After you have done that, both fields are accessable from rootLine. That
means you can simply do something like this:

-- cut --
# Place this in CONSTANTS
meta.description = Here you put the def description
meta.keywords = and,here,you,put,the,default,keywords
-- cut --

-- cut --
# Place this in SETUP
page.meta.DESCRIPTION = {$meta.description}
page.meta.DESCRIPTION.override.data = fullRootLine:9,description,slide
page.meta.KEYWORDS = {$meta.keywords}
page.meta.KEYWORDS.override.data = fullRootLine:9,keywords,slide
-- cut --

© http://www.typo3board.com/fpost3716.html

Olga25
20.07.2009, 14:17
Спасибо, помогло.