Allerdings bin ich mir nicht sicher, wie ich mit der Umsetzung fortfahren soll. Ich habe einen benutzerdefinierten Beitragstyp erstellt, um die Kommentare zu speichern, aber ich weiß nicht, wie ich es schaffen soll, dass jedes Mal, wenn sich ein Benutzer/Autor auf unserer Website anmeldet (wir bauen eine Website mit offener Registrierung), ein Beitrag erstellt wird den benutzerdefinierten Beitragstyp, um Kommentare zu enthalten, und dann automatisch mit ihrem Benutzerprofil verknüpft.
Ich würde mich sehr über eine detailliertere Antwort als die auf der verknüpften Frage angegebene freuen, damit ich genau verstehen kann, wie ich dies zum Laufen bekomme.
Danke schön
Anand Thakkar
Eigentlich braucht man das Zeug einfach mit dem Haken user_register Aktion wie
function my_user_register($user_id){
$user = get_user_by( 'id', $user_id );
/**
* if required you can limit this profile creation action to some limited
* roles only
*/
/**
* Created new Page under "user_profile_page" every time a new User
* is being created
*/
$profile_page = wp_insert_post(array(
'post_title' => " $user->display_name Profile ", // Text only to Map those page @ admin
'post_type' => "user_profile_page", // Custom Post type which you have created
'post_status' => 'publish',
'post_author' => $user_id,
));
/**
* Save the Profile Page id into the user meta
*/
if(!is_wp_error($profile_page))
add_user_meta($user_id,'user_profile_page',$profile_page,TRUE);
}
/**
* Action which is being trigger Every time when a new User is being created
*/
add_action('user_register','my_user_register');
$profile_page = get_the_author_meta('user_profile_page');
global $post;
$post = get_post($profile_page);
setup_postdata( $post );
//fool wordpress to think we are on a single post page
$wp_query->is_single = true;
//get comments
comments_template();
//reset wordpress to ture post
$wp_query->is_single = false;
wp_reset_query();
Vielen Dank für diese umfassende Antwort. Ich habe dies implementiert und funktioniert jetzt! 🙂
– Zach Nikodemous
21. Dezember 2015 um 11:01 Uhr
Sie können einen neuen Filter mit der wp_insert_user-Funktion verknüpfen (wenn Sie sie zum Einfügen von Benutzern im Registrierungsschritt verwenden), indem Sie den insert_user_meta-Hook verwenden, sodass dieser Filter nach dem Erstellen eines neuen Benutzers vor dem Speichern im Meta-Array aufgerufen wird. Hier ist der Beispielcode, der hilfreich sein könnte:
Sie können Ihre user-author.php-Datei mit dem folgenden Code aktualisieren.
<?php
//save blog Id
$blog_id = $post->ID;
// now map your post with author post
$author_post_id = get_user_meta($user_id, author_post_id,blog);
query_posts("p=$author_post_id");
the_post();
//Your are in a single post page
$wp_query->is_single = blog;
//get comments
comments_template();
//reset wordpress to particular post
$wp_query->is_single = false;
query_posts("p=$blog_id");
the_post();
?>
Sie müssen verstehen, dass wir hier von der Blog-ID für den jeweiligen Blog ausgehen. Bitte lassen Sie mich wissen, wenn Sie mit anderen Problemen konfrontiert sind.
13696600cookie-checkWordPress – Kommentare auf Autorenseiten zulassenyes