admin管理员组

文章数量:1297116

Redirect first comment (Thanks for comment) with show Author name and beginning of the comment

Sample:

Open custom page (Why custom page? There will be some more information) with text comment

Hi, Anderson. Thanks for your comment « Text comment... »
...
...
some more information

Sorry for my English

Redirect first comment (Thanks for comment) with show Author name and beginning of the comment

Sample:

Open custom page (Why custom page? There will be some more information) with text comment

Hi, Anderson. Thanks for your comment « Text comment... »
...
...
some more information

Sorry for my English

Share Improve this question asked Apr 2, 2021 at 7:18 UserUser-nameUserUser-name 577 bronze badges
Add a comment  | 

1 Answer 1

Reset to default 1

You should be able to do something like this:

add_filter( 'comment_post_redirect', 'custom_comments_redirect', 10, 2 );
function custom_comments_redirect( $location, $comment ) {
    $comment_id = $comment->comment_ID;
    
    $custom_url = 'https://example/thank-you/?comment=' . $comment_id;
    
    return $custom_url;
}

And on the "Thank you" page, you can get the comment info like this:

// Make sure you sanitize the GET input
$comment_id = (int) filter_input( INPUT_GET, 'comment', FILTER_SANITIZE_NUMBER_INT );

if ( ! empty( $comment_id ) ) {
    // Fetch comment if the ID is not 0
    $comment = get_comment( $comment_id );
    
    if ( ! empty( $comment ) ) {
        $comment_author = $comment->comment_author;
        $comment_content = get_comment_excerpt( $comment_id );
        
        echo sprintf( __( 'Hi %s. Thank you for your comment "%s"...' ), $comment_author, $comment_content );
        
        // Do your thing here...
    }
}

The default length of the comment excerpt is 20 words, but you can tweak that with a filter as well:

// Set the comments excerpt length (number of words)
add_filter( 'comment_excerpt_length', 'custom_comments_excerpt_length' );
function custom_comments_excerpt_length() {
    return 8;
}

本文标签: phpRedirect first comment (Thanks for comment) with show Autor name and beginning of the comment