Включение файла с разделителями
Листинг 13.23. Включение файла с разделителями
<1хр>
<include src="/home/web/headlines/lthead.txt" delimiter="&&"
firstblock="2" lastblock="4" method="parsed">
<table border="0" cellspacing="l">
<tr>
<td bgcolor="#ffffff" width="100r>
<div class="content">
- <field />
</div>
</td>
</tr>
<tr>
<td bgcolor="#eOeOe8" width="100r>
<strong>
<field type="url" link="Read More..." target="_blank" />
</strong>
<br/>
</td>
</tr>
</table>
</include>
</lxp>
При обработке этого фрагмента теги <field>
заполняются результатами разбора блоков. Поля присваиваются тегам <field>
в порядке нахождения.
Как видно из листинга 13.23, в теге <f ield>
можно определить дополнительный атрибут type. При включении разделенных файлов этот атрибут может принимать значения hidden (значение поля не выводится в выходных данных) и url.
Тип hidden назначается полям, пропускаемым при разборе файла. Поскольку в файлах с разделителями не предусмотрена идентификация блоков по именам, все поля обрабатываются LXP в порядке их следования в исходном файле. Чтобы исключить некоторое поле из вывода, вы назначаете ему атрибут type="hidden" — это позволяет продолжить вывод со следующего поля.
Тип url обычно используется в тех случаях, если поле заведомо содержит URL-адрес. Вместо простого вывода текста создается гипсрссылка по заданному URL-адресу (при помощи тега HTML <a>
). Вместо URL-адреса текст сгенерированной гиперссылки можно заменить любым текстом по своему усмотрению (в листинге 13.23 использовался текст «Read More...»), для этого в теге <field>
достаточно задать атрибут link.
Пример выходных данных LXP после разбора фрагмента, приведенного в листинге 13.23:
<table border="0" cellspacing="l">
<tr>
<td bgcolor="#ffffff" width="100%>
<div class="content">
- LinuxProgramming: python-dev summary 2001-06-21 - 2001-07-05
</div>
</td>
</tr>
</tr>
<td bgcolor="#e0e0e8" width="100%>
<strong>
<a href="http://linuxtoday.com/news_story.php3?ltsn= 2001-07-05-019-21-OS-SW"
target="_blank">
Read More...</a>
</strong>
<br/>
</td>
</tr>
</table>
<table border="0" cellspacing="l">
<tr>
<td bgcolor="#ffffff" width="100%>
<div class="content">
- Chicago Sun-Times: Test drive Linux using friendly tryout software
</div>
</td>
</tr>
<tr>
<td bgcolor="#e0e0e8" width="100r>
<strong>
<a href='1http://linuxtoday.com/news_story.php3?ltsn=2001-07-05-018-21-PS-CY"
target="_blank">
Read More...</a>
</strong>
<br />
</td>
</tr>
</table>
[...]
Примечание 1
Примечание 1
В теге LXP <field type="url ">
можно передавать внешние (по отношению к LXP) атрибуты, такие как class или target. Эти атрибуты включаются в сгенерированный тег <а>
.