Embeds
references to ColdFusion pages in CFML. You can embed cfinclude tags
recursively. For another way to encapsulate CFML, see cfmessagebox.
(A ColdFusion page was formerly sometimes called a ColdFusion template
or a template.)
Flow-control tags, Page processing tags
<cfinclude
template = "template name">
attributeCollection attribute
whose value is a structure. Specify the structure name in the attributeCollection attribute
and use the tag’s attribute names as structure keys.ColdFusion MX: Changed error behavior: if you use this tag to include a CFML page whose length is zero bytes, you do not get an error.
Attribute |
Req/Opt |
Default |
Description |
|---|---|---|---|
|
Required |
A logical path to a ColdFusion page. |
ColdFusion searches for included files in the following locations:
In the directory of the current page or a directory relative to the current page
In directories mapped in the ColdFusion Administrator
You
cannot specify an absolute URL or file system path for the file
to include. You can only use paths relative to the directory of
the including page or a directory that is registered in the ColdFusion
Administrator Mappings. The following cfinclude statements
work, assuming that the myinclude.cfm file exists
in the specified directory:
<cfinclude template="myinclude.cfm"> <cfinclude template="../myinclude.cfm"> <cfinclude template="/CFIDE/debug/myinclude.cfm">
But the following do not work:
<cfinclude template="C:\ColdFusion\wwwroot\doccomments\myinclude.cfm"> <cfinclude template="http://localhost:8500/doccomments/myinclude.cfm">
The
included file must be a syntactically correct and complete CFML
page. For example, to output data from within the included page,
you must have a cfoutput tag, including the end
tag, on the included page, not the referring page. Similarly, you
cannot span a cfif tag across the referring page
and the included page; it must be complete within the included page.
You
can specify a variable for the template attribute,
as the following example shows:
<cfset templatetouse="../header/header.cfm"> <cfinclude template="#templatetouse#">
<!--- This example shows the use of cfinclude to paste CFML or HTML code into another page
dynamically. --->
<h4>This example includes the dochome.htm page from the CFDOCS directory. The images do not
display, because they are located in a separate directory. However, the page appears
fully rendered within the contents of this page.</h4>
<cfinclude template = "../cfdocs/dochome.htm">