MIGX
Last updated Oct 27th, 2020 | Page history | Improve this page | Report an issue
Support the team building MODX with a monthly donation.
The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.
Backers
Budget
$301 per month—let's make that $500!
Learn moreWhat is MIGX?¶
MIGX is a custom Template Variable (TV) input type for aggregating multiple TVs into one TV. This aggregation greatly simplifies the workflow for end users of the manager to add complex data items to the manager. A data item can consist of any number of any other TVs, including text, images, files, checkboxes, etc.
The package is highly customizable and allows the developer to define a custom input window for the MIGX TV. From this input window, items can be added, modified, and reordered.
The package also ships with a snippet ( getImageList) that facilitates the easy retrieval of the complex data items from the custom MIGX TV input type.
Please read below for install instructions for MIGX as they differ from typical MODX packages.
MIGX stands for MultiItemsGridtv for MODX.
Requirements¶
- MODX Revolution 2.1 rc4 or later
- PHP5 or later MIGX also works on Revolution 2.0.8 with limited functionality.
Download¶
MIGX can be downloaded from within the Revolution manager via Package Management, or from the MODX Extras Repository, available here: https://modx.com/extras/package/migx
Installation Instructions¶
Step 1: Package Installation¶
Install the package via the the link above.
Step 2: Set up the MIGX Configurator Custom Manager Page (CMP) and Package Manager¶
Since Version 2.8 this steps (1-19) are not longer needed.
Note: It would be prudent to create a snapshot of your MODX database before setup as this process will change your database structure.
- Open the "System" menu from within the Revolution Manager
- Click the "Actions" menu item
- Find the MIGX category from the list of actions on left. Right click on it.
- Click "Create Action Here"
- Type "index" for controller
- Ensure "migx" is selected for the namespace
- Select "No Action" for the parent controller
- Click "Save"
- Refresh the page
- Find the Components category from the list of top menu items on the right. Right click on it.
- Click "Place Action Here"
- Lexicon Key: migx
- Description: Configurator and Package Manager
- Action: migx - index (there are multiple pages sorted alphabetically. Make sure you go past all the core actions)
- Icon: (leave blank)
- Parameters: &configs=packagemanager||migxconfigs||setup
- Handler: (leave blank)
- Permissions: (leave blank)
- Click "save"
- Refresh the page
- Open the "Components" menu
- Click the new MIGX Action item you created.
- Click the Setup / Upgrade tab
- WARNING: Before this next step, you probably want to ensure that you've created a snapshot of your database.
- Click the Setup button
- Done!
Upgrading to MIGX 2.0¶
MIGX 2.0 requires a new field in the MIGX table within your database to work properly. This procedure will add a new auto_increment field, MIGX_id, that is required for the getImageList snippet to work correctly. It is important that you create a snapshot of your database before any database structure changes.
Step 1: Backup your database¶
Make a backup of your database tables, specifically the modx_site_tmplvar_contentvalues table.
Step 2: Component Upgrade¶
- Open the "Components" menu from within the Revolution Manager
- Click the MIGX Action Item
- Click the Setup / Upgrade tab
- WARNING: Before this next step, you probably want to ensure that you've created a snapshot of your database.
- Click the Upgrade button
- Done!
Development and Bug Reporting¶
MIGX is stored and developed by Bruno17 using GitHub: https://github.com/Bruno17/migx
Usage¶
Step 1: Install MIGX¶
Follow the instructions in this document.
Step 2: Backend Usage¶
Create a new TV and apply it to a template
Step 3: Data Entry¶
Fill in content into your new TV.
Step 4: Frontend Usage¶
Use the getImageList snippet to display content from your new TV.