Dividir un nodo en varias páginas [cerrado]

14

Tipo de contenido - artículo. Quiero hacer que los artículos se dividan en varias páginas cuando el artículo en sí sea demasiado largo. Por ejemplo, si tenemos un artículo "cómo funciona drupal" sería enorme :), quiero dividirlo en varias páginas y en algún momento aparece "continuar a la página 2 de 10" y luego "continuar a la página 3 de 10 " y así. Espero que me entiendas y puedas compartir algunas ideas. ¡Gracias de antemano!

Ivan Ivanov
fuente
Relacionado: Crear un buscapersonas entre campos . Probablemente algunas respuestas te serán útiles. Si va a adoptar uno de ellos, publique una respuesta personal aquí;)
Mołot
@Molot, ¿conoce una forma de anular la vista predeterminada del nodo con Vistas? Entonces puedo usar el buscapersonas predeterminado de las vistas. Esta sería la solución más limpia para mí.
Ivan Ivanov
Simplemente configure la ruta de la página de vistas /node/%y use filtros contextuales (afair) para obtener el nodo adecuado de la nidruta. En caso de duda, haga una nueva pregunta, simplemente no se sorprenda si alguien descubrirá que ya se le preguntó.
Mołot

Respuestas:

9

Sugiero dividir su texto en alguna parte con jquery y al desplazarse puede agregar (puede tener algún efecto como fadeIn ...) otra parte en la parte principal.
Le sugiero que logre este trabajo con jquery (solución del lado del cliente)

Yusef
fuente
Así es como implementé pestañas en una de las páginas que solía mantener. Debo admitir que funciona bastante bien. Es realmente una buena idea imprimir todas las páginas y ocultar todas, excepto las primeras en js. Y también implemente #1en url para determinar a qué página se vinculó el usuario. (La implementación de mi pestaña está en vivo aquí , lo siento, pero ya no tengo los derechos de autor del código JS utilizado). AJAX también podría funcionar, pero por otro lado, generalmente es una exageración, ASCII se comprime bien y la mayoría del tiempo se usa para iniciar la conexión, no la transferencia real, por lo que es un desperdicio.
Mołot
Usar ajax para cargar un trabajo simple como recuperar la base de datos del formulario de contenido (cuerpo) no es un trabajo óptimo y es una carga de desperdicio en el servidor, después de esto, no es necesario ser un desarrollador js muy experto por código de línea maximom 50 podemos implementar lo que sugerí , por cierto, creo que la solución del lado del cliente es la mejor solución para este trabajo .tnx para comentar y discutir @ Mołot :)
Yusef
La implementación adecuada de example.com/article/23#page-1tomará más de 50 líneas. Y vale la pena tenerlo, para que los usuarios puedan tener enlaces permanentes directamente a la página que deseen.
Mołot
También preferiría esta solución: es significativamente más útil para las personas que se cansan de esperar a que toda la pila de Drupal cargue cada página. También permite que Google indexe el artículo como una entidad única en lugar de que los resultados de búsqueda lleven a las personas a la mitad de un artículo. Sin embargo, sugeriría verificar la accesibilidad para lectores de pantalla y similares, eso podría hacer que esta solución sea un poco más complicada (aunque sigue siendo la mejor solución de la OMI)
Nerdmaster
bueno, lo he hecho en el extremo frontal con varias líneas de jquery. Hice que el campo del cuerpo aceptara un número ilimitado de valores (simulando diferentes páginas). Luego solo alterna por cierto display none / block.
Ivan Ivanov
9

Estás buscando el módulo de paginación inteligente

Proporciona la división de contenido largo de Drupal en subpáginas por número de caracteres / palabras o por una etiqueta HTML de marcador de posición para entidades de término de nodo, usuario y taxonomía.

Para Drupal 6

Módulo de paginación , puede establecer el límite de caracteres y se dividirá automáticamente en subpáginas, vea la siguiente captura de pantalla

Divida las páginas largas en otras más pequeñas automáticamente por límite de palabras (o caracteres)

ingrese la descripción de la imagen aquí

Bala
fuente
¡Gracias por su respuesta! Sin embargo, estoy trabajando en Drupal 7. ¿Existe tal solución para D7?
Ivan Ivanov el
Bueno, probé el módulo Smart Paging, parece hacer el trabajo, pero no es compatible con los localizadores Views AJAX y en mi caso lo estoy usando.
Ivan Ivanov
0

Bueno, una solución alternativa que usaría sería dividirlo en varios artículos y combinarlos con una página de vista (que tiene un localizador) ya que ya está trabajando con vistas. Simplemente filtre sus artículos en nid o alguna etiqueta (oculta). Si desea que todos tengan el mismo tamaño máximo, puede usar https://drupal.org/project/maxlength . Agregue la parte X al título, de esta manera también es fácil para sus lectores distinguir las diferentes páginas.

Marcel
fuente
0

No veo qué tiene que ver el localizador Views AJAX (qué páginas ve las líneas de resultados) con la visualización de su artículo (que es solo 1 resultado). Dos cosas diferentes a la página. Pero es posible que desee generar el "contenido del artículo como un campo calculado". Comience con un campo calculado que imprima solo las primeras x palabras del campo de contenido de su artículo. (o hasta el primer separador de página) Termine con un "más enlace" html autogenerado. Ese enlace más llama su punto de vista con un argumento. Puede usar ese argumento en el PHP de su campo calculado. Muestra la parte x dependiendo de tu argumento recibido.

usuario18099
fuente
¡Gracias por tu respuesta! Problema # 1103810, cuando habilita el módulo Smart Pagging, desglosa el módulo Vistas Cargar más (o Vistas Ajax Pager), por lo que no puede usar ambos. A eso me refería.
Ivan Ivanov