Drupal Добавить статическую ссылку к просмотру

StackOverflow https://stackoverflow.com/questions/1820274

  •  10-07-2019
  •  | 
  •  

Вопрос

У меня есть представление Drupal, которое перечисляет узел с именем публикации. В верхней части страницы мне бы хотелось иметь ссылку «новая публикация» вместо того, чтобы она была в блоке навигации. Может кто-нибудь подсказать мне, как это сделать? Кажется, есть несколько способов, но мне не везет.

Это было полезно?

Решение

Я также изо всех сил пытался понять точное значение вашего вопроса.

Я понимаю ваш вопрос примерно так: " У меня есть различные страницы списка узлов, сгенерированные моим представлением, я хотел бы, чтобы в верхней части каждой из этих страниц была ссылка, позволяющая мне создать новый узел перечисленного типа во взглядах. Как мне это сделать? & Quot;

Если я правильно понял ваш вопрос, возможный способ - вставить ссылку в шаблон для вашего просмотра. Фактически, ссылка для создания нового узла этого типа будет статическим URL-адресом типа

http://example.com/node/add/mynodetype

так что вы можете безопасно поместить в файл шаблона что-то вроде:

<?php print(l('Create a new mynodetype article!', 'node/add/mynodetype')) ?>
<Ч>

Это в значительной степени эквивалентно тому, что предложил Хенрик (+1), изменив заголовок вашего представления. Какой метод вы выберете, вероятно, будет зависеть от того, считаете ли вы эту ссылку более важной особенностью вашего представления или более тематической. Если вы добавите его в представление, оно будет отображаться во всех ваших темах (= функция). Если вы поместите его в шаблон, вы получите его только для темы, которой шаблон используется (= элемент темы). Конечно, даже если это элемент темы, имеет смысл включить его в представление, если вы используете стандартный файл шаблона, поэтому вам не придется создавать целый файл шаблона только для ссылки.

Из вашего комментария ниже видно, что вы еще не используете шаблон для своего представления, и поэтому - если вам это не нужно - вы можете согласиться с предложением Хенрика добавить информацию в заголовок представления. Однако я подготовил скриншоты, чтобы проиллюстрировать оба метода:

Добавление в заголовок:

Вы должны нажать на «заголовок», затем вставить код в текстовое поле и установить фильтр ввода на «PHP». (В противном случае ваш код будет экранирован и отображен вместо запуска).

Снимок экрана пользовательского интерфейса просмотров

Создание шаблона:

Вы должны нажать " информация: тема " и тогда у вас будет список возможных имен шаблонов. Тот, который выделен жирным шрифтом, является тем, который используется в настоящее время. Затем необходимо скопировать файл с жирным именем (из каталога views) в каталог вашей темы и переименовать его одним из предложенных способов. Затем вы можете ввести файл и отредактировать его, добавив необходимый PHP-код.

Как уже говорилось ранее: если вам не нужен шаблон для чего-либо еще, то создание темы только для этого - перелом, IMO.

Скриншот пользовательского интерфейса просмотров

Другие советы

Вы также можете использовать следующий модуль: https://www.drupal.org/project/views_linkarea .

Как указано в его описании,

  

" Делая это реальной ссылкой, а не просто каплей HTML в заголовке   текстовая область получает всю специальную обработку и чистый URL   удобство и переносимость базового пути, которые получает любая ссылка на Drupal. "

Редактировать: Просто понял, что я, вероятно, неправильно понял ваш вопрос. Вам нужна ссылка в верхней части каждой страницы, указывающая на ваш вид? <Ч>

(Примечание: вероятно, не то, что хочет OP, так как он поместил бы ссылку вверху самого представления)

Одним из самых простых способов было бы поместить его в раздел «заголовок» представления (в разделе «основные настройки» на странице конфигурации ваших представлений). Для этого вы можете установить формат фильтра, поэтому обязательно используйте тот, который разрешает ссылки.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top