Me gustaría usar una declaración LIKE% text% mientras sigo usando la clase $ wpdb de WordPress para desinfectar y preparar la entrada.
SELECT column_1 from `prefix_my_table` WHERE column_2 LIKE '%something%';
He intentado algo como esto en vano:
$wpdb->prepare( "SELECT column_1 from `{$wpdb->base_prefix}my_table` WHERE column_2 LIKE %s;", like_escape($number_to_put_in_like));
¿Cómo se prepara correctamente una instrucción% LIKE% SQL utilizando la clase de base de datos de WordPress?

{}para?$wpdbe ignoraría el->prefixsiguiente.$wpdb->base_prefixmy_tablee intentaría buscar labase_prefixmy_tablepropiedad en lugar de solobase_prefix."Debe duplicar el porcentaje para que no sean tratados como marcadores de fragmentos por
wpdb->prepare():PD: no estoy seguro de que esta sea la mejor / única forma de hacerlo.
fuente
wpdb::prepareque solo las agregará para un%sque no esté precedido por un%. La parte final de su consulta debería serWHERE column_2 LIKE '%%%s%%'.Esta es una forma de hacerlo que he comprobado y funciona:
Reemplace las variables para satisfacer sus necesidades.
fuente
%caracteres (mediante el usolike_escape(). Ver: codex.wordpress.org/Class_Reference/…