Project

General

Profile

Actions

Bug #91233

closed

Cached page title is overwritten on pages with *_INT objects

Added by Jiří Štefl about 4 years ago. Updated over 3 years ago.

Status:
Closed
Priority:
Should have
Assignee:
-
Category:
SEO
Target version:
-
Start date:
2020-04-29
Due date:
% Done:

100%

Estimated time:
TYPO3 Version:
9
PHP Version:
Tags:
Complexity:
Is Regression:
Sprint Focus:

Description

When a page has USER_INT or COA_INT objects and is delivered from cache, the page title is overwritten with standard PageTitleProviders.

Steps to reproduce:
  1. Insert plugin with cacheable action which has own PageTitleProvider. This PageTitleProvider has setter which is called from this cacheable action - e.g. $pageTitleProvider->setTitle($detailObject->getTitle().
  2. Insert some none-cacheable content.
  3. When the page is cached, the page title from plugin's PageTitleProvider is never displayed.
Problem:
  • If the page has some none-cacheable content, then $controller->INTincScript() is called in TYPO3\CMS\Frontend\Http\RequestHandler->handle().
  • In TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController is then called the generatePageTitle() method.
  • All pageTitleProviders are loaded in TYPO3\CMS\Core\PageTitle\PageTitleProviderManager.
  • Since the custom pageTitleProvider's setter is never called (because action is cached), the getTitle() result is empty.
  • If the none-cacheable content doesn't set the page title, then name of the page is taken as page title.

Possible solution:
TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->generatePageTitle() and TYPO3\CMS\Core\PageTitle\PageTitleProviderManager->getTitle() should have some boolean argument to know when this is called. When called from TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->INTincScript(), standard pageTitleProviders (altPageTitle, seo, record) should not be loaded again, because that result was already cached.

Related to:
https://forge.typo3.org/issues/86234
https://forge.typo3.org/issues/87683


Related issues 4 (0 open4 closed)

Related to TYPO3 Core - Bug #91316: MetaTagManagerRegistry instance not unique in uncached pluginsClosedBenjamin Franzke2020-05-06

Actions
Related to TYPO3 Core - Bug #86234: Missing Meta Tags on Pages with *_INT objectsClosedRichard Haeser2018-09-12

Actions
Related to TYPO3 Core - Bug #87683: TitleTagProvider always get the cached entryClosedRichard Haeser2019-02-10

Actions
Related to TYPO3 Core - Bug #88179: Meta tags and page title are unnecessarily cached in separate cache entriesClosed2019-04-19

Actions
Actions

Also available in: Atom PDF