Programación
está sin resolverHola...
Yo quiero mostrar los post que comiencen con una letra especifica.
La idea es crear un listado de post por letras.
Ya tengo listo el codigo para mostrar solo los titulos de los post, solo me falta filtrarlo para que revise el primer caracter del titulo del post y si cumple con la condición (que sea igual a "A" por ejemplo) lo muestre.
Conozco poco de programación.
Si alguien puede decirme como hacerlo, se lo agraddecería en el alma.
Saludos y gracias!
Puedes empezar, considerando este plugin: http://www.nateomedia.com/wares/downloads/wordpress/wp-snap/
No quiero usar un plugin, ya he tocado parte del codigo php.
Por ejemplo al seleccionar alguna categoria o tags se muestran solo los titulos de los post ordenados de manera alfabetica y asi otras cosas.
Lo que quiero esa una instrucción para filtrar al momento de mostrar los titulos de los posts.
Gracias!
Buenas, lo que tienes que hacer es usar el filtro posts_where dentro de la plantilla añadiendo algo así como "(wp_posts.post_title like '".$letra."%')"
Saludos
ironweb escribió:
Lo que quiero esa una instrucción para filtrar al momento de mostrar los titulos de los posts.
Eso suena a "pásenme el código listo para copiar y pegar", lo cual es muy difícil que consigas en ésta u otra comunidad. Este foro, por ejemplo, se llama "Programación", no "Menú à la Carte", lo cual significa que estás frito si en un futuro no muestras código (bueno o malo) antes que cualquier cosa.
En cuanto a tu caso, te adelanto que no se trata de una simple instrucción de 3 o 4 líneas, sino de algo más (o mejor dicho bastante más). A continuación una lista básica de lo que se requiere para tal fin:
1) Convertir el título en un array de caracteres para tomar la primera letra. (implode)
2) Limpiar esa primera letra de caracteres extraños y borrar signos no alfabéticos (preg_replace, strtr)
3) Orientar el query a dicho resultado.
Te dejo un código que hice para construir un glosario. No se adapta 100% a lo que quieres puesto que éste hace un insert en una tabla nueva, pero sin duda puedes tomarlo como ejemplo para este caso. De hecho puedes usarlo si le aplicas unas mínimas modificaciones orientadas a la línea que te dejó Lluna en su último post:
$reemplazos = array(
'Š'=>'S', 'Ž'=>'Z', 'Č'=>'C', 'À'=>'A', 'Á'=>'A', 'Â'=>'A', 'Ã'=>'A', 'Ä'=>'A', 'Å'=>'A', 'È'=>'E', 'É'=>'E', 'Ê'=>'E', 'Ë'=>'E', 'Ì'=>'I', 'Í'=>'I', 'Î'=>'I', 'Ï'=>'I', 'Ò'=>'O', 'Ó'=>'O', 'Ô'=>'O', 'Õ'=>'O', 'Ö'=>'O', 'Ù'=>'U', 'Ú'=>'U', 'Û'=>'U', 'Ü'=>'U', 'Ý'=>'Y', 'š'=>'s', 'ž'=>'z', 'č'=>'c', 'à'=>'a', 'á'=>'a', 'â'=>'a', 'ã'=>'a', 'ä'=>'a', 'å'=>'a', 'è'=>'e', 'é'=>'e', 'ê'=>'e', 'ë'=>'e', 'ì'=>'i', 'í'=>'i', 'î'=>'i', 'ï'=>'i', 'ò'=>'o', 'ó'=>'o', 'ô'=>'o', 'õ'=>'o', 'ö'=>'o', 'ù'=>'u', 'ú'=>'u', 'û'=>'u', 'ü'=>'u', 'ý'=>'y', '1'=>'#', '2'=>'#', '3'=>'#', '4'=>'#', '5'=>'#', '6'=>'#', '7'=>'#', '8'=>'#', '9'=>'#', '0'=>'#',
);
$permitidos = implode( '' , array_keys($reemplazos) );
$texto = str_replace('¡' , '' , $_POST['titulo']);
$txt = preg_replace('/^([^a-zA-Z'. $permitidos .']+)/', '', $texto);
$alfa = strtr($txt , $reemplazos);
$alfa = strtoupper($alfa);
$alfa = $alfa[0];
$con_bd = 'INSERT INTO ' . $vars['tabla'] . ' (alpha) VALUES ("'. mysql_real_escape_string($alfa) .'")';
Desde luego aquí se trabaja con $_POST porque el proyecto para el que lo construí era otro. Todo lo que debes hacer es una consulta de los posts que necesitas (es decir, query_posts, get_posts, WP_Query) y reventar ese array en el primer caracter de cada elemento, suprimiendo los símbolos no alfabéticos (esto quiere decir que tendrás que pasar la lista previamente por el strtr).
ironweb escribió:
Lo que quiero esa una instrucción para filtrar al momento de mostrar los titulos de los posts.Eso suena a "pásenme el código listo para copiar y pegar", lo cual es muy difícil que consigas en ésta u otra comunidad. Este foro, por ejemplo, se llama "Programación", no "Menú à la Carte", lo cual significa que estás frito si en un futuro no muestras código (bueno o malo) antes que cualquier cosa.
Chapó.
Gracias a todos por su respuesta, pero ya me ayudaron en otraq comunidad y sin esas criticas acidas.
Saludos!!!
PD: nothing
Caramba... Lloriqueas por las 4 líneas de crítica, pero no mencionas las otras 27 de ayuda útil con código de ejemplo incluido. Así es la vida jejeje.
Debes Identificarte para publicar.