Ir al contenido principal

Limitar los resultados de «Multisite Global Search» plugin para Wordpress

Muchos webmasters tienen instalado la versión Multisitios de Wordpress, este es útil para administrar un multiblog con una sola administración.

El plugin «Multisite Global Search» permite agregar un buscador en cualquier bitácora de la red (o en todos) y conseguir resultados en la página del blog administrador del multisitios.

Normalmente si la búsqueda genera muchos resultados el php generará un error de falta de memoria:

Fatal error: Allowed memory size of 33554432 bytes exhausted ...


Este error se puede solucionar limitando el número de resultados para lo cual hay que editar el archivo shortcodes.php ubicado en la carpeta /inc del plugin.

En la línea 219 encontrarás el comentario:   // Show private posts  busca la línea:

"AND ( post_status = 'publish' OR post_status = 'private' ) AND ".$post_type." ORDER BY ".$wpdb->base_prefix."v_posts.blog_id ASC, ".$wpdb->base_prefix."v_posts.post_date DESC, ".$wpdb->base_prefix."v_posts.comment_count DESC" );

Y reemplázala por:

"AND ( post_status = 'publish' OR post_status = 'private' ) AND ".$post_type." ORDER BY ".$wpdb->base_prefix."v_posts.blog_id ASC, ".$wpdb->base_prefix."v_posts.post_date DESC, ".$wpdb->base_prefix."v_posts.comment_count DESC LIMIT 30" );

Tres líneas más abajo busca:

"AND post_status = 'publish' AND ".$post_type." ORDER BY ".$wpdb->base_prefix."v_posts.blog_id ASC, ".$wpdb->base_prefix."v_posts.post_date DESC, ".$wpdb->base_prefix."v_posts.comment_count DESC" );

Y reemplázalo por:

"AND post_status = 'publish' AND ".$post_type." ORDER BY ".$wpdb->base_prefix."v_posts.blog_id ASC, ".$wpdb->base_prefix."v_posts.post_date DESC, ".$wpdb->base_prefix."v_posts.comment_count DESC LIMIT 30" );

Técnicamente lo único que hemos hecho es agregar: LIMIT 30

------- o -------
Tips:
- For run a multisite with a large database. 
- The search is running slow because there is no pagination.
- For a database very large.

Comentarios

  1. excelente, hice el cambio y trabaja muy bien.

    ahora, cómo puedo hacer la paginación? hay un cambio así de simple?

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

Superponer una imagen sobre otra con CSS

El otro día me encontré con la necesidad de superponer una imagen sobre otra, mi aplicación debía mostrar una imagen y luego encima colocarle un marco quedando superpuesto.

Claro está que la imagen superpuesta como un marco debe ser trasparente en su interior para poder mostrar la imagen que va debajo.

Hay dos maneras de hacerlo, una poniendo el estilo en un archivo externo o incrustado en el <head> de la página web o sino agregándolo en el mismo DIV.

<div style="position:relative"><img src="imagen_debajo.jpg" width="268" hspace="16" height="268" vspace="16" /><div style="position:absolute; top:0; left:0;"><a href="http://www.guiaplaza.com"><img border="0"  src="marco_chistes.png" width="300" height="300" /></a></div></div>
Si desean la opción más Larga es la siguiente:


<html>
<head>
<title>Ejemp…

Script para buscar palabras o textos en una página (html) con Jquery

Aquí les muestro la solución que recientemente encontré para colocar un buscador dentro de una página web para que encuentre textos o palabras.

El script funciona con Jquery y un pequeño Javascript que busca en el html y resalta (en amarillo) los textos que va encontrando según tu vayas ingresando las letras.

El color de fondo puede variarse de acuerdo al tema y colores de tu página web. Es además un script moderno  (2012) que trabaja con todos los navegadores como el Chrome, IE9, Safari, etc.

¿Ganas dinero en Facebook con Página, Grupo, Comunidad, etc?

Muchas páginas, comunidades, notas, grupos y foros creados dentro de Facebook podrían ser una fuente grandiosa de ingresos económicos para sus creadores.... debido a que estas le generan mucho dinero en publicidad a esta red social.

Algunos webmasters ya saben lo que es ganar dinero trabajando en internet con una página web como un blog, foro o sitio temático, para los que ya reciben más de €100 euros al mes, volver a cero es definitivamente impensable.