

Ciao, mi servirebbe per la versione 3.2.11 di Contao un modulo che vedo rimasto per versione antichissima di... Typolight
: https://contao.org/en/extension-list/view/newsorder.10000019.en.html
In pratica dovrei ordinare le news per Titolo e non per data, più precisamente ho a che fare con degli "archivi news" e non "liste news", sarebbe bello che questa facoltà di ordinamento fosse di default nel modulo, ma non è così. Ho cercato qualche estensione per risolvere la cosa, ma non l'ho trovata. Qualche idea? Grazie

In pratica dovrei ordinare le news per Titolo e non per data, più precisamente ho a che fare con degli "archivi news" e non "liste news", sarebbe bello che questa facoltà di ordinamento fosse di default nel modulo, ma non è così. Ho cercato qualche estensione per risolvere la cosa, ma non l'ho trovata. Qualche idea? Grazie
Marco Damian
www.zod.it
www.zod.it
16/01/2015 00:04
Cercato pure io, ma non ne ho viste.
All'interno del modulo news non c'è la possibilità di ordinare gli elementi.
La funzione che recupera gli elementi delle news è findPublishedByPids, l'idea potrebbe essere di partire dal file ModuleNewsList.php e creare un nuovo modulo con l'opzione per l'ordinamento.
All'interno del modulo news non c'è la possibilità di ordinare gli elementi.
La funzione che recupera gli elementi delle news è findPublishedByPids, l'idea potrebbe essere di partire dal file ModuleNewsList.php e creare un nuovo modulo con l'opzione per l'ordinamento.
Paolo B.
paolob@contaocms.it
paolob@contaocms.it
16/01/2015 08:52
Ciao Paolo, grazie sempre della fulminea risposta, ho guardato dove hai indicato e ho trovato che la funzione viene usata nei due casi:
In ModuleNewsArchive.php
in ModuleNewsList.php
Poi se prendiamo models/NewsModel.php (https://github.com/contao/core/blob/master/system/modules/news/models/NewsModel.php) troviamo cosa fa la funzione con i suoi parametri, e mi sembra sia già predisposta per l'ordinamento, in un array finale "arrOptions":
findPublishedFromToByPids($intFrom, $intTo, $arrPids, $intLimit=0, $intOffset=0, array $arrOptions=array())
Infatti più sotto:
Quindi è proprio qui il punto, basterebbe cambiare "date DESC". Purtroppo qui mi fermo, come faccio perché diventi una variabile, che proviene quindi da un campo select messo nel modulo archive o list?
In ModuleNewsArchive.php
php:
// Get the news items if (isset($limit)) { $objArticles = \NewsModel::findPublishedFromToByPids($intBegin, $intEnd, $this->news_archives, $limit, $offset); } else { $objArticles = \NewsModel::findPublishedFromToByPids($intBegin, $intEnd, $this->news_archives); }
in ModuleNewsList.php
php:
// Get the items if (isset($limit)) { $objArticles = \NewsModel::findPublishedByPids($this->news_archives, $blnFeatured, $limit, $offset); } else { $objArticles = \NewsModel::findPublishedByPids($this->news_archives, $blnFeatured, 0, $offset); }
Poi se prendiamo models/NewsModel.php (https://github.com/contao/core/blob/master/system/modules/news/models/NewsModel.php) troviamo cosa fa la funzione con i suoi parametri, e mi sembra sia già predisposta per l'ordinamento, in un array finale "arrOptions":
findPublishedFromToByPids($intFrom, $intTo, $arrPids, $intLimit=0, $intOffset=0, array $arrOptions=array())
Infatti più sotto:
php:
if (!isset($arrOptions['order'])) { $arrOptions['order'] = "$t.date DESC"; }
Quindi è proprio qui il punto, basterebbe cambiare "date DESC". Purtroppo qui mi fermo, come faccio perché diventi una variabile, che proviene quindi da un campo select messo nel modulo archive o list?
Marco Damian
www.zod.it
www.zod.it
16/01/2015 10:18
