Reputation: 89
I have to migrate TYPO3 6.2 websites to 8.7. Some websites use custom pibase extensions, do I need to redevelop them with Extbase ?
Upvotes: 6
Views: 3653
Reputation: 3229
delete reason: while this answer was upvoted a lot, it is actually off-topic for the question. Because it is the highest votest answer (June 6, 2022) it drowns out other answers. That is why I decided to delete it.
I found the following ressources helpful for porting:
Also:
The changes, that you need to make, may be trivial. In other cases, significant.
All things considered, I would usually recommend a rewrite using Extbase or Doctrine DBAL (QueryBuilder) and Fluid, Namespaces, TYPO3 9 API (maybe even TYPO3 10 if possible). Your extension will (probably) be better maintainable in the long run.
You may need to change one or more of the following (and this is not a complete list!):
In most cases, I needed to replace a subset of:
See ClassAliasMap.php for a complete list.
See "Andreas Fernandez: Cleaning the hood" for a very nice description of cleaning up the TCA with real examples.
\TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\Page\PageRenderer::class);
"page.includeJSlibs is marked for deprecation and will be removed in TYPO3 CMS 8. Please use page.includeJSLibs (with an uppercase L) instead"
Upvotes: 17
Reputation: 10790
you don't need to redevelop these extensions, but you might need to change the call to core functions.
In 6.2 you still could use the old class names like t3lib
.
These class names are available only with compatibility layer (together with a lot of delay).
For the future you need to use namespaces (and the correct new classes). You also should use namespaces for your own classes.
Depending on your used functions you might need to replace some calls with the newer functions as some functions got deprecated meanwhile.
Upvotes: 5
Reputation: 7939
All previous answers have been correct but some words from a TYPO3 core team member: There are no plans to drop the support of "pibase" in the core. It is absolutely ok to use that API even though it does not provide much help to developers.
However I recommend to use at least fluid standalone to be able to create nice templates without all those ###
stuff.
Upvotes: 10
Reputation: 3207
You don't need to redevelop these extensions.
Just you need to change some TYPO3 core function like t3lib_div
t3lib_BEfunc
t3lib_parsehtml
t3lib_extMgm
and more..
Please see complete example here : See more details
Upvotes: 3