Hola a todos!
Este es mi caso:
Tengo 3 colecciones quiero mostra el contenido de estas como ultimas
Noticias, Ultimos Documentos y Proximos Eventos,
pero las quiero mostrar en el frontpage en tres columnas. Asigne una vista
al frontpage con el siguiente codigo
site = context.getSite()
site.setLayout('bienvenido')
Esto en un setuphandlers, ahora el archivo bienvenido.pt tiene el siguiente
código
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
lang="en"
metal:use-macro="here/main_template/macros/master"
i18n:domain="plone">
<body>
<div metal:fill-slot="main">
<metal:main-macro define-macro="main">
<div metal:use-macro="here/document_actions/macros/document_actions">
Document actions (print, sendto etc)
</div>
<a href=""
class="link-parent"
tal:define="parent_url python:here.navigationParent(here,
template_id)"
tal:condition="parent_url"
tal:attributes="href parent_url"
i18n:translate="go_to_parent_url">
Up one level
</a>
<div class="documentDescription" tal:content="here/Description">
description
</div>
<metal:listingmacro define-macro="listing">
<tal:foldercontents define="contentFilter
contentFilter|request/contentFilter|nothing;
limit_display
limit_display|request/limit_display|nothing;
more_url
more_url|request/more_url|string:folder_contents;
contentsMethod
python:test(here.portal_type=='Topic',
here.queryCatalog,
here.getFolderContents);
folderContents
python:here.getFolderContents(contentFilter =
{'portal_type' : ['Topic']}, batch =
True);
use_view_action
site_properties/typesUseViewActionInListings;
over_limit python: limit_display and
len(folderContents) > limit_display;
folderContents python: (over_limit and
folderContents[:limit_display])
or
folderContents;
batch folderContents">
<tal:listing condition="folderContents">
<div metal:use-macro="here/batch_macros/macros/navigation" />
<div tal:repeat="item folderContents">
<tal:block tal:define="item_url
item/getURL|item/absolute_url;
item_id item/getId|item/id;
item_title_or_id
item/pretty_title_or_id;
item_description item/Description;
item_type item/portal_type;
item_type_title item/Type;
item_modified item/ModificationDate;
item_created item/CreationDate;
item_type_class python: 'contenttype-'
+ putils.normalizeString(item_type);
item_wf_state
item/review_state|python: wtool.getInfoFor(item, 'review_state', '');
item_wf_state_class python:'state-' +
putils.normalizeString(item_wf_state);
item_creator item/Creator;
item_effective
item/effective/ISO|item/EffectiveDate|nothing;
item_start
item/start/ISO|item/StartDate|nothing;
item_end
item/end/ISO|item/EndDate|nothing;
item_object item/getObject;
">
<h1>
<span style="margin: 0;
padding: 0;
border: none !important;
text-decoration: none;"
tal:condition="not: isAnon">
<a href="/view" tal:define="url
python:(item_url+'/criterion_edit_form')" tal:attributes="href url" >
<img src="" alt="" title=""
tal:attributes="src
string:$portal_url/pencil_icon.gif;
alt python:('editar
Criterio ' + item_title_or_id);
title python:('editar
Criterio ' +item_title_or_id)
" />
</a>
</span>
<span class="documentFirstHeading"
metal:define-macro="listitem"
tal:content="item_title_or_id"/>
</h1>
<div class="documentByLine" tal:define="creator
item_object/Creator;">
<tal:name tal:condition="creator"
tal:define="author python:mtool.getMemberInfo(creator)">
<span i18n:translate="label_by_author">
by
<a href="#"
tal:attributes="href
string:${portal_url}/author/${creator}"
tal:content="python:author and
author['fullname'] or creator"
tal:omit-tag="not:author"
i18n:name="author">
Edgard Aviles
</a>
</span>
—
</tal:name>
<span i18n:translate="box_last_modified">
last modified
</span>
<span
tal:replace="python:item_object.toLocalizedTime(item_object.ModificationDate(),long_format=1)">
August 16, 2001 at 23:35:59
</span>
</div>
<p class="documentDescription">
<span tal:omit-tag=""
tal:condition="not:item_description">
</span>
<span tal:omit-tag="" tal:content="item_description">
description
</span>
</p>
<div class="plain"><tal:block *tal:content="structure
item_object/getId*" /></div>
<div class="visualClear"><!-- --></div>
</tal:block>
</div>
</tal:listing>
<metal:empty metal:define-slot="no_items_in_listing">
<p class="discreet"
tal:condition="not: folderContents"
i18n:translate="description_no_items_in_folder">
There are currently no items in this folder.
</p>
</metal:empty>
</tal:foldercontents>
</metal:listingmacro>
</metal:main-macro>
</div>
</body>
</html>
Lo unico que he logrado obtener es el titulo de la coleccion junto con la
descripción, su autor fecha de modificación,
pero la idea es mostrar el contenido que generan estas colecciones.....
como pueden ver el codigo *tal:content="structure item_object/getId
*muestra el Id de dicha coleccion pero aca es donde quisiera decirle que me
muestre
el contenido de la coleccion iterada (por ejemplo las ultimas noticias).
La intensión de hacerlo por medio de una colección previamente creada, es
que en un futuro
solo se le cambie el critero a dicha collection y no tener que hacerlo a
nivel de codigo :)
No estoy realmente seguro de que se logre hacer :-/ ... pero si alguien sabe
de esto
desde le agradezco su ayuda :)
Saludes a todos!!!
_______________________________________________
Plone-ConoSur mailing list
[email protected]
http://lists.plone.org/mailman/listinfo/plone-conosur