Веб-контент Liferay

Как можно выбрать определенные динамические элементы для отображения на абстрактном дисплее? Например, если в моем шаблоне есть следующее

 <td>Sample Text</td>
 <td>$sample-text.data</td>

 <td>Display Text</td>
 <td>$display-text.data</td>

Как я могу заставить абстрактный дисплей отображать только отображаемый текст, а не оба?

Извините, позвольте мне попытаться прояснить это. У издателя актива есть веб-контент (раньше это был журнал). Веб-контент имеет различные способы отображения статей. У них есть таблица, список заголовков, аннотация и полное содержание. Если я использую абстрактный дисплей, и пользователь вменил аннотацию, то отображаются заголовок и аннотация. Если реферат не указан, то показываются заголовок и резюме. Резюме состоит из динамических элементов. Мой вопрос действительно сводится к тому, как я могу сделать так, чтобы абстрактное представление отображало только выбранные элементы из сводки. Резюме получено

String summary = StringUtil.shorten(assetRenderer.getSummary(locale), abstractLength);

который находится в файле abstracts.jsp.


person orangegoat    schedule 25.10.2011    source источник


Ответы (1)


Ваш вопрос сбивает с толку, поэтому я расскажу о нескольких вещах.

Шаблон веб-контента Liferay поддерживает несколько языков шаблонов, из которых я лично предпочитаю Velocity Macros (VM).

  1. Если вы не хотите показывать $sample-text.data, просто удалите строку кода, которая его отображает! В частности, удалите эту строку:

    <td>$sample-text.data</td>
    
  2. Если вы пытаетесь управлять отображением на основе какого-либо условия, VM поддерживает условия. Вы можете реализовать их просто так:

    #if ($sample-text.data != null)
            <td>$sample-text.data</td>
    #end
    

Полную документацию по Velocity можно найти здесь: http://velocity.apache.org/engine/releases/velocity-1.5/user-guide.html

person rp.    schedule 25.10.2011