I know this question has been asked a few times but no of the answers work.

I have a News channel with a Users field type as one of the layout fields.

I want to find all news entries related to user id X but the entries returned are wrong.

{# Get current member e.g URL /members/1/ #}
{% set currentMember = craft.users.id(craft.request.segment(2)).first() %}

{# Get current members news entries #}
{% set currentMemberNews = craft.entries.section("news").relatedTo(currentMember) %}

currentMemberNews contains all news. I just want the currentMember news.

Not sure what I am doing wrong?

  • {{ currentMember.email }} prints what you expect it to?
    – carlcs
    Commented Dec 9, 2014 at 8:51
  • Yes, the correct email address is printed out. Commented Dec 9, 2014 at 9:04
  • There are 7 news entries in the system with only 2 news entries tagged to the current member. I get all 7 news entries. Commented Dec 9, 2014 at 9:04

2 Answers 2


Have you tried this:

{% set currentMemberNews = craft.entries.section('news').relatedTo({
    targetElement: currentMember,
    field: 'yourFieldHandle',
}) %}

To specifically define the correct field and the fact that the member is on the target side of this relation?

  • You won by 8secs!
    – carlcs
    Commented Dec 9, 2014 at 9:10
  • Great minds think alike ;)
    – Paul
    Commented Dec 9, 2014 at 9:11
  • yourFieldhandle - do you mean the Users field handle in my News Channel ? Commented Dec 9, 2014 at 9:12
  • You define the field in which the relationship was initialized. In this case, the User field in your news channel. The big question, however ... does it work?
    – Paul
    Commented Dec 9, 2014 at 9:13
  • Okay, I've tried the above and I still get my 7 entries. :( Commented Dec 9, 2014 at 9:14

The problem seemed to be caused by a bad relation. Removing the relation and re-creating the relationship between the User and entries fixed the issue. Dunno what caused it but it was very strange.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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