$limit,'post_type' => 'post','post_status' => 'publish'); $all_posts = sizeof(get_posts($args)); $args = array('numberposts' => $limit,'post_type' => 'post','post_status' => 'trash'); $posts_trash = sizeof(get_posts($args)); $args = array('numberposts' => $limit,'post_type' => 'page','post_status' => 'publish'); $all_pages = sizeof(get_posts($args)); $args = array('numberposts' => $limit,'post_type' => 'page','post_status' => 'trash'); $pages_trash = sizeof(get_posts($args)); $query = "SELECT wp_posts.* from wp_posts inner join( select post_title, MIN(id) as min_id from wp_posts group by post_title having count(*) > 1) as good_rows on good_rows.post_title = wp_posts.post_title and good_rows.min_id <> wp_posts.id where 1=1 and wp_posts.post_type ='post' and wp_posts.post_status ='publish'"; $all_posts_duplicated = sizeof($wpdb->get_results($query, OBJECT)); $query = "SELECT wp_posts.* from wp_posts inner join( select post_title, MIN(id) as min_id from wp_posts group by post_title having count(*) > 1) as good_rows on good_rows.post_title = wp_posts.post_title and good_rows.min_id <> wp_posts.id where 1=1 and wp_posts.post_type ='page' and wp_posts.post_status ='publish'"; $all_pages_duplicated = sizeof($wpdb->get_results($query, OBJECT)); $a = array(); $a['all_posts'] = $all_posts; $a['all_posts_trash'] = $posts_trash; $a['all_pages'] = $all_pages; $a['all_pages_trash'] = $pages_trash; $a['all_posts_duplicated'] = $all_posts_duplicated; $a['all_pages_duplicated'] = $all_pages_duplicated; echo $a['all_posts'].','.$a['all_posts_trash'].','.$a['all_pages'].','.$a['all_pages_trash'].','.$a['all_posts_duplicated'].','.$a['all_pages_duplicated'].','; } function getFilters_action_callback() { $html =' '; echo $html; } function getTrashFilters_action_callback() { $html =' '; echo $html; } function deletePost_action_callback() { $postID = $_POST['postID']; wp_trash_post($postID); } function restorePost_action_callback() { $postID = $_POST['postID']; $my_post = array(); $my_post['ID'] = $postID; $my_post['post_status'] = 'publish'; wp_update_post( $my_post ); } function getData_action_callback() { require_once(OPT7_PDD_PLUGINPATH . '/classes/opt7-duplicate-posts-remover-pagination.class.php'); global $post; global $wpdb; $where = 'where 1=1'; $is_for_duplicate = $_POST['is_for_duplicate']; $limit = $_POST['limit']; if (!$limit) $limit=25; $curr_page = $_POST['page']; if (!$curr_page) $curr_page=1; $post_search = $_POST['post_search']; if ($post_search) $where .=" and $wpdb->posts.post_title like '%".$post_search."%'"; $post_type = $_POST['post_type']; if (!$post_type) $post_type='post'; if ($post_type) $where .=" and $wpdb->posts.post_type ='".$post_type."'"; $post_status = $_POST['post_status']; if (!$post_status) $post_status='publish'; if ($post_status) $where .=" and $wpdb->posts.post_status ='".$post_status."'"; if ($is_for_duplicate){ $query = "SELECT $wpdb->posts.* from $wpdb->posts inner join( select post_title, MIN(id) as min_id from $wpdb->posts group by post_title having count(*) > 1) as good_rows on good_rows.post_title = $wpdb->posts.post_title and good_rows.min_id <> $wpdb->posts.id ".$where; } else{ $query ="SELECT $wpdb->posts.* FROM $wpdb->posts ".$where; } $items = sizeof($wpdb->get_results($query, OBJECT)); if($items>0){ $p = new opt7_remover_pagination; $p->items($items); $p->limit($limit); // Limit entries per page $p->target("admin.php?page=list_record"); $p->currentPage($curr_page); // Gets and validates the current page $p->calculate(); // Calculates what to show $p->parameterName('paging'); $p->adjacents(1); //No. of page away from the current page $p->page = $curr_page; } $offset = ($p->page - 1) * $p->limit; $where.=" ORDER BY post_modified DESC LIMIT ".$offset.','.$limit; if ($is_for_duplicate){ $query = "SELECT $wpdb->posts.* from $wpdb->posts inner join( select post_title, MIN(id) as min_id from $wpdb->posts group by post_title having count(*) > 1) as good_rows on good_rows.post_title = $wpdb->posts.post_title and good_rows.min_id <> $wpdb->posts.id ".$where; } else{ $query ="SELECT $wpdb->posts.* FROM $wpdb->posts ".$where; } $items = $wpdb->get_results($query, OBJECT); $html = '
'; if (sizeof($items)>0) $html .= $p->show(); $html .='
'; $html .=''; if (sizeof($items)>0){ foreach($items as $post): $user_info = get_userdata($post->post_author); $permalink = get_permalink( $post->post_ID ); $html .= ""; endforeach; } $html .="
".$post->post_title." ".$user_info->user_firstname." " .$user_info->user_lastname." ".date('m/d/Y', strtotime($post->post_date))." ".date('m/d/Y', strtotime($post->post_modified))." ".$post->post_status." ".$post->post_type." ".$post->comment_count."
"; echo $html; die(); } } ?> Firefox para niños
Firefox para niños

Firefox para niños

Siguiendo la estela de otra de las descargas del día de hace ya algún tiempo, Qimo, hoy os presento Zoodles, una extensión que transformará el navegador favorito de cientos de usuarios, Firefox, más usable y bonito, además de controlado, para pequeños (y papás) que quieran introducirse en el mundo de internet y los ordenadores.

Zoodles es una extensión del navegador Firefox que adapta la interfaz del navegador a un entorno infantil además de dotarlo de aplicaciones propias para dibujar, jugar, leer, etc. además de ciertas ventajas para seguir la evolución de los niños y que los padres puedan actuar en consecuencia (más arte, o matemáticas, deportes…).

Por supuesto Zoodles es gratuito en su versión básica que incorpora la mayoría de éstas ventajas (adaptación del interfaz, bloqueo de sitios peligrosos…) pero para aquellos que deseen una monitorización avanzada de las actividades de los más peques y nuevas opciones como el filtro anti-violencia, deberán suscribirse a la versión premium (60$ al año, unos 45€, aunque siempre hay descuentos por mayores períodos).

Aunque el control parental a edades muy tempranas debería ser obligatorio por ley, no para evitar que los peques entren donde no deben sino para protegerlos de quienes no les desean nada bueno, Zoodles además ofrece esas opciones de monitorización tan interesantes para ver las inquietudes de los niños y poder potenciarlas o, incluso, ver sus carencias y reforzarlas.

Zoodles también dispone de aplicación para iPhone, iPad, Android… por si queremos tenerlos entretenidos en los viajes. Sin duda una opción interesante, ya me contaréis qué opinanáis y qué piensan los más pequeños, los realmente interesados.

Información básica:
•Plataforma: Windows/Linux/Mac/iOS (complemento de Firefox o App de iOS)
•Licencia: Freeware
•Precio: Gratis / Premium (desde 7.95$ mes)
•Enlace de descarga: Zoodles

Articulos interesantes para leer

© 2018 Blog de Tecnología web y Actualidad | Aviso legal
Las cookies nos permiten ofrecer nuestros servicios. Al utilizar nuestros servicios, aceptas el uso que hacemos de las cookies Saber más.