• Saltar a la navegación principal
  • Saltar al contenido principal
  • Saltar a la barra lateral principal

DecodeCMS

Tu WordPress a otro Nivel ...

  • Acerca de
  • Contacto
  • Inicio
  • Tutoriales
    • Themes
    • Plugins
    • Core
    • Recursos
  • Cursos
  • Acceder
    • Mis cursos
    • Mi Cuenta
    • Acceder
Inicio / Tutoriales / Themes / Shortcode para búsqueda en tabla personalizada en WordPress

Shortcode para búsqueda en tabla personalizada en WordPress

Shortcode para búsqueda en tabla personalizada en WordPress

[ hace 12 meses ] [ Autor: Jhon Marreros Guzmán ][ Themes - Intermedio] [ ]

funcionalidad mejoras

¿Me ayudas a llegar a más gente?

Twittear Compartir LinkedIn WhatsApp

En artículos anteriores ya habíamos visto cómo buscar en una tabla personalizada, sin embargo ahora veremos cómo hacerlo usando un Shortcode y además sólo mostrar los datos que se buscan sin mostrar toda la información desde el inicio.
 

Resultado Final

Búsqueda por nombre, con múltiples resultados

Registros encontrados, búsqueda por nombre

 
Búsqueda por código con resultado único

Resultado único para búsqueda por código

 

Código para la búsqueda en tabla personalizada

En el siguiente código asumo que tienes una tabla personalizada en la base de datos de tu sitio web WordPress, puedes cambiar las variables para reflejar el nombre de tu tabla y los campos de búsqueda.

También puedes cambiar el HTML que se genera para que refleje los campos que quieres mostrar.

En el código anterior:

  • Utilizamos el hook init para crear un shortcode con la función add_shortcode()
  • El shortcode tendrá el nombre: search-form y hace referencia a la función dcms_search_form()
  • Dentro de la función dcms_search_form() configuramos los valores de las variables: $table_name, $field_search1, $field_search2
  • También se captura la variable $search del formulario
  • Con estas variables formamos la consulta SQL que nos devolverá los valores encontrados
  • Se crea el formulario con HTML
  • Si hay resultados, entonces también se crea la tabla HTML

Para agregar el código puedes usar un plugin de Snippets o el archivo functions.php de tu tema hijo.

 

Conclusión

Como has podido ver puedes integrar fácilmente la funcionalidad de búsqueda en una tabla personalizada en tu sitio web directamente a través de código.

 
¿Aún con dudas?, en el siguiente video se detallan los puntos anteriores.

Suscríbete a DecodeCMS:  

 

¿Me ayudas a llegar a más gente?

Twittear Compartir LinkedIn WhatsApp

Artículos Relacionados

  • Mostrar Tabla Personalizada con Búsqueda y Paginación en WordPressMostrar Tabla Personalizada con Búsqueda y Paginación en WordPress
  • Búsqueda en tabla personalizada en WordPressBúsqueda en tabla personalizada en WordPress
  • Leer datos desde otra base de datos en WordPressLeer datos desde otra base de datos en WordPress
  • Mostrar datos desde una tabla personalizada de la base de datos de WordPressMostrar datos desde una tabla personalizada de la base de datos de WordPress
Valora este artículo : 1 barra2 barras3 barras4 barras5 barras (3 votos, promedio: 5,00 de 5)
Cargando...

Interacciones con los lectores

Comentarios

  1. WilliamQ990

    1 mayo, 2022

    Hola, Estimado amigo.
    Buenas tardes, eh visto su códigos y explicaciones y usted es un master, vera quería ver si m podría ayudar es un tema de universidad, eh creado una pagina para mi proyecto, donde los estudiantes puedan ver sus nota con solo poner las notas, pero ahora no se como hacer para ingresar los datos de los estudiantes como cedula, nombres apellidos y las calificaciones a una tabla de base de datos, será que me podría ayudar.

    Como hago para ingresar desde una pagina los datos de manera individual o de manera masiva mediante un .csv a la tabla que eh creado de la base de datos wordpress.

    De ante mano agradezco su ayuda

    • Jhon Marreros Guzmán

      3 mayo, 2022

      Hola, los plugins de importación usualmente trabajan con Custom Post Type, si has creado una tabla personalizada no podrás usar plugins y tendrás que hacerlo de la manera clásica con PHP, lo que si podrías usar es un hook de “admin_post_XXXXX”, revisa este artículo de guía: https://decodecms.com/formulario-de-contacto-sin-plugins-en-wordpress/ , con respecto a llenar datos, lo mismo si es una tabla personalizada tendrás que usar código PHP directamente. Evaluaré hacer un artículo sobre esto.

      • WilliamQ990

        5 mayo, 2022

        Hola, Amigo.

        Genial, muchas gracias por su aporte, lo probare, en realizar lo que me comentas, y si ves estaría genial, un articulo sobre ese tema

  2. jorge ospitia

    3 mayo, 2022

    Hola amigo, muchas gracias por tus aportes me ayudan mucho, quiero comentarte que estoy haciendo exactamente lo que me dices en el video, cambio los parametros, nombre de la tabla, los campos que quiero que busque, y me muestra el campo para inserta el texto y el boton de busqueda pero no me muestra ningun dato de la BD a la que me estoy conectadno no se si es problema de conexion con la base de datos o porque pasa esto, gracias quedo atento.

    • Jhon Marreros Guzmán

      4 mayo, 2022

      Hola, lo primero sería revisar el valor de la variable $sql, y pegar esa consulta en PHPMyAdmin y ver si te devuelve resultados.

  3. Manuel

    7 agosto, 2022

    Hola, disculpa envié este mensaje en otro post no relacionado con mi inquietud.
    Ahora sí, estoy en “Shortcode para búsqueda en tabla personalizada en WordPress”

    Implementé este código varias veces en entornos de pruebas locales limpios en WordPress 6.0.1 y al insertar el shortcode en la página muestra el siguiente error al publicar/actualizar la página:
    “Ha fallado la actualización. Las respuesta no es una respuesta JSON válida.”
    Aún así el código funciona pero no respeta el diseño de la página, es decir, se posiciona por encima de todos los bloques
    ¿Me puedes orientar en una solución?

    • Jhon Marreros Guzmán

      8 agosto, 2022

      Hola, el error que comentas no creo que tenga que ver con el código, más bien parece ser algo relacionado con las urls permanentes, tal como se comenta en esta artículo: https://www.igestweb.es/paginas-web/resolviendo-el-fallo-en-wordpress-de-respuesta-json-valida/

      • Manuel

        8 agosto, 2022

        Hola, gracias
        Intenté lo de los enlaces pero seguía igual, el problema eran son los bloques, no entiendo por qué.
        Instalé el Editor clásico, TinyMCE Advanced ya no aparece el mensaje “Ha fallado la actualización. Las respuesta no es una respuesta JSON válida.”

  4. JUAN CARLOS MERCADO

    9 agosto, 2022

    Jhon muy buenas tardes, muchas por compartir tus conocimientos en esta pagina, han sido de gran ayuda.

    Tengo problemas para cargar el shorcode, al momento de abrir la pagina solo me esta visualizando o imprimiendo en pantalla el msj : search-form

    Gracias de antemano por tu colaboración

    • Jhon Marreros Guzmán

      12 agosto, 2022

      Hola, por lo que comentas no se esta interpretando el shortcode, te sugiero revisar el video cuidadosamente, es posible que en algún lugar haya algún paso que esta pendiente de realizarse.

  5. Anderson paredes

    17 agosto, 2022

    Hola Jhon. Muy interesante tu aporte.
    Quisiera saber si esa bisqueda (el resultado de la busqueda) se puede editar

    • Jhon Marreros Guzmán

      17 agosto, 2022

      Hola, tal como esta el código no, necesitarías código adicional. Espero hacer un artículo próximamente sobre cómo realizar esto.

  6. JCGARECA

    18 agosto, 2022

    Saludos estimado..!! Agradecer por compartir tus conocimientos. Comentarte que copie el código en code snippet y genera error en la linea 25 donde se crea la tabla, no esta reconociendo las etiquetas html. debo instalar algún plugin para solucionar el error?. Agradezco la atención.

    • Jhon Marreros Guzmán

      18 agosto, 2022

      Hola, en el functions.php asegúrate de no tener ninguna etiqueta de cierre de PHP ya que es posible que al tener una etiqueta de cierre “?>”, el código que agregues después no será interpretado correctamente.

  7. JCGARECA

    19 agosto, 2022

    Help..!! elimine la Etiqueta “?>” y agregue comillas simples desde hasta el final <?php endif '; y me indica que no es JSON..!!.
    Alguien que pueda enviarme el código ya compilado y funcionando..?? Agradezco la ayuda..!! mi e-mail jcgarecaruiz@gmail.com

    • Jhon Marreros Guzmán

      20 agosto, 2022

      Hola, mejor sube algunas imágenes a algún repositorio público y envía la url para revisar cómo agregaste el código.

  8. Luis Grardo Zambrano

    12 septiembre, 2022

    cordial saludo Jhon Marremos,
    Estoy realizando el proceso; inicialmente aplico el codigo en la plantilla utilizada (functions.php) asi adjunto imagen
    https://photos.app.goo.gl/NfPUA1FuYhSnAvGQ8

    dicho codigo esta relacionado con los campos de la tabla cliente adjunto imagen
    https://photos.app.goo.gl/RVGJutv9TxJKSMHw8

    por segundo genero la pagina llamada cliente donde pego el shortcode adjunto imagen
    https://photos.app.goo.gl/bCMMe2LarNEuBync7

    una vez guardado los cambios y actualizo mi sitio web genera la caida completa del sitio web adjunto imagen
    https://photos.app.goo.gl/okxjipsa6BVgi1rr5
    bajo lo anterior no se que podria estarhaciendo mal ? agradesco su colaboracion

    • Jhon Marreros Guzmán

      17 septiembre, 2022

      Hola, revisa el log de errores, o habilita la depuración de tu sitio, te genera un archivo debug.log dentro de la carpeta wp-content, con eso se puede ver en qué línea tienes problemas. Revisa: https://decodecms.com/habilitar-el-modo-debug-en-wordpress/
      PD. Siempre usa un editor de código que te facilite ver los errores y te resalte el código, usa por ejemplo Visual Studio Code que es gratuito.

  9. Xeuxy Martinez

    9 octubre, 2022

    Excelente aporte!

    El unico problema que tengo es que por celda no se muestran mas de 10 caracteres, independientemente si son numeros o texto, si tengo 2 o 20 columnas.

    • Jhon Marreros Guzmán

      13 octubre, 2022

      Hola, lo que comentas es posiblemente algo relacionado con el código CSS de tu tema (o de algún plugin), prueba cambiando temporalmente de tema, usando alguno de los que vienen por defecto y verifica. Saludos.

Para escribir código envolver con: <pre class="language-xxx"><code> </code></pre> ,reemplaza las xxx (php, css, html)

*

* Gravatar habilitado

Barra lateral principal

Presentación

Curso Decodifica WordPress

Únete a DecodeCMS

Recibirás como regalo:

Guia práctica con video:
¿Quieres agregar código a WordPress? Revisa las diferentes opciones que tienes.Ver más

Jooble
Alojamiento Wordpress

Niveles

Básico Intermedio Avanzado

Etiquetas

accesibilidad css dashboard editor error funcionalidad herramientas imagen js librería mejoras optimización seguridad social woocommerce

Populares

Shortcode para mostrar la fecha en WordPress

Insertar Font Awesome en WordPress

Cambiar textos de traducción en WordPress

Formatos de entrada en WordPress

© logo decode pie
Política de Privacidad | Política de devoluciones
Copyrigth 2023 Todos los derechos reservados