Tags:
view all tags
---+!! Include Topics and Web Pages Using =%<nop>INCLUDE{...}%= Variable Use the =%<nop>INCLUDE{...}%= variable to embed the content of another topic or web page inside a TWiki topic. The whole content or only parts of a page can be included. If needed, set a proxy server in %WIKIPREFSTOPIC%. %TOC% ---++ Syntax Example =%<nop>INCLUDE{ "page" pattern="reg-exp" rev="2" warn="off" section="clients" PARAMETER1="value" PARAMETER2="Some value"}%= The =pattern= parameter is optional and allows you to extract some parts of a web page. Specify a %SYSTEMWEB%.RegularExpression that scans from start (='^'=) to end and contains the text you want to keep in parenthesis, e.g., =pattern="^.*?(from here.*?to here).*"=. You need to make sure that the integrity of a web page is not compromised; for example, if you include a table, make sure to include everything including the table end tag. The example parameters PARAMETER1 and PARAMETER2 will be defined as a variable within the scope of the included topic. The example parameters shown will result in %PARAMETER1% and %PARAMETER2% being defined within the included topic. VarINCLUDE explains the other parameters. __Note:__ All text of a topic is included unless it contains a =%<nop>STARTINCLUDE%= and =%<nop>STOPINCLUDE%=, or you specify a =section= parameter and/or a =pattern= parameter. A pattern will only search between =%<nop>STARTINCLUDE%= and =%<nop>STOPINCLUDE%=. ---++ Usage Examples ---+++ 1. Display regression test results in a TWiki page <pre> <pre> %<nop>INCLUDE{"http://domain/~qa/v1.1/REDTest.log.txt"}% </pre> </pre> ---+++ 2. Display Google's robot.txt file <pre> %<nop>INCLUDE{"http://www.google.com/robots.txt"}% </pre> ---+++ 3. Display the current time in Tokyo in a TWiki page * You type: * ==Tokyo: %<nop>INCLUDE{"http://TWiki.org/cgi-bin/xtra/tzdate?tz=Asia/Tokyo" pattern="^.*<\!--tzdate:date-->(.*?)<\!--/tzdate:date-->.*"}%== * You get: * Tokyo: %INCLUDE{"http://TWiki.org/cgi-bin/xtra/tzdate?tz=Asia/Tokyo" pattern="^.*<\!--tzdate:date-->(.*?)<\!--/tzdate:date-->.*"}% ---+++ 4. Include a topic !MyTopic with two parameters You include the topic with this line <verbatim> %INCLUDE{ "MyTopic" BETTER="apples" WORSE="Oranges"}% </verbatim> An example of a very simple !MyTopic could contain <verbatim> * I like %BETTER% better than %WORSE%. </verbatim> The result would be * I like apples better than oranges. ---+++ 5. Alert Box using Parameterized Include Create a topic called !AlertBox with the following content: <verbatim> ----- %STARTINCLUDE% <div style="border-color:#FF9933; border-style:solid; border-width:thin; width:85%; margin: 0 auto"> <table cellpadding="5" width="100%" cellspacing="0" cellpadding="12" border="0"> <tr bgcolor="#FFBB55"> <td valign="top" width="16"><img src="%ICONURL{warning}%" width="16" height="16" align="absmiddle" alt="" border="0"></td> <td><b> %TITLE% </b></td> </tr> <tr bgcolor="#FFCC66"> <td> </td> <td> %MESSAGE% </td> </tr> </table> </div> %STOPINCLUDE% ----- </verbatim> Now you can write =%<nop>INCLUDE{ "AlertBox" TITLE="Alert" MESSAGE="This a test message" }%= to get this: %INCLUDE{ "%TOPIC%" TITLE="Alert" MESSAGE="This a test message" }% The =TITLE=""= and =MESSAGE=""= parameters are passed into the include. Using this approach, you can create a library of boxes in the %USERSWEB% web, such as <nop>%USERSWEB%.NoteBox, <nop>%USERSWEB%.InfoBox. ---+++ 6. Create a Widget Library You can create a library of [[http://en.wikipedia.org/wiki/GUI_widget][GUI widgets]] using a topic with named sections: 1. Create a !Main.WidgetLibrary topic 2. Create widgets in that topic, such as alert boxes, submit forms, queries, etc. Widgets are defined as named sections and may process parameters. For example, above alert box can be a widget enclosed in =%<nop>STARTSECTION{AlertBox}%= ... =%<nop>ENDSECTION{AlertBox}%= (instead of the =%<nop>STOPINCLUDE%= ... =%<nop>STOPINCLUDE%=) 3. Place a widget in any topic. For example, to use the alert box widget write:%BR% =%<nop>INCLUDE{ "Main.WidgetLibrary" section="AlertBox" TITLE="Alert" MESSAGE="The sky is the limit!" }%= In essence, you are building a library of functions with parameters that people can use. Use your imagination, the sky is the limit! __Related Topics:__ VarINCLUDE, VarSTARTSECTION, VarENDSECTION, UserDocumentationCategory -- __Contributors:__ TWiki:Main/PeterThoeny, TWiki:Main/KennethLavrsen
Edit
|
Attach
|
Watch
|
P
rint version
|
H
istory
:
r14
<
r13
<
r12
<
r11
<
r10
|
B
acklinks
|
V
iew topic
|
Raw edit
|
More topic actions...
Topic revision: r12 - 2010-05-04
-
TWikiContributor
Home
Site map
AFNOG web
Embedded_Systems web
IoT_Course_English web
IoT_Course_French web
Main web
Sandbox web
TWiki web
TWiki Web
User registration
Users
Groups
Index
Search
Changes
Notifications
RSS Feed
Statistics
Preferences
View
Raw View
Print version
Find backlinks
History
More topic actions
Edit
Raw edit
Attach file or image
Edit topic preference settings
Set new parent
More topic actions
User Reference
ATasteOfTWiki
TextFormattingRules
TWikiVariables
FormattedSearch
QuerySearch
TWikiDocGraphics
TWikiSkinBrowser
InstalledPlugins
Admin Maintenance
Reference Manual
InterWikis
ManagingUsers
ManagingWebs
TWikiSiteTools
TWikiPreferences
WebPreferences
Categories
Admin Documentation
Admin Tools
Developer Doc
User Documentation
User Tools
Account
Log In
Register User
Edit
Attach
Copyright © 1999-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback
Note:
Please contribute updates to this topic on TWiki.org at
TWiki:TWiki.IncludeTopicsAndWebPages
.