En WordPress si queremos realizar un query o consulta de uno/s determinado/s post utilizando el “ID” de estos podemos utilizar la key “post__in” y pasarle como valor un array de los id de los post que queremos listar.
Un ejemplo:
$ids = array(1562, 789); // en este caso solo listo solo los post de tipo 'page' con 'id': 1562 y 789
query_posts
(array(
'post_type' => 'page',
'post__in' => $ids,
'showposts' => 10
));
if (have_posts
()) :
while (have_posts
()) : the_post
();
// bla, bla, bla...
endwhile;
endif;
Es muy probable que en algún momento que necesiteis mostrar un determinado código html sin tabulaciones ni espacioes entre tags (ya sea para comprimir una página web, utilizarlo en javascript, o otras razones).
A continuación una simple función que se encarga de buscar y reemplazar espacios en blanco entre etiquetas html:
function limpiahtml
($codigo){
$buscar = array('/\>[^\S ]+/s','/[^\S ]+\</s','/(\s)+/s');
$reemplazar = array('>','<','\\1');
$codigo = preg_replace($buscar, reemplazar
, $codigo);
$codigo = str_replace("> <", "><", $codigo);
return $codigo;
}
Un ejemplo de un determinado código html con tabulaciones y espacios entre tags:
Un ejemplo de como quedaría el código anterior utilizando la función php “limpiahtml”:
Un truco para prevenir el cache de los archivos CSS de nuestras páginas web montadas en php. Para evitar el problema de tener que REFRESCAR la página basta con introducirle un parámetro al archivo css, en este caso le pasamos la fecha y hora actuales con minutos y segundos para que el valor siempre sea diferente:
<link type="text/css" href="estilo.css?
<?php echo date('Y-m-d H:i:s'); ?>" rel="stylesheet" />
De esta forma cada vez que cargemos la página web el navegador será engañado al pensar que es un estilo nuevo.
Algunos ejemplos utilizando solo código css para crear formas con aspecto de triángulo:
Triangulo CSS (pico superior)
.triangulo_sup {
width: 0;
height: 0;
border-left: 50px solid transparent;
border-right: 50px solid transparent;
border-bottom: 100px solid #000;
}
Triangulo CSS (pico inferior)
.triangulo_inf {
width: 0;
height: 0;
border-left: 50px solid transparent;
border-right: 50px solid transparent;
border-top: 100px solid #000;
}
Triangulo CSS (pico izquierda)
.triangulo_izq {
width: 0;
height: 0;
border-top: 50px solid transparent;
border-right: 100px solid #000;
border-bottom: 50px solid transparent;
}
Triangulo CSS (pico derecha)
.triangulo_der {
width: 0;
height: 0;
border-top: 50px solid transparent;
border-right: 100px solid #000;
border-bottom: 50px solid transparent;
}
Triangulo CSS (pico superior izquierdo)
.triangulo_top_left {
width: 0;
height: 0;
border-top: 100px solid #000;
border-right: 100px solid transparent;
}
Triangulo CSS (pico superior derecho)
.triangulo_top_right {
width: 0;
height: 0;
border-top: 100px solid #000;
border-left: 100px solid transparent;
}
Triangulo CSS (pico inferior izquierdo)
.triangulo_bottom_left {
width: 0;
height: 0;
border-bottom: 100px solid #000;
border-right: 100px solid transparent;
}
Triangulo CSS (pico inferior derecho)
.triangulo_bottom_right {
width: 0;
height: 0;
border-bottom: 100px solid #000;
border-left: 100px solid transparent;
}
Función para retrasar unos segundos/minutos/horas la publicación en los feed de nuestras entradas/post una vez estos son publicados en WordPress. De esta manera si retrasamos por ejemplo 5 minutos la publicación (solo en los feed) nos da tiempo a revisar bien si hay algún error, en url, textos… antes de que se guarde y publique la url en nuestras RSS.
function retrasar_feed
($where) {
global $wpdb;
if (is_feed
()) {
// tiempo actual
$ahora = gmdate('Y-m-d H:i:s');
// valor que deseamos esperar
$esperar = '10';
$unidad = 'MINUTE'; // MINUTE, HOUR, DAY, WEEK, MONTH, YEAR
// añadir clausala SQL a Where $where
$where .= " AND TIMESTAMPDIFF($unidad, $wpdb->posts.post_date_gmt, '$ahora') > $esperar ";
}
return $where;
}
add_filter
('posts_where', 'retrasar_feed');