Dividere un nodo in più pagine [chiuso]


14

Tipo di contenuto - articolo. Voglio rendere gli articoli divisi in più pagine quando l'articolo stesso diventa troppo lungo. Ad esempio se abbiamo un articolo "come funziona drupal" sarebbe enorme :), voglio dividerlo in più pagine e ad un certo punto si ottiene "continua alla pagina 2 di 10" e quindi "continua alla pagina 3 di 10 " e così via. Spero che tu mi abbia preso e possa condividere alcune idee. Grazie in anticipo!


Correlati: creare un cercapersone tra i campi . Probabilmente alcune risposte ti saranno utili. Se ne adotterai uno, pubblica qui un'auto-risposta;)
Mołot,

@Molot, conosci un modo per sovrascrivere la vista predefinita del nodo con Views, quindi posso usare il cercapersone predefinito delle viste. Questa sarebbe la soluzione più pulita per me.
Ivan Ivanov,

Basta impostare il percorso della pagina delle visualizzazioni su /node/%e utilizzare i filtri contestuali (inavvertitamente) per ottenere il nodo corretto da esso nidnel percorso. In caso di dubbi, fai una nuova domanda, non essere sorpreso se qualcuno scoprirà che è già stato posto.
Mołot,

Risposte:


9

Suggerisco di dividere il testo in una parte con jquery e scorrendo si aggiunge (potrebbe con qualche effetto come dissolvenza in ....) un'altra parte alla parte principale.
Ti suggerisco di realizzare questo lavoro con jquery (soluzione lato client)


È così che ho implementato le schede su una delle pagine che gestivo. Devo ammettere che funziona abbastanza bene. È davvero una buona idea stampare tutte le pagine e nasconderne tutte tranne la prima in js. E implementalo anche #1in url per determinare a quale pagina l'utente è collegato. (L'implementazione della mia scheda è attiva qui , mi spiace ma non possiedo più il copyright sul codice JS utilizzato). Anche AJAX potrebbe funzionare, ma d'altra parte è di solito eccessivo, ASCII si comprime bene e la maggior parte del tempo viene utilizzata per avviare la connessione, non per il trasferimento effettivo, quindi è uno spreco.
Mołot,

L'utilizzo di Ajax per caricare un lavoro semplice come recuperare il contenuto (corpo) dal database del modulo non è un lavoro ottimale ed è un carico di spreco sul server, dopo questo, non è necessario essere sviluppatori js molto esperti con un codice massimo di 50 righe, possiamo implementare ciò che ho suggerito , a proposito penso che la soluzione lato client sia la migliore soluzione per questo lavoro .tnx per te commenta e commenta @ Mołot :)
Yusef

Una corretta implementazione example.com/article/23#page-1richiederà più di 50 righe. E vale la pena averlo, quindi gli utenti possono avere permalink direttamente su una pagina che vogliono.
Mołot,

Preferirei anche questa soluzione: è significativamente più utilizzabile per le persone che si stancano di aspettare che l'intero stack Drupal carichi ogni pagina. Inoltre, consente a Google di indicizzare l'articolo come singola entità anziché i risultati di ricerca che potenzialmente portano le persone al centro di un articolo. Suggerirei di verificare l'accessibilità per gli screen reader e simili, tuttavia - ciò potrebbe rendere questa soluzione un po 'più complicata (anche se è comunque la migliore soluzione IMO)
Nerdmaster,

bene, l'ho fatto alla fine della fronda con diverse linee di jquery. Ho fatto accettare al campo body un numero illimitato di valori (simulando pagine diverse). Quindi attiva / disattiva visualizzazione nessuno / blocco.
Ivan Ivanov,

9

Stai cercando il modulo Smart Paging

Fornisce la suddivisione del contenuto di Drupal lungo in sottopagine per numero di caratteri / parole o mediante un tag HTML segnaposto per entità termine nodo, utente e tassonomia.

Per Drupal 6

Modulo di paging , è possibile impostare il limite di caratteri e si dividerà automaticamente in sottopagine, vedere la schermata seguente

Suddividi automaticamente le pagine lunghe in pagine più piccole per limite di parole (o caratteri)

inserisci qui la descrizione dell'immagine


La ringrazio per la risposta! Sto lavorando su Drupal 7 però. Esiste tale soluzione per D7?
Ivan Ivanov,

Bene, ho provato il modulo Smart Paging sembra fare il lavoro ma non è compatibile con i cercapersone Views AJAX e nel mio caso sto usando tale.
Ivan Ivanov,

0

Bene, una soluzione alternativa che userei sarebbe quella di dividerlo in più articoli e combinarli con una view-page (che ha un cercapersone) poiché stai già lavorando con le view. Basta filtrare i tuoi articoli su nid o alcuni tag (nascosti). Se si desidera che abbiano tutti la stessa dimensione massima, è possibile utilizzare https://drupal.org/project/maxlength . Aggiungi la parte X al titolo, in questo modo è anche facile per te lettori distinguere le diverse pagine.


0

Non vedo cosa deve vedere il pager di Views AJAX (quali pagine visualizzano le righe dei risultati) con la visualizzazione del tuo articolo (che è di per sé solo 1 risultato). Due cose diverse da pagina. Ma potresti voler produrre il tuo "contenuto dell'articolo come campo calcolato". Inizia con un campo calcolato che stampa solo le prime x parole del campo del contenuto dell'articolo. (o fino al primo interruttore di pagina) Completalo con un html auto-generato "più link". Quel link in più chiama la tua vista con un argomento. Puoi usare quell'argomento nel PHP del tuo campo calcolato. Visualizza l'X-esima parte in base all'argomento ricevuto.


Grazie per la tua risposta! Numero 1103810, quando abilita il modulo Smart Pagging si rompe il modulo Views Load More (o Views Ajax Pager), quindi non è possibile utilizzare entrambi. Questo intendevo.
Ivan Ivanov,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.