How to display a taxonomy term's immediate children on its page? In Drupal 8, how can I display a taxonomy term's immediate children on its page?

For example, I have a hierarchical taxonomy vocabulary like this (simplified):

Animals
--Fishes
----Blennies
------Yellow Blenny
------Green Blenny
----Gobies
------Blue Goby
------Red Goby

On the page for the taxonomy term "Fishes" (e.g. drupal/fishes) I would like Blennies and Gobies (but not their children) to appear.

I have tried configuring Contextual Filters in Structure>Views>Advanced but not been able to do this.
Given your additional information, this short step-by-step guide, that should give you the desired results:


Duplicate/disable the original Taxonomy view / alter it as follows.
In "Advanced/Contextual filters" remove "Content: Has taxonomy term ID"
Add a new Contextual filter "Content: Has taxonomy term ID (with depth)":


Depth: 1 (will show content for the next level child terms as well)
When the filter value is NOT in the URL:


Provide default value
Type: Taxonomy term ID from URL
Load default filter from term page: checked

When the filter value IS in the URL or a default is provided:


Override title: checked, use the variable {{ arguments.term_node_tid_depth }} (this will make sure the term name will be shown in the page title)
(Optionally, but strongly suggested) Specify validation criteria: checked
Validator: Taxonomy term ID
Vocabulary: (your vocabulary name checked)
(Optionally) Validate user has access to the taxonomy term: checked




As you'd like to show an image, you may also wish to change the Format of the view from Content to Fields and add the image field of your tagged content.

Please note, that the depth modifier may lead to duplicates. So within the Advanced / Other section's Query settings, you should enable the "Distinct" option.

You can further improve your view results by adding relations to the actual terms, the term name and adding grouping. But this seems out of scope for your initial question.

I did the above steps on a clean D8 test instance with auto-generated content and vocabularies, and it was working fine.

EDIT:

According to your comments, you actually like to show fields of the child taxonomy terms only. So here is how to do that:


disable the default taxonomy view
create a new view
in View settings / Show choose "Taxonomy term"
"of Type" is your vocabulary
in "Page settings" check "Create a page" and provide the URL "taxonomy/term/%"
click "Save and edit"
in Advanced / Contextual filter add the filter "Taxonomy term: Parent"
apply the same settings as in my above solution to the contextual filter, except for the title variable, which should now be '{{ arguments.tid }}'


As result, you should see the first level children of the taxonomy term in the view.

If you like to see some of their properties only, switch the type of the view to fields and add the field you like to display.