סינון VIEW לפי nodereference

הי,
יש לי cck אשר נכתב ע"י משתמש #1, ואחד השדות שלו הוא nodereference ומשתמש #2.
יש לי view שמציג רשימה של אותו סוג של node.

איך ניתן שכאשר משתמש #2 במערכת וצופה באותו view, יוצגו לו רק nodes אשר הוא בשדה הnodereference?

...

מתי, האם אתה טורח לקרוא את השאלות שלך? לא יזיק אם תקדיש קצת יותר זמן לניסוח מדויק. מה זה ה-"ומשתמש #2" שדבוק לסוף המשפט הראשון?

הפעם עייפתי מלקרוא את המחשבות שלך, ופשוט שלפתי את כדור הבדולח שקיבלתי בירושה מדודה מזל כשהייתי קטן. לאחר צחצוח נמרץ גיליתי, שאתה רוצה להציג את פיסות התוכן אשר מצביעות על פיסות תוכן אשר ה-author שלהן הוא המשתמש הצופה ב-view. האם אני צודק?

כדי להשיב לך אני צריך שתשיב על שאלה:

פיסות התוכן האלה שה-author שלהן הוא המשתמש הנוכחי:
האם יש למעשה רק פיסת תוכן אחת כזו (וזה, למשל, קורה במקרים בהם זוהי פיסת תוכן המתפקדת כפרופיל המשתמש), או שיתכן שיש כמה מאלה?

זה אמנם היה מאוחר

זה אמנם היה מאוחר אבל הצלחתי להבין למה התכוונתי.

הצגתי בכוונה שני משתמשים, כדי להבדין בין מחבר ה-node לבין הצופה בו.
ואתה הבנת אותי הפוך.
הצופה הנוכחי הינו המשתמש שמופיע כ-userreference באותו node נצפה. המחבר לא מעניין לשלב הצפייה (לכן לא הוזכר).

אני רוצה שכאשר משתמש מסויים צופה ב-view נתון, יוצגו עבורו באופן אוטומטי כל ה-nodes (מסוג מסויים), אשר הוא (הצופה) userreference בהם.

עכשיו יותר מובן?

סינון view

אם אני מבין נכון, אתה שואל שאלה מאוד פשוטה.

אבל... מדוע בשאלה המקורית שלך דיברת על nodereference ואילו כעת אתה מדבר על userreference?

אני מניח שפשוט התבלבלת. אם זהו המצב, כדור הבדולח שלי עשה עבודה מצוינת בהתחשב בנסיבות. אם לא זה המצב, מה שאני כותב מכאן והלאה שגוי - התעלם ממנו.

==========

אתה רוצה להציג את כל "פיסות התוכן" אשר שדה ה-userreferece המופיע בהם שווה ל-uid של המשתמש המחובר. (שדה userreference הוא למעשה שדה מספרי המכיל uid.)

1. נניח ששם שדה זה הוא OfUser.
2. נניח שה-url של ה-view הוא test.

תחילה עליך ליצור "ארגומנט". ארגומנט הוא פרמטר המועבר, בד"כ, ב-URL.

פתח את תיבת ה-arguments שבטופס עריכת ה-view, ובחר את הארגומנט "User Reference: OfUser". שמור.

כעת בדוק את ה-view: גש ל-URL:
test/2
אתה אמור לראות כעת את כל פיסות התוכן שה-userreference בהן הוא משתמש מספר 2 במערכת.

אם זה עובד, הכל כשורה ואפשר לסיים:

עלינו לומר ל-view, בעצמנו, מהו ה-uid ולא להניח לו לקחת אותו מה-URL. חזור לטופס עריכת ה-view. פתח את תיבת Argument Handling Code והקלד בה:

global $user;
$args[0] = $user->uid;
return $args;

זהו.