TypoGento
TypoGento copied to clipboard
Integrating Magento with TYPO3.
TypoGento
This project is a fork of Flagbit's TypoGento licensed under the GNU General Public License (GPL-2.0) Version 2.
What's new?
The following features are introduced:
- TYPO3 cache for Magento blocks
- Integration of the Magento compiler
- TYPO3 cache for Magento API requests (SOAP)
- Magento page meta access through TypoScript
- Extbase and Fluid for the TYPO3 extension
Beside them, the following features have improved:
- Autoloader for the Magento framework
- Integration of Magento HTML header
- Routing between Magento URLs and TYPO3 URLs
- Handling Magento Redirects and Ajax Responses
Prerequisites
TypoGento is distributed as an extension package for Magento and TYPO3. As such, installing TypoGento requires you to have already a running Magento and TYPO3 on your server:
The minimum requirements for a installation are:
- Magento 1.7+
- TYPO3 6.0+
Installation
The installation of this fork is very similar to Flagbit's TypoGento (see how to install TypoGento). It is highly recommended become familiar with the administration of Magento and TYPO3 before you start installing TypoGento:
Download
Download the extension package from GitHub and unzip it. Please notice that this is the latest development version, which is not ready for production use.
Magento module
- Place the content of
src/Magentointo the Magento root directory - Clear the caches in
System > Cache Managementif enabledConfigurationEAV types and attributesWeb Services Configuration
- Grant access to
TypoGento Settingsfor theAdministratorsinSystem > Permissions > Rolesif necessary - Setup the configuration in
System > Configuration > TypoGento - Create the Magento API role for TypoGento in
System > Web Services > SOAP/XML-RPC - RolesCatalog > Product > URL Key > ListCatalog > Product > Retrieve products dataCatalog > Category > URL Key > ListCatalog > Category > Retrieve categories treeCore > Role > ListCore > Magento info > Module > ListCore > Magento info > Module > Controller > ListCore > Magento info > Module > Controller > Action > ListCore > Store > List of storesTypoGento > Replication > Target > ListTypoGento > Replication > Source > List
- Create the Magento API user for TypoGento in
System > Web Services > SOAP/XML-RPC - Usersby using the previous created Magento API role
TYPO3 extension
- Place the content of
src/TYPO3into the TYPO3 root directory - Activate the extension in
Admin Tools > Extension Manager, update the database and setup the configuration - Check the installation in
Admin Tools > Reports > Status Report - Setup the Magento role for the TYPO3 backend users in
Edit > Extended > Magento Role - Add the scheduled task for clearing the Magento API cache in
Admin Tools > Scheduler - Add the default TypoGento template to your root template
Usage
The usage of this fork is currently also similar to Flagbit's TypoGento. This means you can put any Magento block on a TYPO3 page with the frontend plugin. The only restriction is that all Magento blocks you use on one TYPO3 page must be available within the Magento route path you choose for the TYPO3 page; what is in turn dependent from the Magento layout.
You should prefer using TypoScript to put Magento blocks beside content (i.e. top.search) on your TYPO3 pages:
temp.search < plugin.tx_typogento.widgets.defaultWidget
temp.search {
# TypoGento plugin settings
settings {
# Render Magento block 'top.search'
block = top.search
}
}
Limitations
- Multible Magento websites are currently not supported, but one website with multiple Magento store views.
- Magento session ids (SID) in TYPO3 frontend URLs are currently not supported.
- The TypoScript interface for categories has not been adjusted, and is therefore not functional.
- All aspects of integrating Magento customer accounts into TYPO3 and vice versa need to be refactored.
Contributing
Helping hands are very welcome to complete a first stable version of TypoGento 2.0, which is ready for production use. So contact me directly or use the GitHub issue tracker to get involved.
Please report issues on the GitHub issue tracker. Patches are preferred as GitHub pull requests. Please use the develop branch when sending pull requests.
License
The source code for this project is distributed under the GNU General Public License (GPL-2.0) Version 2 and is available for download at GitHub.