Ahora en Freenet !

Este blog ya se puede leer desde Freenet añadiendo esto después de la dirección del FProxy ( normalmente http://127.0.0.1:8888 ):
USK@69aFOJiagwUh2c3s2a2V6qvdLSIspAmvDwwyyqSz3Pg,eyH2DiCXsHjp
5PdP9meBoVDMAUiSqTD1jYA-TozTDTc,AQACAAE/codigoparallevar/1

Y aunque parece que me cargé los CSS y los dos últimos posts aún no están subidos ( este y el anterior ), porque ni siquiera estaban previstos antes de empezar la subida, funciona.

Pero a lo interesante, no hay ganas de hacer todos los archivos a mano, así que este es un script que a partir de la base de datos de wordpress y un par de plantillas genera todo lo necesario para un blog sencillo ( posts individuales y páginas generales, nada de categorías aún ): wp2fnet.py Para usarlo hacen falta 3 archivos más, el primero es el de configuración y se le pasa como primer parámetro, contiene todo lo necesario para funcionar, este es un ejemplo con todos los campos necesarios ( si alguno falta fallará en medio de la ejecución ): readMoreText = <Moar!>

reloc_force = False

debug = True

overwrite = True

db_host = 127.0.0.1

db_user = asdasdasd

db_passwd = si....mañana...

db_name = knk_wordpress

db_prefix = wp_

plantilla_f = plantilla.htm

plantilla_post_f = plantilla_post.htm

savedExtensions = zip, gz, bz2, py, c, h, pl

savedDir = reloc

mainTitle = Código para llevar

post_per_page = 10

El formato es '=' , la mayoría de los valores son cadenas, excepto reloc_force, debug(realmente este no es necesario), overwrite ( los tres booleanos, True o False ), post_per_page ( entero ) y savedExtensions ( strings separados por comas ). Lo que representa cada campo: - db_host: Dirección de la base de datos. - db_user: Usuario de la base de datos. - db_passwd: Contraseña para la base de datos. - db_name: Nombre de la base de datos - db_prefix: Prefijo de los nombres de las tablas ( 'wp_' casi seguro ) - readMoreText: Texto que se muestra en los enlaces para continuar leyendo el post - reloc_force: Si se encuentra otro objeto ya descargado con el mismo nombre, forzar a volverlo  a descargar ( no recomendado, el nombre es el md5 de la url, así que es muy dificil que coincidan sin se el mismo ) - debug: Información de debugging ( poca a decir verdad :P ) - overwrite: Si se sobreescribirán los post o se detendrá la ejecución cuando coincida con uno anterior. - plantilla_f: Archivo que servirá de plantilla general ( más adelante explicación de como funciona ). - plantilla_post_f: Archivo de plantilla de los post. - savedExtensions: Extensiones cuyos archivos se descargarán para subir a Freenet ( sino los links seguirán apuntando a Internet ) separados por comas - savedDir: Donde se guardan los archivos descargados. - mainTitle: Título general. - post_per_page: Número de posts por página en el índice. * Como funcionan las plantillas ***

(Recuerda que Freenet no permite Javascript!)

Las plantillas es la parte que se encarga del aspecto, una página del blog editada puede funcionar bien, es simplemente código html con palabras clave donde haya que introducir determinadas variables: * General ( plantilla_f ) *

Para el título: %(title)s Para el enlace al anterior: %(previous)s Para el enlace al siguiente: %(next)s Para el/los post: %(post)s

* De post ( plantilla_post_f ) : *

Enlace al post: %(post_link)s Título del post: %(post_title)s Autor del post: %(author)s Momento del escritura: %(date)s Texto del post: %(post)s

El índice y los post comparten plantilla general, la diferencia es que en el índice se ponen varios post y en los enlaces de siguiente anterior ( siguiente página del índice o siguiente post ).

Ejemplo de plantilla de post:

%(post_title)s

%(post)s

Plantilla general ( a partir del tema del blog ): <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/ xhtml1/DTD/xhtml1-strict.dtd">

%(title)s

%(posts)s

%(previous)s

%(next)s

  • Contacto

     <div class="textwidget">Por email o jabber en kenkeiras(*arroba*)gmail

    (pto.)com

    Clave PGP: [ 0x453125AC ]

  • Lógicamente también habría que subir los CSS, pero eso no cambia en nada.

    Saludos :P

    Como preparar y como saltarse un antidebuggers sencillo en Gnu/Linux » « Sets de Julia y Mandelbrot con Python