Yes, I know those Views are in that Content Template, but it does cost 1 minute to paste those links, it cost us four days to get to the right Views by now, due to the missing direct links.
I cannot guess the location of the code, if there are more than 3 Views and not a clear way to get to them, I am sorry.
I want to point out that we cannot support very well if we have to speak about anonymous Data.
If you are concerned about this, I suggest to use Numeric or Random view names and then we can talk about them publicly; it makes the process easier.
Of course, I respect your privacy!
And that is why I will not paste any name of any item anymore in this ticket, but this will make communication a lot more difficult, I hope you understand that.
I can unfortunately not reply privately, that is why I suggest changing the names of those views to a numeric value so we can speak about them openly.
It's not meant as a critique; it's a suggestion so we can proceed faster.
This is mainly to your advantage.
Now, I checked those 3 Views.
1. View One:
- it Queries Posts
- It shows one result
- it is the last published one
2. View Two:
- it Queries Posts
- it shows four results
- it skips the first result
- it shows the last published ones
- this view also has nested views
3. Third View:
- it Queries Posts
- it shows three results
- it shows only posts with the Category "Erased as might be a confidential name."
- it shows the last published ones
So, it is perfectly expected that the Item display in View #1 is also in the View #2.
If you want to remove that item from View #3, you need to offset by one.
Then the only item displayed in View #1 will never be shown in View #2.
(Always the last post published.)
The same is expected for View #2 items, since those three views query the same posts, by no other difference but the taxonomy query and an offset/limit, it is of course expected to have the present in all views.
The only way to avoid this is to categorise more, and then query by specific Terms, or to add some Custom Fields, and query by those, or use another approach of Display altogether.
You can't use the same method as in the PHP example in the codex, where they populate a $do_not_duplicate with a Post ID and skip that ID when creating the second loop.
I am sorry that I did not recognize at first what you were precisely asking.
What you can do with Views to achieve this (this is the closest you can get) is a nested View:
1. Create a "parent View" where you return a limited set of posts (let's say the latest one)
2. Create a "Child View" where you return all OTHER posts, and set a Query Filter like this:
Exclude posts with IDs set by the View shortcode attribute "ids" eg. [wpv-view name="view-name" ids="1"]
This is the primary filter that will EXCLUDE all previously already displayed posts. You can, of course, add more filters.
3. Insert this Child View to the Parent View Loop (here it is important that the first, parent View always returns only ONE result)
4. Pass the post-ID ShortCode the Child View when you insert it to the parent view's loop:
[wpv-view name="test-view" ids="[wpv-post-id]"]
5. Then insert the Parent View to your page.
This will produce a list of:
- ONE post (from parent View)
- a LIST of Posts, from the child View, which will EXCLUDE the post returned in the Parent View.
This will NOT work if the parent view displays more than one post, as then, the child View will be rendered too many times.