MapServer TEMPLATE

From Wildsong
Jump to navigationJump to search

"Templates" is the simplest way to create an interactive mapserver site. (You can create non-interactive ones without templates but what's the fun of that?)

The non-interacttive example

Without using a template, I (the masterful Web GIS progreammer) can create a .map file and put the appropriate URL onto a Web page, for example,

http://mapserver.wildsong.biz/cgi-bin/mapserv?map=../mapserver/html/demo/hello.map&mode=map&layer=credits

This invokes the CGI version of the mapserv executable that lives on my server and tells it to load up a map file, display the results by sending the image back to your browser ("mode=map"), and to display what's in the layer called credits ("layer=credits").

I am keeping my files for this project in the html directory tree so that you can download them if you want to look at them. For security normally I would keep them OUTSIDE the tree... just because...

So for example, you can grab the map file with this URL: http://mapserver.wildsong.biz/demo/hello.map

The first template

I walked through the MapServer template reference and created a template file that has most of the template tags in it. You can look at it; click here and do view source: http://mapserver.wildsong.biz/demo/hello.template.html

To get it to use my template file, I can change mode to browse and add a template specifier:

http://mapserver.wildsong.biz/cgi-bin/mapserv?map=../mapserver/html/demo/hello.map&mode=browse&map_web_template=../mapserver/html/demo/hello.template.html

I have to specify a layer; that example just shows you a blue box;

http://mapserver.wildsong.biz/cgi-bin/mapserv?map=../mapserver/html/demo/hello.map&mode=browse&map_web_template=../mapserver/html/demo/hello.template.html&layer=credits

The template has lots of mapserver template tags in it, which are a word enclosed by square brackets. They look like wiki tags, come to think of it.