Extra Block Types (EBT) - New Layout Builder experience❗

Extra Block Types (EBT) - styled, customizable block types: Slideshows, Tabs, Cards, Accordions and many others. Built-in settings for background, DOM Box, javascript plugins. Experience the future of layout building today.

Demo EBT modules Download EBT modules

❗Extra Paragraph Types (EPT) - New Paragraphs experience

Extra Paragraph Types (EPT) - analogical paragraph based set of modules.

Demo EPT modules Download EPT modules

Scroll

target="_blank" в views

target="_blank" в views
, by

Drupal 7
Есть доска объявлений. На главной странице есть перечень товаров с картинкой товара и кнопкой "показать полностью"
Выводятся при помощи Views, при нажатии на картинку или кнопку открывается ссылка объявления, а нужно чтобы открывалось в новом окне.

Лазил в теме, лазил в темизации views, подскажите как сделать это. То есть что и где прописать нужно?
Для примера нашел такой сайт:
http://theconfluencegroup.com/client/decibel-successes
По клику на прямоугольную область открывается новое окошко.

1 answer
votes: 579
Answer

_target - blank прописывается во view когда переписываешь поле как ссылку.


Проделал следующее:

 

В представлении, в типе ПОЛЯ выбрал пункт "Содержимое:Ссылка"

Далее перезаписать результаты - выводить это значение в виде ссылки - цель "_blank"

И все заработало. При нажатии на кнопку "Подробнее" открвывается новое окно.

 

Но проделанные выше манипуляции для пункта "Содержимое:Аватар" (перезаписать результаты - выводить это значение в виде ссылки - цель "_blank") не дало никаких изменений. При клике на картинку товара не открывается в новом окне. В чем может быть загвоздка?


Поле аватара можно переопределить в шаблоне, установите модуль theme developer чтобы какой шаблоны вы можете использовать.


А могли бы вы посдсказать в каком файле шаблона что именно нужно прописать чтобы переопределить?

 

Я подозреваю что это делается в файле: 

views-view-fields--ankets--page.tpl.php

вот кусок листинга, может тут?

 


Оберните в этом шаблоне то, что выделили в ссылку

<a href="user/<?php print $node->author; ?>">
само поле
</a>

Если пути к автору какие-то особенные, то можно использовать функцию drupal_lookup_path().


Вы уж извените, но я в php полный ноль. Как оборачивается в ссылку не знаю :(

Попытаюсь, но, думаю, что неправильно напишу:

Было:

<div class="photo">
	<?php print $fields['field_avatar']->content; ?>
</div>

Стало:

 

<div class="photo">
<?php print $fields<a href="user/<?php print $node->author; ?>">['field_avatar']</a>->content; ?>
</div>
 
 

<div class="photo">
  <a href="/user/<?php print $node->author; ?>" target="_blank">
    <?php print $fields['field_avatar']->content; ?>
  </a>
</div>

Не уверен что переменная $node доступна в этом шаблоне, но если не доступна то uid автора материала нужно будет другим путем узнавать.


Да, выдает ошибку.

 

Установил Developer, вот что он показывает при клике на иконку: