Veröffentlichen Sie Autoren mit nicht erfüllten Feldern

Ich möchte die Profile von Nutzern entfernen, bei denen nicht alle zusätzlichen Felder, die ich erstellt habe, gefüllt sind.

Ich benutze eine benutzerdefinierte meta_query in einer Benutzertaxonomie, um diese Autoren zu filtern, und das funktioniert, aber nicht in author .

 function unpublish_not_full_authors( $query ) { if ( $query->is_author() && $query->is_main_query() ) { // your code to set $current_user_name here $query->set( 'meta_query', array( 'relation' => 'AND', array( 'key' => 'descripcion_breve', 'compare' => 'EXISTS', ), array( 'key' => 'titulacion_preparador', 'compare' => 'EXISTS', ), ) ); } } add_action( 'pre_get_posts', 'unpublish_not_full_authors' ); 

Bearbeiten, um zu verdeutlichen:

Wenn sich ein Benutzer auf meiner Website registriert, erhält er eine URL zu seiner Website: beispiel.com/author/mein_profil.

Ich möchte dieses öffentliche Profil veröffentlichen, bis der Autor einige Felder, die ich mit ACF erstellt habe, nicht ausgefüllt hat.

Solutions Collecting From Web of "Veröffentlichen Sie Autoren mit nicht erfüllten Feldern"

Sie tun etwas wie dieses Tutorial zur Kategorisierung von WordPress-Benutzern , richtig?

Ich denke du solltest deine Filterdateien in deinen Themendateien filtern, nicht an einem Haken. author.php einfach eine if-statement zu Ihrer Vorlagendatei (wahrscheinlich author.php ) hinzu, die prüft, ob Ihre benutzerdefinierten Felder keine leeren Zeichenfolgen sind, und dann was auch immer tun (404, woanders redirect, einen Hinweis casting …)

Wenn Sie nicht explizit einen Parameter angeben müssen, der angibt, ob ein Autor öffentlich ist oder nicht (z. B. wenn Sie eine Back-End-Benutzerverwaltungs-GUI oder ähnliches schreiben möchten), sollte das Ausblenden von Benutzern durch Themendateien der einfachste Weg sein .