Frage

Ich versuche, eine Webinhaltsanzeige zu verwenden, um alle Dateien in einem bestimmten Ordner der Dokumentbibliothek anzuzeigen.

Ich möchte die Auswahl des Ordners weiter anpassen.

Wissen Sie, ob ein dynamisches Element in der Vorlage existiert, das auf einen Ordner nicht in ein bestimmtes Feld in der Dokumentbibliothek hinweist?

Wenn nicht möglich ist, kennt jemand einen anderen Weg, dies zu tun?

vielen Dank im Voraus

Sabrina

War es hilfreich?

Lösung

Sie können eine Struktur erstellen, die ein Textfeld für OrdnerID mit dem Namen "Ordnerid" enthält.

Als Vorlage erstellen

#set($service = $serviceLocator.findService("com.liferay.portlet.documentlibrary.service.DLFileEntryLocalService"))
#set($gid = $getterUtil.getLong($request.get("theme-display").get("scope-group-id")))
#set($fid = $getterUtil.getLong($folderId.getData()))

#set($files = $service.getFileEntries($gid, $fid))

#foreach($doc in $files)
    #set($uet = $httpUtil.encodeURL($htmlUtil.unescape($doc.getTitle())))
    <a href="/documents/$gid/$fid/$uet">$doc.getTitle()</a><br />
#end

Erstellen Sie Artikel nach dieser Vorlage/Struktur und geben Sie die Ordner -ID ein, die Sie anzeigen möchten. Fügen Sie "Webinhalte Anzeige" -Portlet hinzu, das diesen Artikel anzeigt.

AKTUALISIEREN:

Für Liferay 6.1 wurde die Signatur der Methode geändert und ist ist

List<DLFileEntry>   getFileEntries(long groupId, long folderId, int start, int end, OrderByComparator obc) 

Damit Liferay 6.1 Sie also den Anruf ändern sollten, um zumindest zu sein

#set($files = $service.getFileEntries($gid, $fid, -1, -1, null))

oder ändern Sie für Start/Ende/Sortierung.

Andere Tipps

Sie können das Dokumentbibliotheksanzeigeportlet verwenden, um dies zu erreichen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top