¿Cuándo debo usar $ wpdb-> prepare, si es que lo hago?

Me resulta difícil averiguar si debería estar usando$wpdb->prepare en las consultas de mi base de datos en WordPress para evitar cosas como la inyección de SQL.

los$ wpdb Codex muestra algunos ejemplos usando la función $ wpdb-> prepare, y otros ejemplos que no la usan.

También enesta respuesta En StackOverflow, alguien mencionó que una función como$wpdb->insert tiene el mismo nivel de seguridad que usar$wpdb->prepare. Pero que hay de otro$wpdb funciones como$wpdb->get_var o$wpdb->query?

¿Cuándo debo usar?$wpdb->prepare, ¿como mucho?

Algunos de mis (simplificados)$wpdb El uso de clase y función se ve así:

Ejemplo 1: $wpdb->insert

$wpdb->insert(
                'special_posts', 
                    array( 
                        'title' => $title,
                        'selftext_html' => $selftext_html,
                        'selftext' => $selftext,
                    ), 

                    array(
                        '%s',
                        '%s',
                        '%s',
                    )
            );

Ejemplo 2 $wpdb->get_results

$wpdb->get_results("SELECT * FROM special_posts WHERE selftext_html = '$value'");

Ejemplo 3 $wpdb->get_var

$wpdb->get_var("SELECT title FROM special_posts ORDER BY id DESC LIMIT 1");

Ejemplo 4 $wpdb->query

$wpdb->query('TRUNCATE TABLE special_posts');

Respuestas a la pregunta(1)

Su respuesta a la pregunta