So implementieren Sie benutzerdefinierte Post-Typ-Benutzer

Ich bin immer noch ein WordPress-Neuling und ich versuche zu sehen, was der beste Ansatz ist, um damit umzugehen. Ich habe eine Website mit ungefähr 10.000 Benutzern. Ich habe auch einen Ereignistagetyp und auf jeder Ereignisdetailseite können Benutzer auf “Ich bin an diesem Ereignis interessiert” klicken, um diesen Benutzer einem Ereignis zuzuweisen. Wie soll ich damit umgehen? Wie sollte ich das Zuweisen mehrerer Benutzer zu einem benutzerdefinierten Beitragstyp implementieren (es wird einen Admin-Abschnitt geben, um die Benutzer von Event anzuzeigen).

Vielen Dank,

Solutions Collecting From Web of "So implementieren Sie benutzerdefinierte Post-Typ-Benutzer"

Sie können für jedes Event ein benutzerdefiniertes Post-Meta erstellen (Beispiel event_users ), in dem Sie die Benutzer-IDs speichern, die auf “Ich bin interessiert an diesem Event” klicken.

Etwas wie:

$event_users = get_post_meta($event_id, 'event_users', true); // Get exisitig event users $event_users[$user_id] = 1; // Add user ID as a KEY, a simple way to make sure you only add it once add_post_meta($event_id, 'event_users', $event_users, true) or update_post_meta($event_id, 'event_users', $event_users); // Add/update event users

Wenn Sie dann diese Daten verwenden möchten, um alle Benutzer für ein Ereignis zu erhalten, verwenden Sie einfach $event_users = get_post_meta($event_id, 'event_users', true); Es ist ein bisschen schwieriger, alle Ereignisse für einen Benutzer zu bekommen. Sie können die WP_Query mit meta_query wie:

[ `key` => 'event_users', `value` => '%:'. $user_id .';%', 'compare': 'LIKE' ]

PS: Array-Wert serialisiert auf gespeichert, aber um ehrlich zu sein mag ich nicht zu viele serialisierte Werte (ist nur eine persönliche Sache), ich bevorzuge die Werte in JSON konvertieren (json_encode beim Speichern, und json_decode beim Extrahieren von Daten aus der DB )

Im Falle, dass Sie JSON-Datenformat Meta-Abfrage verwenden wird etwa aussehen:

[ `key` => 'event_users', `value` => '%"'. $user_id .'"%', 'compare': 'LIKE' ]

Überprüfen Sie diese Links für weitere Informationen: – https://codex.wordpress.org/Class_Reference/WP_Query#Custom_Field_Parametershttps://codex.wordpress.org/Function_Reference/add_post_meta

Ein spezielles Plugin für Veranstaltungen: https://wordpress.org/plugins/the-events-calendar/