I knew there was a way, even if it's the old way (I expected it would be possible in D8 out of the box).
Use Views Field View module
You can do it with the help of Views Field View. It's basically embedding a View into another View to be displayed as a field.
You have to have the Child View created before you can add it to the Parent Views. Parent and Child can be two Displays on the same Views, they don't have to be in two different Views.
In your case your Child View will be filtered to show only fields related to one node (using regular and Contextual Filters), so you can end up with a nicely styled result where one node information is displayed in one table row.
- Create a Views Display of type Embed to serve as your Child Display.
- Filter it to list your content and also add the Filter
Content: Translation language
and set it to French (Or English)
- Add Title and the other field you want to see
- Format
Unformatted list
and under Fields
Settings set both fields as Inline, separator may be something like |
- Add a Contextual Filter
Content: ID
and configure it to:
When the filter value is NOT available
Provide default value
Content ID from URL
(Optionally specify validation criteria)
- Create a Page view (you probably have this already) of Table Format
- Filter it to list your content and also add the Filter
Content: Translation language
and set it to English (Or French, the opposite from the one which you set in Step 2)
- Add a Field Content: ID and Exclude it from display. This info will be fed to the Embedded view to filter only translations for that node
- Add the Title and the other field you need to show
- Add the field
Global: View
and under View settings select the View name from the first dropdown
- Apply
- Save the View
- Edit the
Global: View
again, this time you'll be able to choose the exact Views Display you created in step 1
- In the Contextual filters enter
{{ raw_fields.nid }}
or whatever makes sense in your case, check under Replacement patterns
You should now see the list of nodes with English and French fields on the same row.
The Inline fields might not emulate the Table cell look exactly. You can make this display as table cells exactly with some more elaborate HTML overwrites to make them blend together.