Deshabilitar las notificaciones de pingback y trackback

4

Estoy tratando de deshabilitar las notificaciones por correo electrónico de pingback / trackback y me preguntaba si hay un archivo PHP que pueda editar para evitarlo.

Los deshabilité en la configuración principal de WordPress (¿creo que solo cambia el valor predeterminado en las nuevas publicaciones?) pero todavía recibo notificaciones de trackbacks en una publicación que en realidad no es una publicación real sino un elemento de cartera en un complemento de cartera sin opción de desactivarlos por publicación).

    
pregunta Sam 03.06.2015 - 15:25

1 respuesta

1

Para deshabilitar pingback y trackbacks, agregue este código a su archivo functions.php en su tema secundario:

add_action( 'pre_ping', 'wpse_190346_internal_pingbacks' );
add_filter( 'wp_headers', 'wpse_190346_x_pingback' );
add_filter( 'bloginfo_url', 'wpse_190346_pingback_url' ;
add_filter( 'bloginfo', 'wpse_190346_pingback_url' ;
add_filter( 'xmlrpc_enabled', '__return_false'  );
add_filter( 'xmlrpc_methods', 'wpse_190346_xmlrpc_methods' );

function wpse_190346_internal_pingbacks( &$links ) { // Disable internal pingbacks
    foreach ( $links as $l => $link ) {
        if ( 0 === strpos( $link, get_option( 'home' ) ) ) {
            unset( $links[$l] );
        }
    }
}
function wpse_190346_x_pingback( $headers ) { // Disable x-pingback
    unset( $headers['X-Pingback'] );
    return $headers;
}
function wpse_190346_pingback_url( $output, $show ) { // Remove pingback URLs
    if ( $show == 'pingback_url' ) $output = '';
    return $output;
}
function wpse_190346_xmlrpc_methods( $methods ) { // Disable XML-RPC methods
    unset( $methods['pingback.ping'] );
    return $methods;
}

Alternativamente, puedes usar el complemento Disable Blogging que se encarga de deshabilitar el pingback / trackbacks para ti.

    
respondido por el Ethan Jinks O'Sullivan 20.08.2016 - 20:11

Lea otras preguntas en las etiquetas