DEPRECATION WARNING
This documentation is not using the current rendering mechanism and is probably outdated. The extension maintainer should switch to the new system. Details on how to use the rendering mechanism can be found here.
EXT: TEQneers SEO Enhancements¶
Author: | Kasper Skårhøj |
---|---|
Created: | 2002-11-01T00:32:00 |
Changed by: | Markus Blaschke |
Changed: | 2012-09-13T15:20:51 |
Classification: | tq_seo |
Keywords: | SEO, Sitemap, Pagetitle, Metatags, Google, Yahoo, Bing, Google Analytics, Piwik, P3P |
Author: | Markus Blaschke |
Email: | blaschke@teqneers.de |
Info 4: | |
Language: | en |
EXT: TEQneers SEO Enhancements - tq_seo
EXT: TEQneers SEO Enhancements¶
Extension Key: tq_seo
Language: en
Keywords: SEO, Sitemap, Pagetitle, Metatags, Google, Yahoo, Bing, Google Analytics, Piwik, P3P
Copyright 2000-2012, Markus Blaschke, <blaschke@teqneers.de> (TEQneers GmbH & Co. KG)
This document is published under the Open Content License
available from http://www.opencontent.org/opl.shtml
The content of this document is related to TYPO3
- a GNU/GPL CMS/Framework available from www.typo3.org
Table of Contents¶
EXT: TEQneers SEO Enhancements 1
`Introduction 3 <#__RefHeading__2100_1227984897>`_
`Users manual 13 <#__RefHeading__2106_1227984897>`_
`Backend Modules 18 <#__RefHeading__2680_249562930>`_
SEO Page Module (Website → SEO) 18
SEO Control Center (SEO → Control Center) 18
SEO Sitemap (SEO → Sitemap) 19
`Advanced manipulations (stdWrap support) 20 <#__RefHeading__1406_1455840893>`_
`Google Analyitics / Piwik customizations 21 <#__RefHeading__2795_10825925>`_
Customization codes (fast/simple) 21
`Example for Google Analytics in TypoScript-Setup: 21 <#__RefHeading__2801_10825925>`_
Template customization (advanced) 21
`It's quite easy, for more information read: 21 <#__RefHeading__2807_10825925>`_
`Scheduler tasks 22 <#__RefHeading__1681_2008300930>`_
`FAQ 23 <#__RefHeading__2142_1227984897>`_
`RealURL configuration 25 <#__RefHeading__3079_202915244>`_
`Hooks 27 <#__RefHeading__1812_685650465>`_
`Beta-Features 28 <#__RefHeading__1619_1783233314>`_
`Suggested Extensions 29 <#__RefHeading__2146_1227984897>`_
`Known problems 30 <#__RefHeading__1737_849775136>`_
`To-Do list 31 <#__RefHeading__2148_1227984897>`_
`Found a bug? Problems? 32 <#__RefHeading__3107_202915244>`_
`ChangeLog 33 <#__RefHeading__2150_1227984897>`_
Introduction¶
Problems while reading this document? Try the PDF-Version → http://static.teqneers.com/storage/opensource/tq_seo_manual.pdf
What does it do?¶
This extensions will handle multiple page metatags and pagetitle manipulations in TYPO3. It's a replacement and major improvement for the “metatags” extension.
The following features are supported:
Indexed XML sitemap for Google and other search engines (with support for ALL extensions, pibase and extbase, not only tt_news)
Real sitemap builder via TYPO3 scheduler
Metatags
- Manipulation of Metatags via stdWrap (Beta)
- Automatic fetching metatags from tt_news (single-display module)
Pagetitle manipulations
Manipulation of pagetitle via stdWrap (Beta)
Multi-language and/or multi-tree TYPO3 installations
Backend modules:
- SEO page module
- SEO control center module
- SEO sitemap module
The following metatags are supported:
- Language (auto-detected)
- Description
- Keyword
- Copyright information
- Reply-To E-Mail-Address
- Author and publisher
- Rating and distribution
- Revisit
- Geo-location information
- Searchengine Crawler orders
- Google Analytics (with anonymize IP and download link tracking, asynchronous implementation since 4.0)
- Piwik integration (asynchronous implementation since 4.0)
- Google, MSN, Yahoo and WebOfTrust Verification
- Google+ Direct Connect
- Canonical URL (Custom URL or autogenerated to current page)
- IE Compatibility-Mode
- Google Expire Date
- Index, up, prev und next link-metatags
- P3P-HTTP-Headers
The following pagetitle transformations are supported:
- Prefix and suffix (inheritable)
- Absolute pagetitle without any prefix and suffix
- Sitetitle glue options
- Sitetile positon
Screenshots¶
Illustration 1: TYPO3 Metatag-Constants
Illustration 2: TYPO3 Crawler-Constants
Illustration 3: SEO Services (eg. verification codes)
Illustration 4: SEO-pagesettings in TYPO3
Illustration 5: SEO-page module in TYPO3
Illustration 6: SEO-page module in TYPO3
Illustration 7: SEO-page module in TYPO3
Illustration 8: SEO-sitemap module in TYPO3
Users manual¶
Installation¶
- Install Extension via Extension Manager.
- Include “static extension template” (Template → Info/Modify → Edit the whole template record → “Include static (from extensions):” and select “TEQneers SEO”)
- Modify your metatags via constants editor
Indexed Sitemap¶
The sitemap will automatically collect all cacheable sites and provides a xml- and plaintext-output – that's why it is “indexed”.
The XML-Sitemap (eg. for Google) is available with: index.php?type=841132
The TXT-Sitemap is available with: index.php?type=841131
If you have more than one tree in your TYPO3 you will have to add the root-PID to your Sitemap, eg:
Tree #1 with PID 123: index.php?id=123&type=841132
Tree #2 with PID 234: index.php?id=234&type=841132
If you have also enabled “sitemap_ObeySysLanguage” in the extension configuration you also have to add the language-id for your Sitemap - eg. for seperated language-domain eg. example.com (only english sites) and example.de (only german sites).
The sitemap will index ALL cacheable pages with full extension support (like tt_news and all other “clean” extensions).
If your extension doesn't use cHash or use no_cache the outwill WILL NOT included in the sitemap (and also will not be indexed by index_search).
Also the sitemap indexes all generated “typolink” (BETA).
Warning:
The TQ Seo Sitemap relies on the TYPO3 caching system. If any extension (or configuration – eg. RealURL configuration) break the caching system and makes TSFE non-cacheable (TSFE->no_cache) the sites will NOT INDEXED!
Make sure no extension will set no_cache and the cHash of your link is valid. This is the only way to get only valid URLs into your sitemap.
This sitemap supports both, pibase- and extbase-Extensions without problems. However the developer must take care of the cHash-handling.
Robots.txt¶
The robots.txt can be gerated with type 841133, eg.:
index.php?type=841133
If possible and enabled the robots.txt buidler will automatically add the link to the sitemap generator or the static sitemap files (will require TYPO3 Scheduler task to generate the static sitemap).
Metatags¶
Last Update time¶
Constant
Last Update time
Description
Publish the update time of the current page
Default
enabled
Detect Language¶
Constant
Detect Language
Description
Publish the current TYPO3-FE-language as metatag
Default
enabled
Canonical Tag¶
Constant
Canonical Tag
Description
Publish canonical link if possible (TYPO3-Cache is enabled and cHash is valid) or if user entered canonical tag into page options.
Default
enabled
Canonical Tag (Strict mode)¶
Constant
Canonical Tag (Strict mode)
Description
Enable strict mode (all wrong GET-parameters will generate a canonical-tag to the self without GET-params).
eg. /index.php?id=123&foo=bar would generate a Canonical-Tag poiting to /index.php?id=123 if the cHash is wrong or caching is disabled
Default
disabled
Publish Page Expire Time¶
Constant
Publish Page Expire Time
Description
Publish expire date from the “End Date” of the page.Currently only used for Google.
Default
enabled
Link generation¶
Constant
Link generation
Description
Automatic generate index and up-links.
Next/Prev wil follow in the next version.
Default
enabled
Enable Dublin Core (DC.) metatags¶
Constant
Enable Dublin Core (DC.) metatags
Description
Enable/Disable output of dublin core (DC) metatags
Default
enabled
Description¶
Constant
Description
Description
Default description of your pages.
Overwritten by description of page
Default
Keywords¶
Constant
Keywords
Description
Default list of keywords
Overwritten by keywords of page
Default
Copyright info¶
Constant
Copyright info
Description
Copyright information of your page
Default
Reply-to email¶
Constant
Reply-to email
Description
E-Mail address for contact
Default
Author¶
Constant
Author
Description
Default author
Overwritten by author of page
Default
Publisher¶
Constant
Publisher
Description
Publisher of the website
Default
Language¶
Constant
Language
Description
Overwrite language detection
Default
Rating¶
Constant
Rating
Description
Rating of the website
Default
Distribution¶
Constant
Distribution
Description
Distribution of your website
Default
Revisit after¶
Constant
Revisit after
Description
Number of days between search engine visits
Default
Geo Location¶
Constant
Geo Location
Description
Geo-Location of your webpage with latitude, longitude, region and placename
Default
PICS-label¶
Constant
PICS-label
Default
P3P Compact Policy¶
Constant
P3P Compact Policy
Default
P3P Policy Url¶
Constant
P3P Policy Url
Description
Link (full URL) to your P3P Policy File
Default
Some metatags also have markers which could be build in, following metatags supports markers:
- Title
- Description
- Keywords
- Copyright
- Publisher
Following Markers are available:
%YEAR%¶
Marker
%YEAR%
Description
Current year
Example
2011
UserAgent¶
IE Compatibility Mode¶
Constant
IE Compatibility Mode
Description
Compatibility mode for Microsoft Internet Explorer
Default
Crawler¶
Index¶
Constant
Index
Description
Should the crawler index your website?
Default
enabled
Follow¶
Constant
Follow
Description
Should the crawler follow links on your website?
Default
enabled
Archive¶
Constant
Archive
Description
Is the crawler allowed to archive the page (eg. google cache)
Default
enabled
Snippet¶
Constant
Snippet
Description
Should the crawler use the snippet/description in search results
Default
enabled
ODP¶
Constant
ODP
Description
Should the crawler use the OpenDirectoryProject to display the description in search results
Default
enabled
YDir¶
Constant
YDir
Description
Should the crawler use the YahooDirectory to display the description in search results
Default
enabled
Services¶
Crawler Verification¶
Description
Verification code for Google, MSN and Yahoo webmaster tools and Web of trust
Default
Google Analytics¶
Description
The google analytics code for using on your site(Will not be shown in frontend if BE-user is logged in, can be re-enabled in BE-Login-Mode: plugin.tq_seo.services.googleAnalytics.showIfBeLogin = 1 )
Default
Google Analytics Cookie Domain Name¶
Description
If you want to limit the current google analytics to one domain (or subdomain) set the domain name here, eg.:
- “auto” (default in google analytics)- “none”
- single domain (eg. “example.com”)
- subdomain (eg. “.example.com”)
Fore more informations visit: http://code.google.com/intl/de-DE/apis/ analytics/docs/gaJS/gaJSApiDomainDirectory.html#_gat.GA_Tracker_._ setDomainName
Default
Google Analytics Anonymize IP¶
Description
Anonymize the last part of the IP (may be required in some countries)
Default
disabled
Google Analytics Track Downloads (BETA)¶
Description
Try to track downloads with google analytics.
See res/ga-track-download.js for more details
Currently supported files:
doc,docx,xls,ppt,odt,ods,pdf,zip,tar,gz,txt,vsd,vxd,rar,exe,wma,mov,av i,ogg,ogm,mkv,wmv,mp3,webm
Default
disabled
Piwik ID¶
Description
Tracking id of your website in your piwik
Default
Piwik Download & Click Domain Name¶
Description
Specifies which domains are internal domains:
- single domain (eg. “example.com”)
- subdomain (eg. “.example.com”)
For more informations visit:
Default
Piwik Cookie Domain Name¶
Description
Specifies the domain name for the tracking cookie:
- single domain (eg. “example.com”)
- subdomain (eg. “.example.com”)
For more informations visit:
Default
Piwik DoNotTrack¶
Description
Opt Out users with Mozilla's DoNotTrack browser setting
Default
enabled(since 4.0)
Pagetitle¶
Apply tmpl-sitetitle to absolute <title>¶
Description
There is a prefix/suffix for your pagetitle defined in your root template settings.
If you use the SEO-Absolute-Pagetitle settings you can disable this suffix/prefix here.
Default
disabled(since 1.1.0)
Apply tmpl-sitetitle to prefix/suffix <title>¶
Description
There is a prefix/suffix for your pagetitle defined in your root template settings.
If you use the SEO-Pagetitle-Suffix/Prefix settings you can disable this suffix/prefix here.
Default
enabled
Sitetitle glue¶
Description
Glue between Pagetitle (from Page) and Sitetitle (from template)
Default
:
Sitetitle glue spacer (before)¶
Description
Add spacer before glue string
Default
disabled
Sitetitle glue spacer (after)¶
Description
Add spacer after glue string
Default
enabled
Sitetitle position¶
Description
Position of Sitetitle (from template)
Possible options:
Sitetitle-Pagetitle (eg. Example Company: About us)
Pagetitle-Sitle (eg. About us: Example Company)
Default
Sitetitle-Pagetitle(0)
Sitetitle¶
Description
Overwrite the template sitetitle with a custom one
Default
Sitemap¶
Enable¶
Description
Enables output (if set on root-pid of tree) and indexing for the whole subtree
Default
enabled
Page limit¶
Description
Limit pages on sitemap-xml-pages
Default
10000
Limit to current language¶
Description
Limit output of the sitemap to the current language.This will enable multi-language-domain sitemaps. eg: www.example.com (FE-Language is english) will output only english pages www.example. de (FE- Language is german) will output only german pagesThis option was ported from the extension configuration and will replace this configuration.
Default
disabled
Default change frequency¶
Description
Default change frequency for sitemap cache (will be cached!)
Default
Page priority¶
Description
Default page priority if the page have no own priority setPage priority will be calculated by:
( [page priority] – [priority modificator] ) * ( 1/[page depth] * [page multiplier] )
Default
1
Page priority depth multiplier¶
Description
Page depth multiplier, see formula in page priority
Default
1
Page priority depth modificator¶
Description
Page depth modificator, see formula in page priority
Default
1
Backend Modules¶
SEO Page Module (Website → SEO)¶
The SEO page module provies an overview for all seo relevant informations (including possibility to edit this informations on click).
Metatags¶
Module
Metatags
Description
Overview for all relevant metatags
Geo position¶
Module
Geo position
Description
Overview for geo positioning
SearchEngines¶
Module
SearchEngines
Description
Overview for all relevant search engine settings including sitemap stuff
URL Handling¶
Module
URL Handling
Description
Overview for all relevant url handling stuff including RealURL support and possibility to simulate the url.
Pagetitle¶
Module
Pagetitle
Description
Overview for all relevant pagetitle informations and possibility to simulate the pagetitle.
Pagetitle simulator (Slow!)¶
Module
Pagetitle simulator (Slow!)
Description
Simulates the pagetitle generation for the current selected tree.The generation time depends of the number of TypoScript-Setup Templates in the selected tree. Don't use this features if you have more than ~5 templates.
SEO Control Center (SEO → Control Center)¶
The SEO control center lists all your root-pages in your TYPO3 installation. For each root page you can control specific sitemap and robots.txt settings.
SEO Sitemap (SEO → Sitemap)¶
The SEO sitemap module provides access to the indexed sitemap list.
Advanced manipulations (stdWrap support)¶
If you want to modify some things you can use stdWraps
Metatags¶
plugin.tq_seo.metaTags.stdWrap.title¶
TypoScript Node
plugin.tq_seo.metaTags.stdWrap.title
Description
Manipulation for title
Type
stdWrap
plugin.tq_seo.metaTags.stdWrap.description¶
TypoScript Node
plugin.tq_seo.metaTags.stdWrap.description
Description
Manipulation for description
Type
stdWrap
plugin.tq_seo.metaTags.stdWrap.keywords¶
TypoScript Node
plugin.tq_seo.metaTags.stdWrap.keywords
Description
Manipulation for keywords
Type
stdWrap
plugin.tq_seo.metaTags.stdWrap.copyright¶
TypoScript Node
plugin.tq_seo.metaTags.stdWrap.copyright
Description
Manipulation for copyright
Type
stdWrap
plugin.tq_seo.metaTags.stdWrap.language¶
TypoScript Node
plugin.tq_seo.metaTags.stdWrap.language
Description
Manipulation for language
Type
stdWrap
plugin.tq_seo.metaTags.stdWrap.email¶
TypoScript Node
plugin.tq_seo.metaTags.stdWrap.email
Description
Manipulation for email
Type
stdWrap
plugin.tq_seo.metaTags.stdWrap.author¶
TypoScript Node
plugin.tq_seo.metaTags.stdWrap.author
Description
Manipulation for author
Type
stdWrap
plugin.tq_seo.metaTags.stdWrap.publisher¶
TypoScript Node
plugin.tq_seo.metaTags.stdWrap.publisher
Description
Manipulation for publisher
Type
stdWrap
plugin.tq_seo.metaTags.stdWrap.distribution¶
TypoScript Node
plugin.tq_seo.metaTags.stdWrap.distribution
Description
Manipulation for distribution
Type
stdWrap
plugin.tq_seo.metaTags.stdWrap.rating¶
TypoScript Node
plugin.tq_seo.metaTags.stdWrap.rating
Description
Manipulation for rating
Type
stdWrap
plugin.tq_seo.metaTags.stdWrap.lastUpdate¶
TypoScript Node
plugin.tq_seo.metaTags.stdWrap.lastUpdate
Description
Manipulation for last update (date)
Type
stdWrap
Pagetitle¶
plugin.tq_seo.pageTitle.stdWrap.before¶
TypoScript Node
plugin.tq_seo.pageTitle.stdWrap.before
Description
Manipulation of the raw page title (before TQ-Seo processing)
Type
stdWrap
plugin.tq_seo.pageTitle.stdWrap.after¶
TypoScript Node
plugin.tq_seo.pageTitle.stdWrap.after
Description
Manipulation of the processed page title (after TQ-Seo processing)
Type
stdWrap
plugin.tq_seo.pageTitle.stdWrap.sitetitle¶
TypoScript Node
plugin.tq_seo.pageTitle.stdWrap.sitetitle
Description
Manipulation of the sitetitle (from the TS-Setup-Template)
Type
stdWrap
Google Analyitics / Piwik customizations¶
Customization codes (fast/simple)¶
You can add additional javascript code to the default Google Analytics and/or Piwik integration.
plugin.tq_seo.services.googleAnalytics.customizationCode¶
TypoScript Node
plugin.tq_seo.services.googleAnalytics.customizationCode
Description
Customization Code for Google Analytics
Type
TS-Content Object(TEXT, COA, ...)
plugin.tq_seo.services.piwik.customizationCode¶
TypoScript Node
plugin.tq_seo.services.piwik.customizationCode
Description
Customization Code for Piwik
Type
TS-Content Object(TEXT, COA, …)
Example for Google Analytics in TypoScript-Setup:
plugin.tq_seo.services.googleAnalytics.customizationCode = COAplugin.tq_seo.services.googleAnalytics.customizationCode {10 = TEXT
10.value (
_gaq.push(['_setClientInfo', false]);
_gaq.push(['_setAllowHash', false]);
_gaq.push(['_setDetectFlash', false]);
_gaq.push(['_setDetectTitle', false]);
)}
Template customization (advanced)¶
The Google Analytics and Piwik integration is done by using a FLUIDTEMPLATE object in TypoScript. If you don't like the integration and want to modify the integration feel free to use your own templates and pass your own variables to FLUIDTEMPLATE.
plugin.tq_seo.services.googleAnalytics.template¶
TypoScript Node
plugin.tq_seo.services.googleAnalytics.template
Description
Template rendering object for Google Analytics(contains a FLUIDTEMPLATE)
Type
COA
plugin.tq_seo.services.piwik.template¶
TypoScript Node
plugin.tq_seo.services.piwik.template
Description
Template rendering object for Piwik(contains a FLUIDTEMPLATE)
Type
COA
It's quite easy, for more information read:
- http://forge.typo3.org/projects/typo3v4-mvc/wiki/FLUIDTEMPLATE%20Cont ent%20Object
- http://typo3.org/development/articles/the-fluidtemplate-cobject/
Example for your own Google Analytics Template:
## Google Analytics template
plugin.tq_seo.services.googleAnalytics.template.10.file = fileadmin/templates/service-ga.html
## if you need some variables you also can set these:
plugin.tq_seo.services.googleAnalytics.template.10.variables {
myOwnStuff = TEXT
myOwnStuff.value = foobar
}
Scheduler tasks¶
TQ SEO Cleanup¶
Task
TQ SEO Cleanup
Description
This task cleans up old database entries in the tx_tqseo_sitemap table.
Frequency
One run per day
TQ SEO sitemap.txt builder¶
Task
TQ SEO sitemap.txt builder
Description
This task builds a real sitemap.txt file in the upload directory.Directory: uploads/tx_tqseo/sitemap_txt/Sitemap: sitemap-r{ROOTPID}.txt.gz
If language domain support is active:
Sitemap: sitemap-r{ROOTPID}-l{LANG}.txt.gz
{ROOTPID} is the Page-UID from the root pages in your TYPO3 installations.{LANG} is the language id (only active if language domains are active).
Hint: These files are already gziped.
Frequency
One run per day
TQ SEO sitemap.xml builder¶
Task
TQ SEO sitemap.xml builder
Description
This task builds a real sitemap.xml files in the upload directory.Directory: uploads/tx_tqseo/sitemap_xml/Sitemap-Index: index-r{ROOTPID}.xml.gzSitemap-Page: sitemap-r{ROOTPID}-p{PAGE}.xml.gz
If language domain support is active:Sitemap-Index: index-r{ROOTPID}-l{LANG}.xml.gzSitemap-Page: sitemap-r{ROOTPID}-l{LANG}-p{PAGE}.xml.gz
{ROOTPID} is the Page-UID from the root pages in your TYPO3 installations.
{PAGE} is the current page of the sitemap.
{LANG} is the language id (only active if language domains are active).The index will refer to all page sitemaps so you only have to reference to the sitemap index.
Hint: These files are already gziped.
Frequency
One run per day
FAQ¶
General¶
Problem: Is this extension mutli-language and/or multi-tree ready?
Solution: Check it out, there should be no problems at all with multi-language multi-tree TYPO3-installations.
Problem: In my TYPO3 the feature XYZ of this extension doesn't work. What's wrong?
Solution: The tq_seo-Extension was carefully written. We're at TEQneers what to deliver correct pages and extensions will the power of the TYPO3 caching system (and those extensions are the fastest). For some features (eg. sitemap, canonical-tag) we have to trust in the caching-system – it's the only way to make sure that we don't deliver wrong informations to our search engines. If our extension doesn't work correct in your TYPO3 installation maybe there is something wrong – maybe the configuration, your setupTS or one of your extension.
Indexed Sitemap¶
Problem: The sitemap is empy.
Solution: Check if you created the “tx_tqseo_sitemap_pages” database-table! We're using InnoDB as MySQL-Engine so you have to make sure that you have InnoDB-Support in your Hosting-Account (if not you should switch your hoster, InnoDB is a Standard-Feature in MySQL). As with 2.0.1 there is an error-message if the table doesn't exist.
Problem: My sitemap is still empty, but the database is ok.
Solution: Maybe you disabled the whole TYPO3 cache (config.no_cache=1 or somehthing else)? Enable the cache – this will also speed up your TYPO3 installation.
Problem: The generated pages from my extension are not included in the sitemap!
Solution: You have to make sure that all generated pages are cacheable. The extension has to pass a valid cHash-token!
Problem: There is only one site in my XML-Sitemap, what's wrong? In the sitemap-database are thousands of pages.
Solution: That's correct. TQ_Seo always uses “Sitemap Groups” (as defined in http://www.sitemaps.org/protocol.php#index), each group can contain about 50.000 pages/urls so if we have more than 50.000 urls we have to use sitemap groups. Visit the url defined in the LOC-tag and you will see that the sub-sitemap will contain all your stored URLs.
Problem: The generated pages from my extension still are not included in the sitemap!
Solution: You've enabled RealURL? Please check the RealURL configuration if you have specified values that are not passed with your url. All variables that are not passed with the url will result in a NO-CACHE.
Problem: The sitemap is still not working! No page is indexed and the table tx_tqseo_sitemap_pages is empty!
Solution: Double check your installation and disable all third- party extensions, make sure that no extension disables the TYPO3-cache! RealUrl (if properly configured) and TemplaVoila are working wonderfull with TQ Seo Sitemap but some old extensions might break the TYPO3 caching system and you will not notice it. Our sitemap indexer relies on the indexing system to make sure that only valid urls are stored and delivered to the search engines like google.
Problem: I want to limit each sitemap to it's domain (eg. example.com for english pages, example.de for german pages). Is this possible?
Solution: Yes, just enable the “Enable language-domain support” in seo control center in your website/rootpage settings.(replaces the old extension configuration sitemap_ObeySysLanguage and TypoScript constants setting).
Problem: My tt_news entries are not indexed, what's wrong?
Solution: You're using realurl? Then check your realurl_conf.php. Errors (or misconfiguration) in the realurl-configuration will produce uncacheable sites (and you will not notice it). The most common issue is the configuration of the parameter “tx_ttnews[swords]” in the postVarSets-area. Remove it, you don't need it.
Others¶
Problem: I want to customize my google Analytics and/or piwik integration.
Solution: You can modify the code of the google analytics and piwiki integration with typoscript. Feel free to use plugin.tq_seo.services.googleAnalytics.customizationCode (STDWRAP) or plugin.tq_seo.services.piwik.customizationCode (STDWRAP). Also you can modify the FLUIDTEMPLATE and assign custom variables.
RealURL configuration¶
If you want to activiate “real” sitemap.xml feature (eg. http://example.com/sitemap.xml ), configure realurl like this:
<?php
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'] = array(
'init' => array(
// ...
),
'preVars' => array(
// ...
),
'fixedPostVars' => array(
// ...
),
'postVarSets' => array(
'_DEFAULT' => array(
// TT-NEWS (example configuration)
'date' => array(
array(
'GETvar' => 'tx_ttnews[year]' ,
),
array(
'GETvar' => 'tx_ttnews[month]' ,
'valueMap' => array(
'january' => '01',
'february' => '02',
'march' => '03',
'april' => '04',
'may' => '05',
'june' => '06',
'july' => '07',
'august' => '08',
'september' => '09',
'october' => '10',
'november' => '11',
'december' => '12',
),
),
array(
'GETvar' => 'tx_ttnews[day]',
),
),
// news pagebrowser
'browse' => array(
array(
'GETvar' => 'tx_ttnews[pointer]',
),
),
// news categories
'news-category' => array (
array(
'GETvar' => 'tx_ttnews[cat]',
'lookUpTable' => array(
'table' => 'tt_news_cat',
'id_field' => 'uid',
'alias_field' => 'title',
'addWhereClause' => ' AND NOT deleted',
'useUniqueCache' => 1,
'useUniqueCache_conf' => array(
'strtolower' => 1,
'spaceCharacter' => '-',
),
),
),
),
// news articles
'article' => array(
array(
'GETvar' => 'tx_ttnews[tt_news]',
'lookUpTable' => array(
'table' => 'tt_news',
'id_field' => 'uid',
'alias_field' => 'title',
'addWhereClause' => ' AND NOT deleted',
'useUniqueCache' => 1,
'useUniqueCache_conf' => array(
'strtolower' => 1,
'spaceCharacter' => '-',
),
),
),
),
// ... other extensions ...
),
),
'fileName' => array(
'defaultToHTMLsuffixOnPrev' => 1,
'index' => array(
// ...
'sitemap.xml' => array(
'keyValues' => array(
'type' => 841132,
),
),
'sitemap.txt' => array(
'keyValues' => array(
'type' => 841131,
),
),
'robots.txt' => array(
'keyValues' => array(
'type' => 841133,
),
),
'_DEFAULT' => array(
'keyValues' => array(
'type' => 0,
)
),
),
),
'pagePath' => array(
'type' => 'user',
'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realur l_advanced->main',
'spaceCharacter' => '-',
'segTitleFieldList' => 'tx_realurl_pathsegment,alias,nav_title,title',
'languageGetVar' => 'L',
'expireDays' => 30,
'rootpage_id' => 1,
),
);
?>
Hooks¶
All hooks are defined in docs/examples/hooks.php (available with short description).
Beta-Features¶
- TypoLink Sitemap parser
Suggested Extensions¶
- sourceopt: HTML sourcecode optimization
- realurl/cooluri: Link SEO optimization
Known problems¶
- Don't use another SEO-extension like metatags
- Sourceopt might break sitemap-txt output, xml is still fine (Sourceopt 0.5.17 fixes this, please update)
To-Do list¶
- RealURL autoconfiguration
- SEO page module with language support
Found a bug? Problems?¶
The bugtracker can be found on TYPO3-forge:
ChangeLog¶
Version 5.0¶
- Added possibility to manipulate/overwrite “sitetitle” (from TS-Setup- Template)
- Implemented seo page-module
- Added support for Google+ Direct Connect
- Impoved ui (backend modules)
- Fixed several bugs
Version 4.0¶
- Google Analytics and Piwik uses now asynchronous implementation
- Some settings (eg. language-lock for sitemap) are moved to SEO → “Contol Center”
- Implemented sitemap and control center as backend module
- Implemented robots.txt-support
33
Social¶
Google+ Direct Connect¶
Service
Google+ Direct Connect
Description
Your Google+ Profile Page IDsee https://developers.google.com/+/plugins/badge/
Default
(since 5.0.0)