⧼vector-jumptocontent⧽

API:EPrints/Apache/Template: Difference between revisions

From EPrints Documentation
No edit summary
No edit summary
Line 44: Line 44:
<!-- Pod2Wiki= -->
<!-- Pod2Wiki= -->
</div>
</div>
<!-- Pod2Wiki=head_pins -->
<!-- Pod2Wiki=head_custom_pins -->
===Pins===
===Custom Pins===
In <tt>cfg.d/dynamic_template.pl</tt>:
 
  $c-&gt;{dynamic_template}-&gt;{function} = sub {
    my( $repo, $parts ) = @_;
 
    $parts-&gt;{mypin} = $repo-&gt;xml-&gt;create_text_node( "Hello, World!" );
  };
 
In <tt>archives/[archiveid]/cfg/templates/default.xml</tt> (copy from <tt>lib/templates/default.xml if not already exists):
 
</tt>  &lt;epc:pin ref="mypin" /&gt;
 
Or, for just the text content of a pin:
 
  &lt;epc:pin ref="mypin" textonly="yes" /&gt;
 
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
<span style='display:none'>User Comments</span>
<!-- Edit below this comment -->
 
 
<!-- Pod2Wiki= -->
</div>
<!-- Pod2Wiki=head_default_pins -->
===Default Pins===
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
<span style='display:none'>User Comments</span>
<span style='display:none'>User Comments</span>

Revision as of 16:28, 14 December 2011

Latest Source Code (3.4, 3.3) | Revision Log | Before editing this page please read Pod2Wiki


NAME

EPrints::Apache::Template - Template Applying Module

User Comments


SYNOPSIS

 <?xml version="1.0" standalone="no"?>
 <!DOCTYPE html SYSTEM "entities.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml" xmlns:epc="http://eprints.org/ep3/control">
   <head>
     <title><epc:pin ref="title" textonly="yes"/> - <epc:phrase ref="archive_name"/></title>
   ...
 

User Comments


DESCRIPTION

When HTML pages are served by EPrints they are processed through a template file. There are typically two template files, one for HTTP and one for HTTPS (if configured).

Templates are parsed at the server start-up which expands any included phrases. The resulting document is split into chunks where a chunk is either a section of XHTML or an <epc:pin>. Pins are replaced with the page content.

User Comments


Custom Pins

In cfg.d/dynamic_template.pl:

 $c->{dynamic_template}->{function} = sub {
   my( $repo, $parts ) = @_;
 
   $parts->{mypin} = $repo->xml->create_text_node( "Hello, World!" );
 };
 

In archives/[archiveid]/cfg/templates/default.xml (copy from lib/templates/default.xml if not already exists):

<epc:pin ref="mypin" />

Or, for just the text content of a pin:

 <epc:pin ref="mypin" textonly="yes" />
 

User Comments


Default Pins

User Comments


title

The title of the page.

User Comments


page

The page content.

User Comments


login_status_header

HTML <head> includes for the login status of the user - currently just some JavaScript variables.

User Comments


head

Page-specific HTML <head> contents.

User Comments


pagetop

(Unused?)

User Comments


login_status

A menu containing EPrints::Plugin::Screens that appear in key_tools. The content from each plugin's render_action_link is rendered as a HTML <ul> list.

Historically this was the login/logout links plus key_tools but since 3.3 login/logout are Screen plugins as well.

User Comments


languages

The render_action_link from EPrints::Plugin::Screen::SetLang.

User Comments


SEE ALSO

The directories scanned for template sources are in EPrints::Repository/template_dirs.

User Comments


COPYRIGHT

User Comments