This is an interesting concept.
But, if you use template sets, then you can change the content header line for each category. This is probably a better/safer way to go anyway. If you need a different content headers, you probably need different templates as well.
As for changing links, it should only be a change in the "print cat" routine(s), where the category data is obtained. You need to assign the input database record to the output record, as is done for the other fields. This is "legacy" code, and logic, and has caused some problems in the past, since "assumed" fields are not passed through, as is done with the Links record.
Hmmm... suddenly got non-trivial, perhaps. Links uses a modified CGI.pm to handle I/O, and that uses an intelligent ->headers routine, that only sets headers once. You'd need to be able to replace that, in the code, at the appropriate areas, something like:
($cat->{content_header} ) && $IN->header($cat->{content_header})
That might require significant logic changes, to know where categories are printed out, and if a link is in a certain category, etc.
This couldn't be done in the templates, unless new content header lines override the old ones (I don't know enough about browsers, and protocols to answer that one).
If you could override the content header in the templates, than ignore the past few paragraphs, and after changing the print cat routines to pass through the content_header field, you would put:
<%if content_header%><%content_header%><%endif%>
at the very top of any "page" template (not included template) and it should work.
The WC3 has a list of ways to set content encoding using meta or xml tags. these probably override the default CGI.pm content-headers as they occur within the document context:
http://www.w3.org/...ional/O-charset.html Might be a start.
PUGDOG� Enterprises, Inc. The best way to contact me is to
NOT use Email.
Please leave a PM here.