Как сделать ссылку на узел напрямую на содержимое его файла в DRUPAL 6?

У меня есть пункт меню под названием «Продукты», который при нажатии отображает все узлы, созданные типом контента «продукт». Каждый узел «product» имеет поле для прикрепления файла с вложенным файлом.

Если я щелкну на узле «product», он приведет меня к узлу, как и ожидалось, и я смогу увидеть все поля узла, включая поле PDF:

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

Я хочу навести курсор мыши на ссылку меню «Продукты», а затем увидеть различные продукты как раскрывающееся меню, и при нажатии на продукт я хочу, чтобы он НЕ переходил на узел, а скорее открывал PDF-файл, прикрепленный к узлу. Вместо этого например, / product / african-decor … он должен идти в product / african_decor.pdf, который прикреплен к узлу:

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

10

Решение

Это может быть достигнуто несколькими способами.


Вы можете использовать Жетон меню модуль, который позволяет использовать различные поля в ваших путях меню. При построении шаблона токена вам может потребоваться создать абсолютный URL-адрес, используя [site-url] маркер.

Также убедитесь, что uses tokens флажок отмечен


Этот способ немного менее элегантен.

Предполагая, что вы на самом деле не хотите посещать тип содержимого продукта и всегда будете загружать PDF, вы можете перезаписать шаблон для product Тип содержимого и перенаправить на PDF-URL.

Вам нужно создать

node--product.tpl.php

И заменить содержимое на

header("Location: " . $pdf_field);

// $pdf_field might be $node->field_pdf[0]['value'];
4

Другие решения

Вы можете реализовать hook_taxonomy_menu_path с пользовательским модулем переопределить базу на основе узлов, связанных с термином. В обратном вызове верните путь вложения в узле.

  • Учитывая тот факт, что каждый член имеет только один узел
  • Учитывая тот факт, что каждый узел имеет только одно вложение
1

По вопросам рекламы [email protected]