WordPress para iPhone 2.2

Ya está disponible la nueva versión de WordPress para iPhone con 3 importantes mejoras:

  • Responder a comentarios
  • Edición de comentarios
  • Resaltado de comentarios pendientes

WordPress para iPhone WordPress para iPhone WordPress para iPhone

WordPress para iPhone WordPress para iPhone WordPress para iPhone

Remover directorios (RMDIR) recursivamente con PHP

function rmdir_recurse($path) {
	$path = rtrim($path, '/').'/';
	$handle = opendir($path);
	while(false !== ($file = readdir($handle))) {
		if($file != '.' and $file != '..' ) {
			$fullpath = $path.$file;
			if(is_dir($fullpath))
                          rmdir_recurse($fullpath); else unlink($fullpath);
		}
	}
	closedir($handle);
	rmdir($path);
}

Tutorial sobre Facebook Connect

Facebook Connect es una API de FB que nos permite usar nuestra cuenta de FB en otras web.

El tutorial nos mostrará los siguientes puntos:

  1. Crear una aplicación en Facebook
  2. Copiar en tu sitio el fichero xd_receiver.htm
  3. Descargar la API PHP de FB en tu web
  4. Modificar tu tabla de usuarios
  5. Crear una página para loguearse con Facebook Connect
  6. Enlazar a fbclogin.php desde tu login
  7. Otros puntos a seguir

Barattalo | Facebook Connect Tutorial

Redimensionar imágenes

Agregar el siguiente código al archivo functions.php de tú theme.

function replace_uploaded_image($image_data) {
    // if there is no large image : return
    if (!isset($image_data['sizes']['large'])) return $image_data;
 
    // paths to the uploaded image and the large image
    $upload_dir = wp_upload_dir();
    $uploaded_image_location = $upload_dir['basedir'] . '/' .$image_data['file'];
    $large_image_location = $upload_dir['path'] . '/'.$image_data['sizes']['large']['file'];
 
    // delete the uploaded image
    unlink($uploaded_image_location);
 
    // rename the large image
    rename($large_image_location,$uploaded_image_location);
 
    // update image metadata and return them
    $image_data['width'] = $image_data['sizes']['large']['width'];
    $image_data['height'] = $image_data['sizes']['large']['height'];
    unset($image_data['sizes']['large']);
 
    return $image_data;
}
add_filter('wp_generate_attachment_metadata','replace_uploaded_image');

Anatomía de la barra lateral (sidebar)

La barra lateral (sidebar) es un elemento importante en todos los blogs. Es un estándar en el diseño de dos columnas, se coloca a la derecha de la sección principal, e incluye información y enlaces relacionados con el contenidos de las entradas del blog.

Una barra bien organizada debe incluir algunos elementos importantes, tales como, opciones de suscripción, publicidad, entradas recientes y populares, y ayudar a los lectores del blog a encontrar información relacionada con el artículo que están leyendo o, en general, sobre el blog que están navegando. Muchos blogs también añaden items o características de servicios externos (Página de fans en Facebook o Google Friend Connect) o actualizaciones de Twitter.
Leer más »

KDE SC 4.4 RC3

Disponible KDE SC 4.4 RC3 (KDE 4.3.98), la tercera Release Candidate de este esperado entorno de escritorio que vuelve a centrarse en la corrección de fallos y que probablemente sea la última antes de la publicación de la versión definitiva de KDE 4.4.
Leer más »

Cómo eliminar automáticamente el nofollow de sus post

Copia el siguiente código y pégalo en el archivo functions.php de tu tema. Una vez que guardes el archivo de archivo, el atributo rel = "nofollow" será eliminado.

function remove_nofollow($string) {
	$string = str_ireplace(' rel="nofollow"', '', $string);
	return $string;
}
add_filter('the_content', 'remove_nofollow');

Vía: WpRecipes

PHP: Obtener nombre base de un archivo y su extensión

Obtener extensión

<?php
  // will get the file name out of whole path (path/to/file.inc.php)
  $filename = basename($filePath);
  // split it into part by dot
  $filePartArr = explode('.', $f);
  // get the last one
  $ext = $arr[count($filePartArr) - 1];
?>

Nombre del archivo sin extensión

<?php
   $fileBaseName = basename ($file, '.php');
?>

Vía: Web Scripting

KDE 4.4 RC2

Los desarrolladores de KDE han lanzado la segunda Release Candidate de KDE Software Compilation 4.4, cuyo nombre código es CampKDE.

Con cambios en Nepomuk, configuración de pantalla, más efectos KWin, nuevas aplicaciones, más estabilidad, mayor rapidez, etc.

Están disponibles los repositorios para Kubuntu. Los usuarios del desarrollo Lucid pueden realizar una actualización; en cambio los usuarios de la versión estable 9.10 pueden instalarlo desde los Kubuntu Beta PPA.

Rechazar automáticamente los comentarios spam en tu blog WordPress

Agrega el siguiente código a tu archivo functions.php

function in_comment_post_like($string, $array) {
	foreach($array as $ref) { if(strstr($string, $ref)) { return true; } }
	return false;
}
function drop_bad_comments() {
	if (!empty($_POST['comment'])) {
		$post_comment_content = $_POST['comment'];
		$lower_case_comment = strtolower($_POST['comment']);
		$bad_comment_content = array(
			'viagra',
			'hydrocodone',
			'hair loss',
			'[url=http',
			'[link=http',
			'xanax',
			'tramadol',
			'russian girls',
			'russian brides',
			'lorazepam',
			'adderall',
			'dexadrine',
			'no prescription',
			'oxycontin',
			'without a prescription',
			'sex pics',
			'family incest',
			'online casinos',
			'online dating',
			'cialis',
			'best forex',
			'amoxicillin'
		);
		if (in_comment_post_like($lower_case_comment, $bad_comment_content)) {
			$comment_box_text = wordwrap(trim($post_comment_content), 80, "\n  ", true);
			$txtdrop = fopen('/var/log/httpd/wp_post-logger/nullamatix.com-text-area_dropped.txt', 'a');
			fwrite($txtdrop, "  --------------\n  [COMMENT] = " . $post_comment_content . "\n  --------------\n");
			fwrite($txtdrop, "  [SOURCE_IP] = " . $_SERVER['REMOTE_ADDR'] . " @ " . date("F j, Y, g:i a") . "\n");
			fwrite($txtdrop, "  [USERAGENT] = " . $_SERVER['HTTP_USER_AGENT'] . "\n");
			fwrite($txtdrop, "  [REFERER  ] = " . $_SERVER['HTTP_REFERER'] . "\n");
			fwrite($txtdrop, "  [FILE_NAME] = " . $_SERVER['SCRIPT_NAME'] . " - [REQ_URI] = " . $_SERVER['REQUEST_URI'] . "\n");
			fwrite($txtdrop, '--------------**********------------------'."\n");
			header("HTTP/1.1 406 Not Acceptable");
			header("Status: 406 Not Acceptable");
			header("Connection: Close");
			wp_die( __('bang bang.') );
		}
	}
}
add_action('init', 'drop_bad_comments');

Nota: Si usas el plugin Antivirus, la siguiente línea de código se va a mostrar como sospechosa:

$txtdrop = fopen('/var/log/httpd/wp_post-logger/nullamatix.com-text-area_dropped.txt', 'a');

Vía: WpRecipes