Розбиття вузла на кілька сторінок [закрито]


14

Тип вмісту - стаття. Я хочу зробити статті розділеними на кілька сторінок, коли сама стаття стає занадто довгою. Наприклад, якщо у нас є стаття "як Drupal працює", це було б величезно :), я хочу розділити її на кілька сторінок, і в якийсь момент ви отримаєте "продовжити сторінку 2 з 10", а потім "продовжити сторінку 3 з 10 " і так далі. Сподіваюся, ви мене отримали і можете поділитися деякими ідеями. Заздалегідь спасибі!


Пов'язане: Створіть пейджер між полями . Напевно, деякі відповіді вам будуть корисні. Якщо ви
приймете

@Molot, чи знаєте ви спосіб змінити режим перегляду за замовчуванням на вузлі за допомогою Views, тоді я можу використовувати пейджер за замовчуванням у видах. Це було б для мене найчистішим рішенням.
Іван Іванов

Просто встановіть шлях сторінки сторінки перегляду /node/%та використовуйте контекстні фільтри (afair), щоб отримати належний вузол від його nidшляху. Якщо ви сумніваєтесь, задайте нове запитання, просто не дивуйтеся, якщо хтось дізнається, що його вже задали.
Молот

Відповіді:


9

Я пропоную розділити ваш текст на якусь частину за допомогою jquery і, прокрутивши ви, додасте (може мати такий ефект, як fadeIn ....) іншу частину до основної частини.
Я пропоную вам досягти цієї роботи за допомогою jquery (клієнтське рішення)


Ось так я реалізував вкладки на одній із сторінок, які я підтримував. Треба визнати - працює досить добре. Дійсно випустити всі сторінки та сховати кожну, крім першої у js. А також реалізуйте #1в URL-адресі, щоб визначити, до якої сторінки користувач пов’язаний. (Моя реалізація вкладок тут живе , вибачте, але я більше не володію авторськими правами на використаний JS-код). AJAX теж може працювати, але, з іншого боку, це зазвичай надмір, ASCII добре стискає і більшість часу використовується на ініціювання з'єднання, а не на фактичну передачу, тому це марно.
Молот

Використання ajax для завантаження такої простої роботи, як база даних контенту (body) форми, не є оптимальною роботою, і це завантаження відходів на сервер, після цього не потрібно бути дуже досвідченим розробником js за допомогою рядка maximom 50, щоб ми могли реалізувати те, що я запропонував до речі, я думаю , що на стороні клієнта рішенням є кращим рішенням для цієї роботи .tnx для вас прокоментувати і обговорити @ МОЛОТ :)
Юсеф

Правильна реалізація роботи example.com/article/23#page-1займе понад 50 рядків. І це варто мати, щоб користувачі могли мати посилання прямо на потрібну сторінку.
Молот

Я також вподобав би це рішення - воно значно більш зручне для людей, які втомилися чекати, коли вся сторінка Drupal завантажить кожну сторінку. Крім того, Google дозволяє індексувати статтю як єдине ціле, а не результати пошуку, що потенційно переносить людей на середину статті. Я б пропонував перевірити доступність для читачів екрана тощо, але це може зробити це рішення трохи складнішим (хоча все-таки найкращим рішенням IMO)
Nerdmaster

добре, зробили це на передньому кінці з кількома рядками jquery. Я змусив поле тіла приймати необмежену кількість значень (імітуючи різні сторінки). Тоді просто перемкніть btw display none / block.
Іван Іванов

9

Ви шукаєте модуль Smart Paging

Забезпечує поділ довгого вмісту Drupal на підсторінки за кількістю символів / слів або за допомогою тегу HTML-заповнювача для об'єктів термінальних вузлів, користувачів та систематики.

Для Drupal 6

Модуль підкачки , ви можете встановити ліміт символів, і він автоматично розділиться на підсторінки

Автоматично розбивайте довгі сторінки на менші за лімітом слів (або символів)

введіть тут опис зображення


Спасибі за вашу відповідь! Хоча я працюю над Drupal 7. Чи існує таке рішення для D7?
Іван Іванов

Що ж, спробував модуль Smart Paging, схоже, він виконує цю роботу, але він несумісний із пейджерами AJAX Views, і в моєму випадку я використовую такі.
Іван Іванов

0

Я вирішую, що я вирішив би поділити його на кілька статей і поєднати їх із сторінкою перегляду (на якій є пейджер), оскільки ви вже працюєте з переглядами. Просто відфільтруйте свої статті за Nid або яким-небудь (прихованим) тегом. Якщо ви хочете, щоб вони були однакового максимального розміру, ви можете використовувати https://drupal.org/project/maxlength . Додайте частину X до назви, таким чином, ви також можете легко читачам розрізнити різні сторінки.


0

Я не бачу, що стосується пейджера "Перегляду AJAX" (на яких сторінках переглядаються рядки результатів) із відображенням статті (що таке, як правило, 1 результат). Дві різні речі на сторінку. Але ви можете вивести "вміст статті як обчислене поле". Почніть із обчисленого поля, яке друкує лише перші x слова поля вмісту статті. (або до першого вимикача сторінки) Закінчіть його самостійно згенерованим HTML-кодом "більше посилання". Це більше посилання викликає ваш погляд аргументом. Ви можете використовувати цей аргумент у PHP вашого обчисленого поля. Виведіть x-ту частину залежно від отриманого вами аргументу.


Дякую за вашу відповідь! Випуск № 1103810, коли ввімкнути модуль "Smart Pagging", він розбиває модуль "Переглянути більше" (або "Перегляд Ajax пейджер"), тому ви не можете використовувати обидва. Це я мав на увазі.
Іван Іванов
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.