3

using display suite's block field, which i chose a view block.. so when i have view page ('parent' view) it list many nodes. each node has a field for block view ('child' view).

how do i get child view to filter its results by the node id it is being displayed with in parent view? like a contextual filter, but not getting nid from url, but the node the block field is part of.

i like using display suite layouts, but need to rewrite the author field link. so i figure id make view to show the author and rewrite, then insert it into the node view mode as field. but i cant filter the child field how id like.

0

Use the Views Field View Module, which allows you to insert other views as fields.

  • Add a field of Content: nid. In settings, hide from display.
  • Add field of Global: View (child view). In settings, click on Available tokens and put the nid token as your filter.
  • ill give it a shot but i know ive done it in past without additional modules. – brandonc Nov 7 '15 at 23:27
4

You should use Display Suite Dynamic Field instead of Block Field.

It allows you to select a view and pass the appropriate contextual filter arguments.

From Dynamic Field documentation:

A dynamic field can be used in combination with the Views Content Pane submodule of Ctools to pass contextual arguments to a view. Steps:

  • Install Ctools, Views, and Display Suite.
  • Enable the Views Content Panes module and Views UI.
  • Create a new view. Add a contextual filter--for example, node NID. Add a content pane display. Configure the "arguments" argument of the display to enable the exposed filter you added. For example, select "From context" as the source of the argument and "Content ID" as the context.
  • Create a dynamic field.
  • Under manage display for a given content type, configure the dynamic field to use the views content pane you configured.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.