Представления Drupal: Отобразите недавние узлы, созданные пользователем на странице профиля

Я задаюсь вопросом, как я могу отобразить недавно созданные узлы пользователем на их странице профиля. Я создал новую страницу для пользователя в / пользователе / пользователь %, и я хочу смочь отобразить последние узлы, созданные тем пользователем.

13
задан Conor Mongey 3 April 2010 в 00:35
поделиться

2 ответа

Хорошо, ответ включает в себя создание представления drupal, поэтому вам понадобится модуль views , и хотя он простой, но ответ длинный. пожалуйста, терпите меня через это ... :) (на самом деле я делаю это на тестовом сайте, когда пишу инструкции, чтобы убедиться, что ничего не пропущу ...)

Я предполагаю, что вы знаете, как загружать и установите модуль просмотров. убедитесь, что вы также включили модуль views-ui.

  1. перейдите в раздел создание сайта-> просмотры-> добавить.
  2. поместите «Recent_posts_by_user» для имени представления, «недавние сообщения пользователя» для описания и «узел» для типа представления. нажмите следующий.
  3. под типом просмотра «по умолчанию» в блоке «поля» нажмите знак «+».
  4. в разделе «группы» выберите узел, затем проверьте поля «тип узла», «заголовок узла» и «дата обновления узла». нажмите кнопку «добавить» под списком.
  5. в блоке основных настроек (слева) нажмите «10» для «элементов для отображения» и измените на «5» или любое количество элементов, которое вы хотите на странице, и нажмите «обновить»
  6. в разделе « используйте пейджер », нажмите« нет »и« полный пейджер »или« мини-пейджер »и снова нажмите« обновить ».
  7. в разделе стиля нажмите «неформатированный» и измените его на «таблица», установите для всех полей возможность сортировки, затем выберите «дату обновления» как «сортировку по умолчанию», затем в «порядке сортировки по умолчанию» выберите «по убыванию». нажмите "Обновить".
  8. нажмите «Сохранить», чтобы сохранить свой прогресс.

вид по умолчанию сделан. УРА! Теперь давайте добавим блок

  1. в раскрывающееся меню с надписью «страница», выберите «блок» и нажмите «добавить отображение».
  2. нажмите «аргументы» (заголовок блока в центре экрана)
  3. нажмите «переопределить» и «обновить»
  4. нажмите знак «+» справа от «аргументы»
  5. в поле « группы "выберите" пользователь "и выберите" идентификатор пользователя ". нажмите «добавить»
  6. в разделе «Действие, которое необходимо предпринять, если аргумент отсутствует», выберите последний вариант «предоставить аргумент по умолчанию», выберите «идентификатор пользователя из URL-адреса» и отметьте «Также найдите узел и используйте автора узла»
  7. в разделе «Валидатор» выберите «пользователь» и «Разрешить как числовые UID, так и строковые имена пользователей»
  8. в разделе «Действие, которое необходимо предпринять, если аргумент не проверяет» «выбрать» скрыть представление / страница не найдена (404) »
  9. нажмите «обновить», затем «сохранить». Теперь создается представление

, позволяющее убедиться, что оно отображается на нужных страницах.

  1. перейдите к построению сайта-> блоки, найдите блок «Последние сообщения пользователя» и нажмите «настроить».
  2. прокрутите до конца и выберите «Показывать только на перечисленных страницах». и введите «users / *» под текстовой областью «страницы»
  3. нажмите «сохранить блок»
  4. . Теперь найдите блок «последние сообщения пользователя» снова и установите его в область «нижнее содержимое» (или любую другую регион, в котором доступна ваша тема).
  5. нажмите "сохранить блоки"

ГОТОВО! Не ракетостроение, а длительный процесс ... drupal 6 views намного лучше, чем drupal 5! :)

теперь зайдите на страницу пользователя http: // site / users / username и посмотрите, как там появится таблица!

свяжитесь со мной, если у вас все еще есть вопросы о просмотрах.

наслаждайтесь

19
ответ дан 1 December 2019 в 22:22
поделиться

Добавьте аргумент представлений, который использует идентификатор пользователя из аргумента URL. Это будет arg (1). Это должно фильтровать контент, созданный профилем, который вы просматриваете. Это может работать для блока или панели содержимого.

2
ответ дан 1 December 2019 в 22:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: