Compatibility with content management systems (``portals'')

Mig can be configured to work with a number of content management systems, sometimes referred to as portal systems.

PHP-Nuke
http://phpnuke.org/ (tested with 6.0)

PostNuke
http://postnuke.com/ (tested with 0.7.2.1 Phoenix)

PHPWebSite
http://phpwebsite.appstate.edu/ (tested with 0.8.3)

PHPWebThings
http://phpdbform.com/ (tested with 0.5test7)

Xoops
http://xoops.org/ (tested with RC3.0.5)

Geeklog
http://geeklog.sourceforge.net/ (tested with 1.3.6)

Installing for PHP-Nuke, PostNuke, PHPWebSite or PHPWebThings

(Xoops users, see the Xoops section below. Geeklog users, see the Geeklog section below.)

Find the base install directory for your content management system. Using PHP-Nuke as an example, I'll assume that it's /www/mysite.com/nuke

Create a subdirectory called mig (i.e. /www/mysite.com/nuke/mig). Put all the files into that folder as described in the install document, except for the following changes.

  1. Instead of the templates that the install document mentions, copy over the two files in templates/portals. The HTML and CSS files Mig normally uses are not used in PHP-Nuke mode.

  2. Copy index.php to your Nuke directory, not to the mig subdirectory. And call it mig.php, not index.php. Make sure you rename it before you move it, so you do not over-write your Nuke site's index.php file.

  3. Copy config.php.default to config.php in your Mig subdirectory, if you don't already have one there. Make sure you do not copy config.php into your Nuke directory, since Nuke has its own file called config.php and you must be careful not to destroy it!

  4. Edit Mig's config.php and set $phpNukeCompatible to TRUE. Change $phpNukeRoot to your Nuke directory (i.e. /www/mysite.com/nuke) - not the Mig directory, but your Nuke directory.

    (If you're using phpWebThings, you want instead to use the options $phpWebThingsCompatible and $phpWebThingsRoot).

That should be it - http://yournukesite.com/mig.php should work.

PostNuke, PHPWebSite and PHPWebThings users can add Mig to their menus like anything else, just giving mig.php as the target to load.

PHP-Nuke users need a little more work to get their module in place due to PHP-Nuke's module system. In your modules directory, create a new module, such as Photo_Gallery and put this in a file called index.php inside the module directory:

    <?php
        $baseHref = ereg_replace('/modules.*$', '', $PHP_SELF);
        header("Location: http://$SERVER_NAME$baseHref/mig.php");
    ?>

Making sure there are no blank lines before the first line or after the last line! If you don't want to cut and paste or type that in, you can find this code in the phpnuke_module.php file in the mig-contrib package also (available in the Extras section on the web site).

Installing for Xoops sites

To install on a Xoops site, find the base directory of your Xoops system. Inside there should be a modules subdirectory. In that modules directory, create a mig directory.

Install Mig in that mig subdirectory according to the install document, with the following changes:

  1. Instead of the templates that the install document mentions, copy over the two files in templates/portals. The HTML and CSS files Mig normally uses are not used in Xoops mode.

  2. Copy the files in the xoops directory over to the Mig directory on the server. Those files should be:
        xoops_version.php
        mig_logo.jpg
        language/english/index.html
        language/english/modinfo.php

    The latter two should be modules/mig/languages/english/... (i.e. preserve the folder structure when you copy / move the files).

  3. Edit Mig's config.php and set $mig_xoopsCompatible to TRUE. You may have to change $mig_xoopsRoot, but the default should work in most cases. Optionally set $mig_xoopsRBlockForImage and $mig_xoopsRBlockForFolder as you wish.

  4. After that just go to the modules admin in Xoops and install the module. The module is called ``Photo Album''.

Installing for Geeklog sites

  1. Instead of the templates that the install document mentions, copy over the two files in templates/portals. The HTML and CSS files Mig normally uses are not used in Geeklog mode.

  2. Edit Mig's config.php and set $mig_GeeklogCompatible to TRUE. Change $mig_GeeklogRoot to the base directory of your Geeklog installation. Use the public docs directory, not the private admin directory. Do not use a trailing slash (``/''). Optionally set $mig_GeeklogRBlockForImage and $mig_GeeklogRBlockForFolder as you wish.