problema con paginazione articoli fatti con ctl module maker
Moderator: magallo
problema con paginazione articoli fatti con ctl module maker
buongiorno a tutti
ho istallato il cms 1.7.1 ed ho ftto un modulo con CTL Module MAker per l'iserimento dei vari contenuti che non sono altro che degli articoli. Il modulo da me creato praticamente è su due livelli: categoria e articolo
tutto funziona alla perfezione il problema viene quando vado a fargli fare la paginazione. Lui me la fa ma mi fa vedere praticamente il numero e di conseguenza le pagine del totale degli articoli.
domanda
c'è modo di fargli fare la paginazione solo per gli articoli che appartengono ad una determinata categoria?
spero di essermi spiegato e che qualcuno mi aiuti
grazie mille
G.
ho istallato il cms 1.7.1 ed ho ftto un modulo con CTL Module MAker per l'iserimento dei vari contenuti che non sono altro che degli articoli. Il modulo da me creato praticamente è su due livelli: categoria e articolo
tutto funziona alla perfezione il problema viene quando vado a fargli fare la paginazione. Lui me la fa ma mi fa vedere praticamente il numero e di conseguenza le pagine del totale degli articoli.
domanda
c'è modo di fargli fare la paginazione solo per gli articoli che appartengono ad una determinata categoria?
spero di essermi spiegato e che qualcuno mi aiuti
grazie mille
G.
- protempore
- Power Poster
- Posts: 599
- Joined: Mon Jan 14, 2008 9:08 pm
Re: problema con paginazione articoli fatti con ctl module maker
beh... credo di si... ti sei spiegato, intendojoinweb wrote: ...
spero di essermi spiegato e che qualcuno mi aiuti
ma una domanda sorge spontanea...
a me piace CTLModulMaker... ma non andava bene News che fa benissimo quello che vuoi fargli fare tu al tuo modulo?
quanto alla paginazione con i moduli creati con CTLModulMaker a me sembra che se fai una ricerca dovrebbe restituire il numero di record di quella ricerca e proporre la paginazione di conseguenza... ma magari mi sfugge qualcosa
An eye for an eye will make the whole world blind
Mahatma Gandhi (1869-1948)
Mahatma Gandhi (1869-1948)
Re: problema con paginazione articoli fatti con ctl module maker
ciao protempore
il modulo news non faceva al caso mio, o almeno penso perchè praticamente sono articoli da inserire ma oltre al testo ci devo inserire anche video foto e audio, e siccome non sono molto bravo nel modificare i moduli ho optato per il module maker che mi sembra molto piu semplice e versatile... apparte qualche intoppo
comunque se vuoi vedere di cosa si tratta prova ad andare su www.maurorosati.it/test e vedrai come funziona
per quanto riguarda la paginazione che significa fargli fare la ricerca?
grazie mille ancora
G.
il modulo news non faceva al caso mio, o almeno penso perchè praticamente sono articoli da inserire ma oltre al testo ci devo inserire anche video foto e audio, e siccome non sono molto bravo nel modificare i moduli ho optato per il module maker che mi sembra molto piu semplice e versatile... apparte qualche intoppo
comunque se vuoi vedere di cosa si tratta prova ad andare su www.maurorosati.it/test e vedrai come funziona
per quanto riguarda la paginazione che significa fargli fare la ricerca?
grazie mille ancora
G.
- protempore
- Power Poster
- Posts: 599
- Joined: Mon Jan 14, 2008 9:08 pm
Re: problema con paginazione articoli fatti con ctl module maker
beh... video, foto e campi aggiuntivi li puoi creare anche con il modulo news... e senza modificare alcun ché...
devi creare nel modulo dei campi aggiuntivi... possono essere campi testo, checkbox, textarea o file...
la parte news di questo sito è realizzata con news e, come vedi ci sono sia foto che video...
http://www.teatrolafabbrica.com/it/news ... brica.html
la parte eventi, invece, è realizzata con CTLModulMaker...
quanto alla possibilità di ricercare con il modulo creato con CTLModulMaker, lui ti da 2 possibilità...
1) definire la query nell'amministrazione del modulo e richiamarla con il tag di pagina che chiama il modulo...
{cms_module module="tuomodulo" query="1"}
2) definire nel tag di chiamata (ma devi consentire nelle preferenze del modulo le chiamate SQL manuali) una query ad-hoc...
{cms_module module="tuomodulo" what="articoli" query="A.date_modified > '2009-03-15' AND A.active = 1 AND B.name LIKE 'generali'"}
dove A si riferisce a campi del livello "articoli" e B a campi del livello parent "categorie"
poi che la funzione di paginazione funzioni, non ho verificato, ma il modulo restituendo un certo valore di records dovrebbe, di conseguenza dare una paginazione conseguente...
devi creare nel modulo dei campi aggiuntivi... possono essere campi testo, checkbox, textarea o file...
la parte news di questo sito è realizzata con news e, come vedi ci sono sia foto che video...
http://www.teatrolafabbrica.com/it/news ... brica.html
la parte eventi, invece, è realizzata con CTLModulMaker...
quanto alla possibilità di ricercare con il modulo creato con CTLModulMaker, lui ti da 2 possibilità...
1) definire la query nell'amministrazione del modulo e richiamarla con il tag di pagina che chiama il modulo...
{cms_module module="tuomodulo" query="1"}
2) definire nel tag di chiamata (ma devi consentire nelle preferenze del modulo le chiamate SQL manuali) una query ad-hoc...
{cms_module module="tuomodulo" what="articoli" query="A.date_modified > '2009-03-15' AND A.active = 1 AND B.name LIKE 'generali'"}
dove A si riferisce a campi del livello "articoli" e B a campi del livello parent "categorie"
poi che la funzione di paginazione funzioni, non ho verificato, ma il modulo restituendo un certo valore di records dovrebbe, di conseguenza dare una paginazione conseguente...
An eye for an eye will make the whole world blind
Mahatma Gandhi (1869-1948)
Mahatma Gandhi (1869-1948)
Re: problema con paginazione articoli fatti con ctl module maker
perfetto grazie mille di nuovo!!!!
- protempore
- Power Poster
- Posts: 599
- Joined: Mon Jan 14, 2008 9:08 pm
Re: problema con paginazione articoli fatti con ctl module maker
comunque qualche problema con la paginazione i moduli creati con CTLModulMaker ce li hanno...
quanto meno se utilizzi query SQL manuali bisogna fare qualche modifica al file action.default.php
le righe 12 e 51 vanno commentate così da disattivare la definizione della variabile
$parentlevel = $this->get_nextlevel($what, false);
altrimenti nella select inserisce anche il parent del livello da ricercare e sballa i risultati...
però io sto utilizzando la versione 1.9 di CTLModulMaker... scaricata via svn e non ancora rilasciata... e magari il problema è un altro... ma non credo.
quanto meno se utilizzi query SQL manuali bisogna fare qualche modifica al file action.default.php
le righe 12 e 51 vanno commentate così da disattivare la definizione della variabile
$parentlevel = $this->get_nextlevel($what, false);
altrimenti nella select inserisce anche il parent del livello da ricercare e sballa i risultati...
però io sto utilizzando la versione 1.9 di CTLModulMaker... scaricata via svn e non ancora rilasciata... e magari il problema è un altro... ma non credo.
An eye for an eye will make the whole world blind
Mahatma Gandhi (1869-1948)
Mahatma Gandhi (1869-1948)
- protempore
- Power Poster
- Posts: 599
- Joined: Mon Jan 14, 2008 9:08 pm
Re: problema con paginazione articoli fatti con ctl module maker
meglio...
sostituire la riga 51 con:
così se nella query c'è comunque un riferimento al livello parent costruisce la select con il riferimento anche a quella tabella...
sostituire la riga 51 con:
Code: Select all
if(strpos($params["query"], 'B.')!=false){
$parentlevel = $this->get_nextlevel($what, false);
}
An eye for an eye will make the whole world blind
Mahatma Gandhi (1869-1948)
Mahatma Gandhi (1869-1948)
Re: problema con paginazione articoli fatti con ctl module maker
rieccomi
perdonami se ancora ti rompo ma ho provato a fare tutto quello che mi hai detto ma non funziona niente mi dà come contenuto della pagina no item found
sono disperatissimo
perdonami se ancora ti rompo ma ho provato a fare tutto quello che mi hai detto ma non funziona niente mi dà come contenuto della pagina no item found
sono disperatissimo
- protempore
- Power Poster
- Posts: 599
- Joined: Mon Jan 14, 2008 9:08 pm
Re: problema con paginazione articoli fatti con ctl module maker
non funziona niente cosa vuol dire? non funziona il modulo o la paginazione?joinweb wrote: rieccomi
perdonami se ancora ti rompo ma ho provato a fare tutto quello che mi hai detto ma non funziona niente mi dà come contenuto della pagina no item found
sono disperatissimo
An eye for an eye will make the whole world blind
Mahatma Gandhi (1869-1948)
Mahatma Gandhi (1869-1948)
Re: problema con paginazione articoli fatti con ctl module maker
Il modulo funziona ma se inserisco la query SQL mi dice no item found e se ne inserisco una fatta dal modulo stesso mi sballa tutta la paginagimazione
Se vuoi avere un'idea il link e www.maurorosati.it/index.php?page=rassegna-stampa
Ora ho messo la query fatta dal modulo stessoa come vedrai nella paginazione mi da il conto di tutti gli articoli anche di quelli altre categorie
Grazie ancora
Se vuoi avere un'idea il link e www.maurorosati.it/index.php?page=rassegna-stampa
Ora ho messo la query fatta dal modulo stessoa come vedrai nella paginazione mi da il conto di tutti gli articoli anche di quelli altre categorie
Grazie ancora
- protempore
- Power Poster
- Posts: 599
- Joined: Mon Jan 14, 2008 9:08 pm
Re: problema con paginazione articoli fatti con ctl module maker
cosa intendi quando fai questa distinzione? inserire una query... e farne una dal modulo stesso?joinweb wrote: Il modulo funziona ma se inserisco la query SQL mi dice no item found e se ne inserisco una fatta dal modulo stesso mi sballa tutta la paginagimazione
puoi postare la query che stai utilizzando?
An eye for an eye will make the whole world blind
Mahatma Gandhi (1869-1948)
Mahatma Gandhi (1869-1948)
Re: problema con paginazione articoli fatti con ctl module maker
intendo mettere la query sql come mi hai spiegato te direttamente al momento che richiamo il modulo
es: {cms_module module="articoli" what="articoli" listtemplate="interna" forcelist="1" parent="Rassegna-stampa" detailpage="articolo" nbperpage="8" query="A.date_modified > '2009-03-15' AND A.active = 1 AND B.name LIKE 'Rassegna-stampa'"} (risultato no item found non so se ho fatto bene
(( )
oppure inserire una query fatta dal tab query del modulo stesso es: {cms_module module="articoli" what="articoli" listtemplate="interna" forcelist="1" parent="Rassegna-stampa" detailpage="articolo" nbperpage="8" query="11"} (risultato paginazione sballata come quella che ora è online)
non so se mi sono spiegato
es: {cms_module module="articoli" what="articoli" listtemplate="interna" forcelist="1" parent="Rassegna-stampa" detailpage="articolo" nbperpage="8" query="A.date_modified > '2009-03-15' AND A.active = 1 AND B.name LIKE 'Rassegna-stampa'"} (risultato no item found non so se ho fatto bene

oppure inserire una query fatta dal tab query del modulo stesso es: {cms_module module="articoli" what="articoli" listtemplate="interna" forcelist="1" parent="Rassegna-stampa" detailpage="articolo" nbperpage="8" query="11"} (risultato paginazione sballata come quella che ora è online)
non so se mi sono spiegato
- protempore
- Power Poster
- Posts: 599
- Joined: Mon Jan 14, 2008 9:08 pm
Re: problema con paginazione articoli fatti con ctl module maker
si, ma sei sicuro che quelle query devono restituire dei risultati?
se scrivi:
vuol dire che ricerchi degli articoli che sono stati inseriti o modificati dopo il 15 marzo 2009 e la categoria di appartenenza (mi sembra che tu abbia chiamato così il livello superiore) deve essere "Rassegna-stampa"... è così?
la query con ID->11 non so come è costruita... devo dire che ho trovato un problema con ctlModulMaker... nella funzione buildWhere() del modulo aggiunge la funzione addslashes() ai valori della query e, almeno a me, crea problemi perchè, ad esempio propone le date in questo modo... "\'2009-03-15 00:00:00\'"... e così SQL restituisce errore...
io quella funzione l'ho modificata così... magari risolvi anche tu:
se scrivi:
Code: Select all
query="A.date_modified > '2009-03-15' AND A.active = 1 AND B.name LIKE 'Rassegna-stampa'"
la query con ID->11 non so come è costruita... devo dire che ho trovato un problema con ctlModulMaker... nella funzione buildWhere() del modulo aggiunge la funzione addslashes() ai valori della query e, almeno a me, crea problemi perchè, ad esempio propone le date in questo modo... "\'2009-03-15 00:00:00\'"... e così SQL restituisce errore...
io quella funzione l'ho modificata così... magari risolvi anche tu:
Code: Select all
function buildWhere($where=array(),$what=""){
$multiplelistfields = array();
$whereclause = "A.active=1";
$wherevalues = array();
foreach($where as $clause){
if(in_array($what."_".$clause[0], $multiplelistfields)){
// list with multiple selected values are saved in a serialized array, so we have to tweak the value
$clause[1] = '"'.$clause[1].'"';
$clause[2] = 1;
}
if($clause[0] == "parent"){
$criteria = explode(",",$clause[1]);
if(count($criteria) > 1){
$tmp = "";
foreach($criteria as $crit){
$tmp = ($tmp==""?"":" OR ")."A.parent=".$crit;
}
$tmp = " AND (".$tmp.")";
}else{
$tmp = " AND A.parent=?";
$wherevalues[] = $clause[1];
}
$whereclause .= $tmp;
}else{
switch($clause[2]){
case 0:
$whereclause .= " AND A.".$clause[0]."=?";
$wherevalues[] = $clause[1];
break;
case 1:
$whereclause .= " AND A.".$clause[0]." LIKE '%".$clause[1]."%'";
break;
case 2:
$whereclause .= " AND A.".$clause[0]." != ?";
$wherevalues[] = $clause[1];
break;
case 3:
$whereclause .= " AND A.".$clause[0]." > ?";
$wherevalues[] = $clause[1];
break;
case 4:
$whereclause .= " AND A.".$clause[0]." < ?";
$wherevalues[] = $clause[1];
break;
case 5:
$whereclause .= " AND (A.".$clause[0]." > ? AND A.".$clause[0]." < ?)";
$wherevalues[] = $clause[1][0];
$wherevalues[] = $clause[1][1];
break;
}
}
}
return array($whereclause, $wherevalues);
}
An eye for an eye will make the whole world blind
Mahatma Gandhi (1869-1948)
Mahatma Gandhi (1869-1948)
Re: problema con paginazione articoli fatti con ctl module maker
si è cosi pero lui non mi da risultati
la query 11 praticamente prende il campo data (che è un campo che ho inserito io in piu perchè hanno bisogno di cambiare la data) e la ordina in ordine decrescente.
per ovviare non c'è modo di poter modificare la data di creazione direttamente dall'inserimento articolo cosi loro modificano quella ed io leordino con orderby="created"?
la query 11 praticamente prende il campo data (che è un campo che ho inserito io in piu perchè hanno bisogno di cambiare la data) e la ordina in ordine decrescente.
per ovviare non c'è modo di poter modificare la data di creazione direttamente dall'inserimento articolo cosi loro modificano quella ed io leordino con orderby="created"?
- protempore
- Power Poster
- Posts: 599
- Joined: Mon Jan 14, 2008 9:08 pm
Re: problema con paginazione articoli fatti con ctl module maker
probabilmente non gli piace '2009-03-15', ma vuole una cosa del tipo: '2009-03-15 00:00:00'joinweb wrote: si è cosi pero lui non mi da risultati
An eye for an eye will make the whole world blind
Mahatma Gandhi (1869-1948)
Mahatma Gandhi (1869-1948)