crossmedia / fourallportal
The Official 4ALLPORTAL Package
Installs: 6 734
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 4
Open Issues: 30
Type:typo3-cms-extension
pkg:composer/crossmedia/fourallportal
Requires
- typo3/cms-backend: >=7.6.0 <=8.7.99
- typo3/cms-core: >=7.6.0 <=8.7.99
- typo3/cms-extbase: >=7.6.0 <=8.7.99
- typo3/cms-filemetadata: *
- typo3/cms-fluid: >=7.6.0 <=8.7.99
Requires (Dev)
- phpunit/phpunit: ^5.0
- dev-master
- 5.0.11
- 5.0.10
- 5.0.9
- 5.0.8
- 5.0.7
- 5.0.6
- 5.0.5
- 5.0.4
- 5.0.3
- 5.0.2
- 5.0.1
- 5.0.0
- 4.1.2
- 4.1.1
- 4.1.0
- 4.0.8
- 4.0.7
- 4.0.6
- 4.0.5
- 4.0.4
- 4.0.3
- 4.0.2
- 4.0.1
- 4.0.0
- 3.1.4
- 3.1.3
- 3.1.2
- 3.1.1
- 3.1.0
- 3.0.5
- 3.0.4
- 3.0.3
- 3.0.2
- 3.0.1
- 3.0.0
- 2.10.1
- 2.10.0
- 2.9.1
- 2.9.0
- 2.8.3
- 2.8.2
- 2.8.1
- 2.8.0
- 2.7.4
- 2.7.3
- 2.7.2
- 2.7.1
- 2.7.0
- 2.6.1
- 2.6.0
- 2.5.14
- 2.5.13
- 2.5.12
- 2.5.11
- 2.5.10
- 2.5.9
- 2.5.8
- 2.5.7
- 2.5.6
- 2.5.5
- 2.5.4
- 2.5.3
- 2.5.2
- 2.5.1
- 2.5.0
- 2.4.2
- 2.4.1
- 2.4.0
- 2.3.7
- 2.3.6
- 2.3.5
- 2.3.4
- 2.3.3
- 2.3.2
- 2.3.1
- 2.3.0
- 2.2.0
- 2.1.4
- 2.1.3
- 2.1.2
- 2.1.1
- 2.1.0
- 2.0.1
- 2.0.0
- v2.0.0-RC1
- 1.1.x-dev
- 1.1.1
- 1.1.0
- 1.0.0
- dev-fix/downloaded-temp-filename
- dev-release/5.0
- dev-fix/tmp-filename
- dev-upgrade/v12
- dev-fix/null-relation-config
- dev-dimension-handling
- dev-missing-null-parameter
- dev-dynamicmodel
- dev-namedparameters
- dev-coderemoval
This package is auto-updated.
Last update: 2025-10-23 16:40:56 UTC
README
PIM Connector
Extension to facilitate import from PIM to TYPO3 records.
Requirements
- Typo3 version 12.4 or higher
- Typo3 in composer mode
- PHP version 8.1 or higher
- Installed typo3/cms-scheduler package:
composer require typo3/cms-scheduler
Documentation and Guides
Versions
| Version | TYPO3 | PHP | Support/Development |
|---|---|---|---|
| 6.x | 12.x | 8.1 - 8.3 | Features, Bugfixes, Security Updates |
| 5.x | 7.6 - 8.7 | 5.5 - 7.2 | Support dropped |
Migration from Typo3 v8.x to v12.x
Please refer to the Migration Guide document included in this repository.
Expected behavior
Assuming that you put all of the above components together correctly, running the import CLI command should cause the following chain of events to occur:
- Each
Serveris iterated - Each
Modulefrom eachServeris iterated - The PIM API is queried using the credentials and configuration from
ServerandModule - A list of events are received and spooled
- The events are claimed and processed one by one, performing one of either
updateordeleteactions (note:createis compounded intoupdatesince ad-hoc creation happens) - If successful, all properties received from PIM are mapped onto the Entity properties and saved to the database.
- If any errors should occur, feedback is output identifying the source of the problem.
Developer hints
The following hints may help developers avoid pitfalls when working with this logic:
- Reflection is widely used and registration happens in extension config files, and both
of these asset types are quite eagerly cached by TYPO3. The cache group that contains
both of these caches is the
systemone which is normally hidden unless you are inDevelopmentcontext or the system cache flushing was explicitly allowed for your user. - Even though
TypeConvertsare used, Extbase's validation logic is not triggered. This means you can potentially save values in the DB that cause loading of the Entity to fail if for example it is passed as argument to a controller action (unless you disable validation for the argument in the controller action itself). - TYPO3 contains
TypeConvertersfor standard types which may not be possible to override. Should you experience problems with this, it is possible to remove an already registeredTypeConverterdirectly from theTYPO3_CONF_VARSarray but this is strongly discouraged. If a givenTypeConverteris unable to convert a value, consider wrapping said value in a ValueObject you attach to your Entity, then create aTypeConverterthat converts to that type of ValueObject. - As far as humanly possible, try to adhere to the best practice described above and make
your Entity as close to the PIM column structures as you can. Overriding any of the logic
of the mapping classes or
TypeConverterbase class may cause vital features to stop working, e.g. could prevent proper handling of relations. The less you customise, the more likely it is that the default rules will handle your object types with no problems.