Oct
23
2009
0

Wordpress escapa automáticamente las comillas simples!

En wp-settings.php alrededor de la línea 581 de wordpress 2.8 encontramos:

1
2
3
4
5
6
7
8
9
10
11
12
// If already slashed, strip.
if ( get_magic_quotes_gpc() ) {
    $_GET    = stripslashes_deep($_GET   );
    $_POST   = stripslashes_deep($_POST  );
    $_COOKIE = stripslashes_deep($_COOKIE);
}

// Escape with wpdb.
$_GET    = add_magic_quotes($_GET   );
$_POST   = add_magic_quotes($_POST  );
$_COOKIE = add_magic_quotes($_COOKIE);
$_SERVER = add_magic_quotes($_SERVER);

O sea que independientemente de tu configuración en php.ini:

1
2
; Magic quotes for incoming GET/POST/Cookie data.
magic_quotes_gpc = Off

WP siempre escapará las comillas.

Luego en teoría no sería necesario usar addslashes o addslashes_gpc:

1
$keyword = addslashes_gpc(trim($_POST['keyword']));

Y siempre deberíamos usar stripslashes al reescribir datos pasados por $_POST:

1
<input type="text" name="keyword" value="<?php echo htmlspecialchars(stripslashes($_POST['keyword'])) ?>">

La verdad es que no me gusta nada. Pero no queda más que aceptarlo como una medida de seguridad adecuada para permitir la creación de tantos plugins para WP a la mayor cantidad de codificadores.

Como sea, es mejor no olvidar esta característica de WP.

Update 07/dic/2009

Parece que esto no va a tener pronta solución. Hace años que el tema está instalado:
http://core.trac.wordpress.org/ticket/5791
Quizás con la instauración de PHP 6 que elimina magic_quotes se haga por fin una revisión de esta característica de WP.

Escrito por NomikOS en: PHP, Wordpress |
Hoy 13 lectores.
Aug
18
2009
0

Realizar una actualización automática de Wordpress sin dar datos de FTP.

200303281543
Creative Commons License photo credit: mackz

Wordpress se actualiza periódicamente. Una y hasta dos veces al mes aparece ese mensaje “Por favor actualiza a la última versión” al tope de la página de administración.

Afortunadamente desde la versión 2.7 se puede hacer automáticamente con sólo un click.

Al parecer no hay problemas en la mayoría de hostings compartidos. Pero si manejas tu propio hosting o VPS podría pasarte que WP te pide datos de acceso FTP para llevar a cabo la actualización. Ellos dicen, y de seguro que es así, que no guardan estos datos. Pero siempre es incómodo dar datos de autentificación en una línea abierta.

La manera más fácil y rápida de evitarlo es dando privilegios al servidor para que pueda sobreescribir el directorio de WP.

1.- Averigua qué usuario corre httpd (servidor Apache) o lighttpd (lighttpd), etc…

1
2
$ pstree -u | grep httpd
|-httpd---10*[httpd(apache)]

Ahá! el usuario apache

2.- Hazlo dueño del directorio de tu blog.

1
chown -R apache: myblog/

3.- Corrre ahora la actualización automática desde el panel de administración de WP.

4.- Vuelve a hacerte dueño del directorio de tu blog. En este ejemplo usuario nomikos.

1
chown -R nomikos: myblog/

Eso es todo. No habrá tomado más de 1 minuto.

Escrito por NomikOS en: Wordpress |
Hoy 6 lectores.
Jul
24
2009
0

Algunas ideas para acceder a wp-admin cuando tienes acceso ftp al directorio de plugins

Me encontraba ayer haciendo unos pequeños ajustes a un plugin de wordpress que desarrollé para un cliente. Lo hacia en forma remota mediante ftp.
En algún momento era necesario testear en el panel de control de WP pero no contaba con los datos de acceso.
Siempre es una molestia dar a terceros muchos datos, especialmente, de autentificación.

Así que pensé en un par de buenas ideas para poder seguir adelante y las comento aquí para no olvidarlas.

1
2
3
4
# inicializar una nueva opción en la base de datos de WP
update_option('pageid', 'valor de inicio');
die('OK');
# correr el script en forma remota y luego borrar estas lineas

Seguramente para un desarrollador veterano de WP le parecerá de lo más obvio y será una práctica habitual, pero para mí fué bastante excitante descubrirlo.

Obtener datos de acceso a wp-admin

Esto es más complicado y sólo deberías hacerlo con la autorización de tu cliente.

1
2
3
# crear una nueva cuenta de usuario para tí
# darte acceso de admin
# borrar la cuenta

luego continuamos…

Escrito por NomikOS en: Wordpress |
Hoy 5 lectores.
Jul
14
2009
2

Creación de URLs personalizados para plugins de wordpress

Kingkong
Creative Commons License photo credit: nxtiak

Si al escribir un plugin para wordpress debes tratar con hyperlinks porque mejor no hacerlos “pretty”, es decir sin los signos ? & =. WP nos facilita la tarea de hacerle entender que datos le hacemos pasar a través de la URL.


En suma podemos escribir urls casi con total libertad, siempre y cuando sepamos informar a WP que es lo que le queremos decir.

Por ejemplo, una url como:

1
http://nomikos.info/myplugin/compre_unas_palomitas_para_ver_la_pelicula_y_las_tengo_grandes_como_kingkong

podemos muy bien hacer que sea interpretada como:

1
2
$palomitas = 'grandes';
$pelicula = 'kingkong';

si le decimos que:

1
'compre_unas_palomitas_para_ver_la_pelicula_y_las_tengo_grandes_como_kingkong'

es igual a:

1
'compre_unas_VAR1_para_ver_la_VAR2_y_las_tengo_VALOR1_como_VALOR2'

(more…)

Escrito por NomikOS en: PHP, Wordpress | Tags: ,
Hoy 9 lectores.

Powered by WordPress. Theme: TheBuckmaker. Modifications by NomikOS