do_trackbacks( int|WP_Post $post_id )

Perform trackbacks.


Description Description


Parameters Parameters

$post_id

(int|WP_Post) (Required) Post object or ID to do trackbacks on.


Top ↑

Source Source

File: wp-includes/comment.php

2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
function do_trackbacks( $post_id ) {
    global $wpdb;
    $post = get_post( $post_id );
    if ( ! $post ) {
        return false;
    }
 
    $to_ping = get_to_ping( $post );
    $pinged  = get_pung( $post );
    if ( empty( $to_ping ) ) {
        $wpdb->update( $wpdb->posts, array( 'to_ping' => '' ), array( 'ID' => $post->ID ) );
        return;
    }
 
    if ( empty( $post->post_excerpt ) ) {
        /** This filter is documented in wp-includes/post-template.php */
        $excerpt = apply_filters( 'the_content', $post->post_content, $post->ID );
    } else {
        /** This filter is documented in wp-includes/post-template.php */
        $excerpt = apply_filters( 'the_excerpt', $post->post_excerpt );
    }
 
    $excerpt = str_replace( ']]>', ']]>', $excerpt );
    $excerpt = wp_html_excerpt( $excerpt, 252, '…' );
 
    /** This filter is documented in wp-includes/post-template.php */
    $post_title = apply_filters( 'the_title', $post->post_title, $post->ID );
    $post_title = strip_tags( $post_title );
 
    if ( $to_ping ) {
        foreach ( (array) $to_ping as $tb_ping ) {
            $tb_ping = trim( $tb_ping );
            if ( ! in_array( $tb_ping, $pinged ) ) {
                trackback( $tb_ping, $post_title, $excerpt, $post->ID );
                $pinged[] = $tb_ping;
            } else {
                $wpdb->query(
                    $wpdb->prepare(
                        "UPDATE $wpdb->posts SET to_ping = TRIM(REPLACE(to_ping, %s,
                    '')) WHERE ID = %d",
                        $tb_ping,
                        $post->ID
                    )
                );
            }
        }
    }
}

Top ↑

Changelog Changelog

Changelog
Version Description
4.7.0 $post_id can be a WP_Post object.
1.5.0 Introduced.


Top ↑

User Contributed Notes User Contributed Notes

You must log in before being able to contribute a note or feedback.