Переменные Comus
Basically the template is controlled by special {{macros}} that you place on your web page, the macros tell Comus Thumbs where you want to position things, Comus then scans the template page, and inserts the links and thumbs as you request, or it will perform special operations on the page, it the nsaves the result into a new page and directory of your choosing. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Terminology Macros,Variables,Extensions,Modifiers,Links,Thumbs. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| A Quick Overview of terminology | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
This section provides an introduction to the building blocks of the script, it provides a primer for the more detailed information that follows. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Single Link by Category | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| DESCRIPTION: How to create singlular links from a chosen category. FORMAT: {{category-type-index}} Where category is either 'all' or the case sensitive name of a chosen category, and type is one of [link or archivelink] and index is the selector of which link in thelist to use. EXAMPLE: The 1st, 3rd and 2nd link in the list, taken from only the teen category.
NOTES: You would use this type, if you wanted very specific control over your layout, maybe you want to place banners and blind links in the middle of your table, this is a perfect use for Singular links. -Singular links do not need table tags, unless you define the link template in such a way to require them. -If singular links do not find any images in a particular category, or do not have enough images to complete the list, then they will search at random throughout your gallery listings, to make up the difference. -By default images have priority over links, but once used as an image or a link the gallery will be flagged and will not be available to the other lists. -Note in this example I deliberately doubled up on the 1st teen link, the script automatically places the first occurance of the link in both locations. -Indexes start at 1 and run sequentially upwards, if you miss an index (1,2, ,4,5) then the script will drop your last images, in this case it would see there were only 4 links requested, and it would have no image avail for index 5. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Single thumbs used in a custom table of 1 category | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| DESCRIPTION: Places singlular thumbs from a chosen category. FORMAT: {{category-type-index}} Where category is either 'all' or the case sensitive name of a chosen category, and type is one of [thumb or archivethumb] and index is the selector of which link in the list to use. EXAMPLE: A custom table of 3 by 3 thumbs, taken from the teen database -The lower the number the higher the priority of that image in your list. So index=1 is the very first thumb pulled from your list, depending on how you have ordered your list, this could be a high priority image. By default, images are sorted at random but weighted by the rank you assign to them through the approval process. Each prefered submitter can have his own default rank that you can assign, and each standard submitted gets a default vote of 7. This gives you 3 levels of downgrade and 6 levels of upgrade to play with. Each level represents approximately a 10% jump, so votes of 1 should consistently fall somewhere within the top 10%, as the votes fall more towards the extremities they become less eratic, while votes in the mid ranges will tend to bounce around a lot. This is done so votes you upgrade, will tend to get sent to the top of the list, and votes you down grade will tend to randomize at the bottom, while votes in the middle will get a fair jumbling. -archivethumb types are explained below, but basically pull from the list after all links and thumbs have been processed. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Singular links in a custom table | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| DESCRIPTION: Places singlular links on a page. FORMAT: {{category-type-index}} Where category is either 'all' or the case sensitive name of a chosen category, and type is one of [link or archivelink] and index is the selector of which link in the list to use. EXAMPLE: A custom table of 3 by 3 links
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Including files | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| DESCRIPTION: Include any file into your page. FORMAT: {{include-(path or url)sourcefile}} Where include is the keyword to trigger this macro, and sourcefile is the name of the file to include. ALIAS: This command is an Alias for {{showfile-sourcefile}} EXAMPLE: A default include file has been set up for this demo. It contains a single thumb and a short messge. The file itself is created in the next section, note that because of the forward reference that any changes to the file will not be reflected until the next refresh of the page. This is an included document test_out.txt -Included files do NOT get interpreted by the template processor, they just get added to the current output, to process macros on a page file, see below. -By default files are extracted from the /templates folder, but you can use ../ path modifications to reach the rest of your drive, or you can just use a direct http:// url, but note where you use the url it will interpret your page first. -Includes allow you to use special sections like 'headers' and 'footers' which are built into your pages at compile time, allowing you the benefit of shtml/php/asp includes without having to have a runtime script while in production. That means you can run the TGP side of your site entirely in HTML only mode, reducing server overhead and costs considerably. -Includes can also be used to load your archives or the results of custom template builds. (see next section for info on custom templates) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Including and Building Custom Templates | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| DESCRIPTION: How to process and build a template file. FORMAT: {{makefile-(path or url)sourcefile-targetfile}} Where 'template' is the keyword to trigger this macro, and sourcefile is the name of the file to load and process and targetfile is the name of the file to save results to. EXAMPLE: Building a custom template When this macro is placed on a page, it will first check to see if a rebuild is required, if it is then it will load the desired template from your /templates directory by default, or it will search the path, or load from the http:// URL you have specified. -The source file can also execute the same macros as your makefile template. It can build and include pages and write them to disk (into the templates folder by default). You can also specifiy other locations by adding relative path information to the filename. IE. {{makefile-testin.txt-../../testout.txt}} would take the file testin.txt, parse it and write the results 2 folders up from the ct/templates folder. (Assuming Comus is in the subfolder /ct/ then it would write the file into the main index folder of your site. -You might need to make sure that PHP has permissions to read/write the files. New target files will usually complain about permission errors, you will need to chmod 777 the target file, so that both you and Apache have read/write/execute to the target file. -Templates can be used to create Archive pages. The script will start pulling thumbs from the top most 'makefile' macro found within Templates Control Center and then execute the 'makefile' macros found within each source template. The lowest macro on the page, gets the eldest thumbs. Remember this if you are trying to lay pages out and are wondering why your new thumbs are not showing up. -Once you have created a page, to reference or link to the page you can either { include } it using the method mentioned above, or you can include it using a php or an SSI include. Or if you have designed your template so that the page can stand completely alone, you can name it with a .html extension and reference it directly. -The macro works on both templates and the Make Files Section found inthe Templates control center. -Note that no links or code are created ON the page that actually invokes this macro. If you need to link to the resulting page, or if you need to view the results, then you will either have to create a link to the page, or you will need to use an include to load the results into a page. So for example, you could use an include to load the template result onto your main page. -If you use this feature it is best to try and build the template, before you try to include it. -A resulting template page can only be manipulated by the first macro which calls it, subsequent requests to write to the same file during the same session, will be ignored. -Your target filenames can have any extension they like, and so your templates can be in any scripting language you like. -You have the option of loading the template file with any language you like, Comus's include method should be the fastest during run time, because it compiles the code right into the page so that it can be static. But you can load the page dynamically at load time if you like with PHP/ASP/SSI/JS or whatever. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Building Archive Lists | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| DESCRIPTION: Extract and build links thumbs from the archives. NOTES: Archive galleries are the galleries that remain after all the current galleries have been extracted. -By placing multiple makefile macros in the makefile template it gives you the option of creating separate pages which contain archived links and thumbs. The method we use for accessing the archive galleries is to simply control the order in which we request the pages from within the master Makefile template. [START MAKEFILE] {{makefile-indexpage.txt-../../index.shtml}} {{makefile-archivepage.txt-../../archive.shtml}} [END MAKEFILE] Will process your indexpage.txt file FIRST and write it to index.shtml in your web root folder, pulling the most current galleries. It will then use what remains in your pool to create the archives. NOTE:You need to make sure you use macros within the archive pages which only look for thumbs which are 1 day or older say with an query-age1}} extension, or your archive page will probably try to pull fresh galleries, as all basic non extended macros will always try to grab fresh thumbs by default. For example. The system has a default query for pulling galleries of one day older or more. {{all-links-20-1-query-age1}} Will list a vertical column of 20 links, which are 1 day or older. -The idea is that you create a separate template page to your main page for holding your archived galleries, and then on this archive page you place your {{category-type-dimension}} macros. -Then you either place a direct link to the resulting file, from your main page, or you can include the resulting page, by using a macro/shtml/php/or the scripting language of your choice. Note because of the nature of the macro ordering, when using {{include}} for displaying archived gallery pages you will have to display the archives from the previous build, or in other words, the archive listings will be 1 build old, when displayed. (hope it makes sense as to why) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Available Variables within templates | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Variables Available in the Trade Script Strings | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Comus is able to rewrite the urls that are sent to the trade scripts, and so can dynamically alter skim ratios and grouping based upon position or category. Note you can actually use any variable above to pass to the trade scripts, this section just shows the most common options available to you. Make sure you examine the [?] Help links, within settings because they have presets for the most popular trade scripts that you can just copy and paste.
This would allow you to dynamically control shave ratios based on macro position, or category, it would also pass link tracking information through to the script, which would look like, p_TXT_Teen for a click on a teens text link from someone on a proxy server. (FYI Abnormal outgoing Proxy server traffic is an indication of someone using a hitbot on you, and can be used to monitor cheaters, if your ratio.) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Introducing Macro Extenders | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| OVERVIEW: Macro extenders are suffixed onto standard link and thumb macros and allow you to extend and override the default sorting options for the macros. For example you can sort by the number of days the gallery has been listed, weeks, by the rank you have assigned, clicks, description, description length, number of images, file sizes, just about anything you can imagine. More info below. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| The Query Macro Exntender. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| DESCRIPTION: Splits and sorts your lists in almost any imaginable way by using queries. FORMAT: {{category-type-index-query-"string"}} | {{category-types-rows-columns-query-qindex}} where query is a keyword to trigger this macro extension and qindex is an index to preset query (See below) {{all-thumbs-3-3-query-"description like '%blonde%' or url like '%blonde%'"}} EXAMPLE {{setquery-1-"description like '%blonde%' or url like '%blonde%'"}} {{all-thumbs-3-3-query-1}} This would first define a query and give an id of 1, the second macro then uses the defined query to search descriptions and urls for anything containing blonde. Note that the query is a mySQL WHERE clause and must be within double quotes "" NOTES: Advanced capability, highly flexible and powerful. Finally, as I started thinking about all the options that I could build lists with, I decided to just expose the database query string and structure to you. So whatever your imagination can think of, is available to you. You will need to know how to structure a mySQL WHERE clause - so go look up queries on mysql.org. Basically it gives you the ability to build custom lists and filters using less than, greater than, equal to, similar to, starts with, ends with,etc,etc and order them in any way you please. (If the script does not detect an ORDER BY, then it will assign its default ordering algorithm of date desc,rand()*vote.) NOTE: It is not a full query, but just a WHERE clause. You can use the 'query' capability of the post/review/search page to test the results of your queries, before you actually use them. See the next section for an advanced application and examples of this option.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Custom Queries and Reordering by Click Count | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
NOTES:This uses a combination of features built into Comus, and works with the custom 'Query' capabilities of the script. 1 Most frequented galleries for the day {{setquery-1-" periodsshown=1 order by clicks DESC"}} 2 Most popular for the week (Assumes your refresh period is daily, otherwise adjust accordingly) {{setquery-2-" periodsshown < 8 AND periodsshown > 0 ORDER BY clicks DESC"}} 3 Random but weighted by click {{setquery-3-" periodsshown >0 ORDER BY (clicks*rand())+(clicks*rand())+(clicks*rand()) DESC"}} 4 Above average galleries weighted by vote {{setquery-4-" periodsshown >0 AND clicks > sum(clicks)/count(*) ORDER BY (vote*rand())+(vote*rand())+(vote*rand())"}} 5 Multiple category selections (make sure you use it as category type 'all' first) and then the script will filter for you. {{setquery-multicat-"(category LIKE '%teen%' OR category LIKE '%amateur%')"}} 6 Combined queries, top ranked with random picks from the month priority votes first, clicks second {{setquery-7-"(vote=1 OR (periodsshown < 30) ORDER BY vote,clicks DESC"}} Note how you are not limited to using just numbers for the query identifier? as in [query-multicat] and also that you can use the %global_variables% defined above in the queries as well. Now to actually implement one of these queries in your listing you would extend the macro by adding the -query-query_name}} to the end of your macro, IE: |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Using Default Queries | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
There is a special debugging macro which will show you the available query list, this could be handy if you're thinking of building a custom query. We might have already defined one as a default system query, and you can just use that instead, or perhps use it to build a custom query. To show the list of all currently active queries you can use, {{showqueries}}. To use the queries simply use the [key] as your 'query_identifier' query[age0]=" periodsshown >-1 ORDER BY periodsshown, ( (vote*rand())+ (vote*rand()) + (vote*rand()) )"query[age1]= "periodsshown > 0 ORDER BY periodsshown, ( (vote*rand())+ (vote*rand()) + (vote*rand()) )"query[age2]= "periodsshown > 1 ORDER BY periodsshown, ( (vote*rand())+ (vote*rand()) + (vote*rand()) ) "query[age3]= "periodsshown > 2 ORDER BY periodsshown, ( (vote*rand())+ (vote*rand()) + (vote*rand()) ) "query[age4]= "periodsshown > 3 ORDER BY periodsshown, ( (vote*rand())+ (vote*rand()) + (vote*rand()) ) "query[age5]= "periodsshown > 4 ORDER BY periodsshown, ( (vote*rand())+ (vote*rand()) + (vote*rand()) ) "query[age6]= "periodsshown > 5 ORDER BY periodsshown, ( (vote*rand())+ (vote*rand()) + (vote*rand()) ) "query[age7]= "periodsshown > 6 ORDER BY periodsshown, ( (vote*rand())+ (vote*rand()) + (vote*rand()) ) "query[age14]= "periodsshown> 13 ORDER BY periodsshown, ( (vote*rand())+ (vote*rand()) + (vote*rand()) ) "query[age21]= "periodsshown > 20 ORDER BY periodsshown, ( (vote*rand())+ (vote*rand()) + (vote*rand()) ) "query[age28]= "periodsshown > 28 ORDER BY periodsshown, ( (vote*rand())+ (vote*rand()) + (vote*rand()) ) "query[days most clicked]=" periodsshown=1 order by clicks DESC, mgdate DESC"query[this weeks most clicked]= "periodsshown < 8 AND periodsshown >0 order by clicks DESC, mgdate DESC"query[last weeks most clicked]= "periodsshown < 15 AND periodsshown >7 order by clicks DESC, mgdate DESC "query[random by click]= "periodsshown>0 ORDER BY (clicks*rand())+(clicks*rand())+(clicks*rand()) DESC "query[above average]= " clicks > sum(clicks)/count(*) ORDER BY vote*rand()"query[last weeks best]= " ((vote= 1AND periodsshown >7 AND periodsshown < 15 ) ORDER BY clicks DESC "query[weeks best]= " ((vote< 4 AND periodsshown < 7) ORDER BY clicks DESC,vote*rand() "query[months best]= " ((vote< 4 AND periodsshown < 30) ORDER BY clicks DESC,vote*rand() "NOTE: These are just some of the available queries, do a dump to see if I have added any or changed them. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Dynamic trade script options | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comus Thumbs is made to integrate with other trade scripts, and it gives you several options for controlling skim ratios for your galleries. Skim trade ratios per Macro This is done via a macro modifer, where you prefix your category with a skim ratio value, such as {{#80#all-thumb-1}} This will feed the value of 80 through to the %lshave% or %tshave% variable within your trade script prefix and suffix definitions (found within the control center). Note that lshave and tshave do not have to be a number, they can also be text strings which feed other arguments for your trade script, or even multiple arguments, IE{{#p=50&x=latin#all-thumb-1}} This form of trade script modification takes higher priority over the trade ratios by category definitions descibed next. Trade ratios per category It is possible to feed trade ratios through to your trade scripts on a per category basis by using the %tshave% and %lshave% variables. You will find the skim ratios for these within the Category Control Center. Totally disabling the trade script for only 1 page You can also disable every trade on a page, by using the {{notrades}} macro. Place this macro near the top of the page, so you can be sure that it is activated for the whole page. It can be used on archive pages to effectively remove the trade script completely. Disabling the trade script for a section It is a better idea to modify your ratio to 100 than to remove your trade script from the equation, because otherwise it wont be able to measure incoming/outgoing clicks, and could mess up your stats and analysis software. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Modifying the link and thumb template on the fly | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| DESCRIPTION: (Advanced) How to change the link or thumb template dynamically. FORMAT: {{setlinktemplate-new_link_template}} | {{setthumbtemplate-new_link_template}} where setlinktemplate and setthumbtemplate are special keywords to trigger this macro and new_link_template is whatever you would put into a link or thumb template EXAMPLE {{setlinktemplate-<a href= '%url%'>%cat%</a>}} NOTES: This changes all the link formatting on the current template. You can use this to modify the link or table format on a section by section basis, but you need to combine the include and template building options, because this macro affects ALL links on a template. Therefore if you want to replace your link style for one section only, then you have to put the sections into different templates, activate this macro on the new template, and then return to your main page and include the result. If you use this on a template and then include another template your style will not be inherited by the included template, unless that template also has a setlinktemplate modifier on it. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Using the Weekday Macros | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| DESCRIPTION:This is used to create dynamic graphical headers that reflect the day of the week, as well as pst days of the week. IE if today was Monday and you wanted to show title sections with Monday, Sunday, Saturday, Friday. FORMAT: %this_weekday-index% where index is a value from 0 to 6 representing 0 to 6 days ago. EXAMPLE If today was Monday on the server then, %this_weekday-0% = Mon %this_weekday-1% = Sun NOTES: This creates a 3 letter code representing the day of the week, the 3 letter code is case sensitive. 'Mon,Tue,Wed,Thu,Fri,Sat,Sun' You can use this then to create a set of image files which represent headers for your weekdays. IE: If you had a set of headers called, 'Monday.gif, Tueday.gif,Wedday.gif,Friday.gif,Satday.gif,Sunday.gif' (Note the spelling), then your img src field would look like img src="%this_weekday-0%day.gif". |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| TIPS and TRICKS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Automatic Refresh: In Comus 1.3 page refresh is automatic, but it requires that it can find an <img src> tag near the top of the page. It will attach itself to this image and use it to monitor for refreshing and rebuilding. Note there are 2 variables at play here. Comus will rebuild it self once per day with new galleries, at the hour that you set request it to. But it can also be made to refresh itself periodically to reflect changes in click counts etc, say once every 10 minutes, this is controlled via the refresh period. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| The MAKE FILE Template. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| The Make File Template is similar to the makefile of other compiled languages, it can be found as the last section within the Template Control Center, under the admin page. It tells the script where to find the templates files and where to put the resulting destination files. You can have as many files as you like in your site. By default, the script will try to make sure than none of the files use the same images twice, although you can override this, and pull the images again for custom pages. Usually you want to build your main page file first, and then build the sub pages, and then finally build the archive pages. Order is important, because the script will run down the Make File building the pages as it finds them, and pulling from your galleries as it goes. The main command of the makefile Template is the {{makefile-sourcefile-targetfile}} macro, where makefile is the command to invoke this macro and sourcefile is the name of the file to use as the source template, and targetfile is the name of the resulting script or HTML file which will contain all your links and thumbs. You can have an unlimited number of Template Files, and you can write to an unlimited number of Target Files. Pretty much anywhere on your disk drive, provided you have permissions. Each Target File is a precompiled static page, and can be of any file extension or type. We recommend making html only Target Files, because they load faster, with less server load, and are less expensive to run. Designing a site for Comus is pretty much the same as any other website, with one added step, of actually compiling the site pages through the script. You can still use your standard development tools, simply upload your files into the /templates folder containing all your macros, and then let Comus do the rest, building and posting your files into your site. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||