[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1

时间:2021-07-21 16:08:50

BIG FUCK for MODx


MODx document is not that good  ...  at least in my opint of view. I spend hours to search martirals to find out how to build a CMP by using MIGX in MODX 2.3. The officail doument are written for 2.2, but since 2.3, it changed a lot.

OK, that's how to do this shit...

You can check those two vedios:

https://www.youtube.com/watch?v=Dv83iC9iELI  (How to setup CMP in MODx 2.2)

https://www.youtube.com/watch?v=LPJQrsiDdQ4 (Changes in 2.3)

1. INSTALL MIGX (do it yourself)

2. Create package: Package Name: serialnumber; talbe-prefix: serialnumber

[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1

3. Go XML-Schema tab:

<?xml version="1.0" encoding="UTF-8"?>
<model package="serialnumber" baseClass="xPDOObject" platform="mysql" defaultEngine="MyISAM" phpdoc-package="serialnumber" phpdoc-subpackage="model" version="1.1">
<object class="Serials" table="serial" extends="xPDOSimpleObject">
<field key="serial_no" dbtype="varchar" precision="32" phptype="string" null="false" default="" index="index" />
<field key="material_no" dbtype="varchar" precision="32" phptype="string" null="false" default="" />
<field key="description" dbtype="text" phptype="string" null="true" />
<field key="download_count" dbtype="int" precision="10" phptype="integer" null="false" default="1" />
<index alias="serial_no" name="serial_no" primary="false" unique="false" type="BTREE">
<column key="serial_no" length="" collation="A" null="false" />
</index>
<composite alias="odDownloads" class="odDownloads" local="serial_no" foreign="serial_no" cardinality="many" owner="local" />
<composite alias="odLog" class="odLog" local="serial_no" foreign="serial_no" cardinality="many" owner="local" />
<composite alias="odFiles" class="odFiles" local="serial_no" foreign="serial_no" cardinality="many" owner="local" />
</object>
</model>

4. Go "Parse Schema" tab and click "parse Schema" button.

5. Go "Create tables" tab and click "create tables" button.

6. You can now check two things, make sure everything wokrs fine:

  • Go to phpmyadmin, find your table 'serialnumberserial'
  • Go to "Files" --> "core" --> "Compoments" --> "serialnumber" --> "model"

You will see like this:

[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1

7. In "MIGX Management" --> "MIGX" tab --> click "Add item":

[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1

8. In "Settings" tab, add following information.

[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1

  • Name: serialnumber
  • "Add Item" Replacement: "Add a serial"
  • unique MIGX ID: serilanumber (remember this, later will use)

9. Go to "CMP-Settings" tab, add following informations:

[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1

10. Go to "MIGXDB-Settings", add following informaiton:

[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1

Because when we create the package in step 2, we cadd the custom prefix "serialnumber", so here you also need to add it.

[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1

You should be able to find those information in step 3.

11. Click "DONE", save the changes. Then you will see :

[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1

You might have different number, but anymore, the changes are saved.

12. Go to "System" --> "MENU":

[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1

13. Click "Create Menu" Button.

14. Fill in the following information:

[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1

you can leave "Parent" field behind for now.

"Parameters": "serialnumber" is unique MIGXID you set in step 8.

15. You can drag & drop the menu you just created to anywhere you want, for example: I put it under 'Extras'

[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1

16. Refresh the webpage, on the top menu, under 'Extras', you will see:

[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1

17. Click "Serialnumber", nav to the CMP.

[MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 1

OKOKOK, mother fucker !!! This is the first step (important) you want to achieve for CMP.