<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Uy perdón &#187; Miscelánea</title>
	<atom:link href="http://www.uyperdon.com/category/miscelanea/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.uyperdon.com</link>
	<description>Blog en el que voy informando de todo aquello que a nivel personal me interesa o simplemente lo que sucede o veo a mi alrededor. Solo espero que con ello os entretengáis un rato.</description>
	<lastBuildDate>Mon, 23 Jan 2012 19:32:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Crear una web con wordpress</title>
		<link>http://www.uyperdon.com/2012/01/crear-una-web-con-wordpress/</link>
		<comments>http://www.uyperdon.com/2012/01/crear-una-web-con-wordpress/#comments</comments>
		<pubDate>Mon, 23 Jan 2012 19:29:18 +0000</pubDate>
		<dc:creator>Exdeus</dc:creator>
				<category><![CDATA[Miscelánea]]></category>

		<guid isPermaLink="false">http://www.uyperdon.com/?p=707</guid>
		<description><![CDATA[Vamos a montar una pequeña web sin diseño pero utilizando la potencia del motor de WordPress como si fuera un CMS. Lo primero que vamos a hacer va a ser la Instalación de WordPress. Obvío que tenemos acceso FTP, usuario y contraseña de la BBDD y el tema Twentyten seleccionado. Lo que nos encontramos con [...]<p><a href="http://www.uyperdon.com/2012/01/crear-una-web-con-wordpress/">Crear una web con wordpress</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Vamos a montar una pequeña web sin diseño pero utilizando la potencia del motor de WordPress como si fuera un CMS. Lo primero que vamos a hacer va a ser la Instalación de WordPress. Obvío que tenemos acceso FTP, usuario y contraseña de la BBDD y el tema <strong>Twentyten</strong> seleccionado.</p>
<p>Lo que nos encontramos con el entorno anterior es una estuctura de blog para comentarios en diferentes categoría. Como queremos escapar de la estructura básica de un blog y darle una estructura web no vamos a utilizar las entradas y trabajaremos mediante páginas.</p>
<p>Pasaremos a montar la estructura de páginas a través de la opción Páginas / Añadir Página. Al <strong>crear una página</strong> escoged la opción One column, no sidebar para que no tengamos menú lateral. Podemos montar una estructura básica de Home, Nosotros, Noticias (con dos páginas anidadas de Tecnología y Gadgets) y Contacto. Es una estructura de ejemplo y podéis usar las secciones y subsecciones que necesitéis pero siempre TRABAJANDO CON PÁGINAS. No es necesario introducir el contenido de las páginas, simplemente con que las tengáis publicadas y con los cambios que os diré a continuación veréis el cambio en la estructura.</p>
<p>Iremos a ajustes y haremos los siguientes cambios:<br />
<strong>Ajustes de lectura</strong> &#8211; Seleccionamos Una página estática (la página de la estructura anterior que será la home)<br />
<strong>Página de entradas</strong> -Seleccionaremos la de Noticias&#8230; ya que usamos wordpress utilicemos su funcionalidad de escritura de artículos<br />
<strong>Ajustes de comentarios</strong> &#8211; Desactivamos &#8211; Permitir notificaciones de enlace desde otros sitios (pingbacks y trackbacks) y Permitir comentarios en las nuevas entradas<br />
Ajustes de los enlaces permanentes &#8211; Estructura personalizada ponemos &#8220;/%postname%/&#8221;</p>
<p>Con estos simples pasos tenemos toda la estructura y podemos ver ya el sitio para ver los cambios. Ups, resulta que nos queda el contenido demasiado &#8220;estrecho&#8221;. Al escoger la opción One Colum al crear las páginas hemos eliminado una columna. Para arreglar esto vamos al archivo style.css del tema y cambiamos el ancho para las líneas:</p>
<p><code>.one-column #content {<br />
width: 900px; -- inicialmete a 640px<br />
}</code></p>
<p>Ya tenemos el ancho. Por supuesto obviad el diseño. Estas modificaciones pueden hacerse sobre cualquier template. Lo interesante del theme que propongo es que es casi blanco por completo y luego podréis realizar los cambios que queráis a través de la css.</p>
<p>Ya tenemos la estructura básica.</p>
<p><strong>Instalación de plugins</strong><br />
Llegado a este punto vamos a instalar una serie plugins. En primer lugar, y ya que trabajamos con páginas vamos a organizarlas de una manera cómoda. Si os fijáis wordpress ordenará por defecto por orden alfabético. Podemos organizar nuestras páginas y subpáginas con el plugin <strong>My Page Order</strong> simplemente arrastrando.</p>
<p>Otro plugin interesante para que un usuario que nos visite pueda interactuar es incluir conexiones Social Media. Para ello podemos utilizar <strong>WP Socializer</strong>, que posee una gran cantidad de conexiones a redes sociales como facebook, twitter, Google+, digg&#8230;</p>
<p>Por supuesto no olvidéis <strong>googlesitemapxml</strong> que posicionará la página que estamos realizando.</p>
<p>Como tenemos una sección de noticias he considerado que podemos instalar un sistema de votación sencillo mediante estrellas que nos permitirá conocer si nuestras noticias son o no interesantes. Instalaremos <strong>GD Star Rating</strong>. En la configuración podéis determinar si queréis que salgan en las páginas o solo en los artículos.</p>
<p>Ya tenemos mínima interacción y funcionalidades extra. Por supuesto hay multitud de plugins que podríais instalar: inclusión de videos, ultimos tweets&#8230; pero eso lo dejo a vuestra elección.</p>
<p><strong>Especial Widget</strong>:<br />
Vamos a darle un toque distintivo a la Home. Introduciremos un poco de código que nos permita incluir los widgets que nos interesen a través del BackOffice. Normalmente los widgets solo se inluyen el cabecera, lateral o footer. Nuestras páginas de una columna no permite su integración pero vamos a hacer unas modificaciones para poder escogerlos y mostrarlos en la home.</p>
<p>Abrimos el archivo function.php de la carpeta /wp-includes y vamos a la línea 374 aproximadamente y añadimos:</p>
<p><code>// Area Home, Home. Vacía por defecto.<br />
register_sidebar( array(<br />
'name' =&gt; __( 'Home Widget Area', 'twentyten' ),<br />
'id' =&gt; 'home-widget-area',<br />
'description' =&gt; __( 'Widget para la Home', 'twentyten' ),<br />
'before_widget' =&gt; '</code></p>
<ul>
<li id="%1$s"><code>',<br />
'after_widget' =&gt; '</code></li>
</ul>
<p>&nbsp;</p>
<p>&#8216;,<br />
&#8216;before_title&#8217; =&gt; &#8216;</p>
<h3>&#8216;,<br />
&#8216;after_title&#8217; =&gt; &#8216;</h3>
<p>&#8216;,<br />
) );</p>
<p><code></code><br />
Como veís antes teníamos 6 posiciones de widget. Lo que hacemos es crea una más, o cuantas sean necesarias para aprovechar esta funcionalidad.</p>
<p>Crearemos un nuevo archivo dentro del theme que se llame WidgetPage.php con el siguiente código:</p>
<p><code><!--?php <br ?--> /* Template Name: Widget Page<br />
*/ ?&gt;</code></p>
<p>&nbsp;</p>
<div id="container">
<div id="content">
<p><!--?php <br ?--> /* Run the loop to output the page.<br />
* If you want to overload this in a child theme then include a file<br />
* called loop-page.php and that will be used instead.<br />
*/<br />
get_template_part( &#8216;loop&#8217;, &#8216;page&#8217; );<br />
?&gt;</p>
</div>
<p>&nbsp;</p>
</div>
<p><!-- #container --><br />
Yo he incluido el contenido de nuestra página de la home. Por supuesto se trata de un código simple que podéis modificar para crear hasta 3 posiciones diferentes de inclusión de widget. Nuestro ejemplo solo incluye una posición y al final del contenido que tenemos en nuestra Home.</p>
<p>Ahora solo tendremos que ir a Apariencia / Widgets, desplegar el nuevo menu que nos aparece a la derecha con nuestro título Home Widget Area y arrastrar lo que queramos.</p>
<p>Espero que os sirva <img src='http://www.uyperdon.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><a href="http://www.uyperdon.com/2012/01/crear-una-web-con-wordpress/">Crear una web con wordpress</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.uyperdon.com/2012/01/crear-una-web-con-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GTD funciona</title>
		<link>http://www.uyperdon.com/2011/12/gtd-funciona/</link>
		<comments>http://www.uyperdon.com/2011/12/gtd-funciona/#comments</comments>
		<pubDate>Thu, 22 Dec 2011 19:39:51 +0000</pubDate>
		<dc:creator>Exdeus</dc:creator>
				<category><![CDATA[Miscelánea]]></category>
		<category><![CDATA[Gtd]]></category>

		<guid isPermaLink="false">http://www.uyperdon.com/?p=681</guid>
		<description><![CDATA[Pues eso puedo decir después de utilizarlo durante un mes y medio. Empecé despacio. Marcando solo 4 o 5 tareas importantes. El 22/12/11 batí el récord: 30 acciones / tareas finalizadas a lo largo de un productivo día. Eso sin contar todas aquellas tareas / acciones delegadas de la que deberé llevar el control cuando [...]<p><a href="http://www.uyperdon.com/2011/12/gtd-funciona/">GTD funciona</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Pues eso puedo decir después de utilizarlo durante un mes y medio.</p>
<p>Empecé despacio. Marcando solo 4 o 5 tareas importantes. El 22/12/11 batí el récord: 30 acciones / tareas finalizadas a lo largo de un productivo día. Eso sin contar todas aquellas tareas / acciones delegadas de la que deberé llevar el control cuando sea oportuno.</p>
<p><a title="Gtd " href="http://www.uyperdon.com/2011/11/mi-inmersion-en-la-mejora-de-la-productividad-a-traves-de-gtd/">Os animo a probarlo</a>&#8230; no os defraudará&#8230; eso sí, os pido una sola cosa&#8230; constancia y lo conseguireis.</p>
<p><a href="http://www.uyperdon.com/2011/12/gtd-funciona/">GTD funciona</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.uyperdon.com/2011/12/gtd-funciona/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Yii 1: Generando una web sin Programación</title>
		<link>http://www.uyperdon.com/2011/12/yii-1-generando-una-web-sin-programacion/</link>
		<comments>http://www.uyperdon.com/2011/12/yii-1-generando-una-web-sin-programacion/#comments</comments>
		<pubDate>Sat, 17 Dec 2011 12:32:44 +0000</pubDate>
		<dc:creator>Exdeus</dc:creator>
				<category><![CDATA[Miscelánea]]></category>
		<category><![CDATA[generar estructura]]></category>
		<category><![CDATA[si programación]]></category>
		<category><![CDATA[Yii]]></category>

		<guid isPermaLink="false">http://www.uyperdon.com/?p=556</guid>
		<description><![CDATA[Como ya sabéis he probado varios frameworks php (cakephp, symphony&#8230;) pero nunca os había hablado de Yii. Con este post intentaré iniciaros en su rápido desarrollo y bondades. Nada mejor que empezar con los screencasts que nos ofrece. Sin necesidad de saber nada de programación podéis tener un entorno dinámico en php en menos de [...]<p><a href="http://www.uyperdon.com/2011/12/yii-1-generando-una-web-sin-programacion/">Yii 1: Generando una web sin Programación</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Como ya sabéis he probado varios frameworks php (cakephp, symphony&#8230;) pero nunca os había hablado de <a title="Yii" href="http://www.yiiframework.com/">Yii</a>. Con este post intentaré iniciaros en su rápido desarrollo y bondades. Nada mejor que empezar con los <a title="Iniciandose con Yii" href="http://www.yiiframework.com/screencasts/">screencasts que nos ofrece</a>. Sin necesidad de saber nada de programación podéis tener un entorno dinámico en php en menos de 5 minutos.<br />
Una vez <a title="Descarga Yii" href="http://www.yiiframework.com/download/">descargado el paquete más estable</a>, de deberemos ejecutar a travás de cónsolsa y desde la carpeta Yii.el siguiente comando: <code>php yiic.php webapp C:\xampp\htdocs\testdrive</code></p>
<p>De esta manena generaremos toda una estructura básica. Si habéis incluido php en la ruta local de vuestro ordenador podréis ejecutar el comando desde cualquier lugar sin necesitar ir a la carpeta de Yii.</p>
<p>Ahora en un navegador solo hemos de ir a la dirección que hemos creado en nuestro caso sería http://localhost/testdrive y se habrá generado toda la estuctura básica del Site.</p>
<p>Si queréis más información podéis encontrarla siguiendo <a title="Tour Yii" href="http://www.yiiframework.com/tour/">el tour de la propia página del framweork</a>.</p>
<p><a href="http://www.uyperdon.com/2011/12/yii-1-generando-una-web-sin-programacion/">Yii 1: Generando una web sin Programación</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.uyperdon.com/2011/12/yii-1-generando-una-web-sin-programacion/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Mi inmersión en la mejora de la productividad a través de Gtd</title>
		<link>http://www.uyperdon.com/2011/11/mi-inmersion-en-la-mejora-de-la-productividad-a-traves-de-gtd/</link>
		<comments>http://www.uyperdon.com/2011/11/mi-inmersion-en-la-mejora-de-la-productividad-a-traves-de-gtd/#comments</comments>
		<pubDate>Sat, 26 Nov 2011 23:48:00 +0000</pubDate>
		<dc:creator>Exdeus</dc:creator>
				<category><![CDATA[Miscelánea]]></category>
		<category><![CDATA[Gtd]]></category>
		<category><![CDATA[productividad]]></category>

		<guid isPermaLink="false">http://www.uyperdon.com/2011/11/mi-inmersion-en-la-mejora-de-la-productividad-a-traves-de-gtd/</guid>
		<description><![CDATA[Hacía tiempo que tenía abandonado el blog -9 meses en realidad- pero hace un par de semanas llegó a mis manos un ejemplar libre en pdf muy interesante. Gracias a él una de mis acciones a realizar semanalmente ser´al publicación de un post para poder mantener vivo este sitio. El documento que llegó a mis [...]<p><a href="http://www.uyperdon.com/2011/11/mi-inmersion-en-la-mejora-de-la-productividad-a-traves-de-gtd/">Mi inmersión en la mejora de la productividad a través de Gtd</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Hacía tiempo que tenía abandonado el blog -9 meses en realidad- pero hace un par de semanas llegó a mis manos un <a title="Gdt para dummies" href="http://elgachupas.com/gtd-para-dummies" target="_blank">ejemplar libre en pdf</a> muy interesante. Gracias a él una de mis acciones a realizar semanalmente ser´al publicación de un post para poder mantener vivo este sitio.</p>
<p>El documento que llegó a mis manos intenta de una manera practica y ordenada mejorar la productividad en todas las facetas de nuestra vida.<a title="Gtd" href="http://elgachupas.com/gtd-para-dummies"> Gdt para dummies</a> es una versión resumida y amena de Get things done. Una serie de pautas de trabajo que se asemejan a lo que hacía anteriormente sin método.</p>
<p>Yo llegaba al trabajo, revisaba lo que quedaba pendiente del día anterior, listaba lo que faltaba y programaba mi día. Mi problema -que veo ahora tras leer Gdt para dummies &#8211; es que tenía control a corto plazo pero nada más. Las cosas tendían a acumularse sin un control a medio / largo plazo.</p>
<p>Pues bien, en mejora de mi rudo método, empecé adoptando la que me pareció una premisa importante: <strong>todo aquello que no está en nuestra mente puede llegar a olvidarse y ni ser controlado </strong>.</p>
<p><strong>1-. Apuntarlo todo</strong><br />
¿Qué quiere decir esto? Sencillo. Durante todo el día recibimos inputs de una cantidad inmensa de cosas. El truco es simplemente apuntarlas. Una sola excepción <strong>si lo que hay que hacer tardaremos menos de dos minutos en hacerlo hagamoslo</strong>, esto no es necesario apuntarlo.</p>
<p>Con esto solo no bastará pero es el principio de un camino que he empezado a seguir. Espero que la constancia me lleve a mejorar en varios aspectos.</p>
<p><strong>2-. Procesar lo apuntado </strong><br />
Todo lo que vayamos apuntando <strong><em>debe ir</em></strong> a lo que se llama las <strong>bandejas de entrada</strong> es decir un lugar en el que sepamos que siempre vamos a mirar y en el que luego podremos acabar de planificar cuándo y cómo lo vamos a hacer.</p>
<p>En realidad partimos de la base que todo lo que hacemos no son más que <strong>acciones</strong> y estas son las que deberemos abordar tarde o temprano.</p>
<p>En realidad he resumido muchísimo las bases de lo que me parece un fantástico método que desde de hace ya dos semanas me hace sentirme menos agobiado, estresado y con una sensación de control que no había tenido hasta ahora. Con la lectura de <a title="Gdt para dummies" href="http://elgachupas.com/gtd-para-dummies" target="_blank">Gtd para dummies</a> y la ayuda de <a title="Jero" href="http://elgachupas.com/quien-soy" target="_blank">Jero Sánchez</a> a tras de <a title="El Gachupas" href="http://elgachupas.com" target="_blank">el gachupas</a> espero poder transmitir los avances que realice en <a title="GTD" href="http://es.wikipedia.org/wiki/Getting_Things_Done" target="_blank">Gtd de David Allen</a> y poder, si es posible acercarlo a toda le gente que me sea posible.</p>
<p><a href="http://www.uyperdon.com/2011/11/mi-inmersion-en-la-mejora-de-la-productividad-a-traves-de-gtd/">Mi inmersión en la mejora de la productividad a través de Gtd</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.uyperdon.com/2011/11/mi-inmersion-en-la-mejora-de-la-productividad-a-traves-de-gtd/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Diem Project Día 2.2 (Formulario de Contacto)</title>
		<link>http://www.uyperdon.com/2011/02/diem-project-dia-2-2-formulario-de-contacto/</link>
		<comments>http://www.uyperdon.com/2011/02/diem-project-dia-2-2-formulario-de-contacto/#comments</comments>
		<pubDate>Fri, 11 Feb 2011 17:52:18 +0000</pubDate>
		<dc:creator>Exdeus</dc:creator>
				<category><![CDATA[Miscelánea]]></category>

		<guid isPermaLink="false">http://www.uyperdon.com/?p=642</guid>
		<description><![CDATA[Modificando la página de contacto Tras seguir los pasos para crear una pagina &#8220;Contacto&#8221;. Declaramos una nueva vista css en apps/front/config/view.yml. Si no recordáis como hacer una página nueva podéis revisar los entregables anteriores. También hemos de añadir el widget que hemos incluido de contacto en el tutorial anterior. Y por último declaramos la nueva [...]<p><a href="http://www.uyperdon.com/2011/02/diem-project-dia-2-2-formulario-de-contacto/">Diem Project Día 2.2 (Formulario de Contacto)</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></description>
			<content:encoded><![CDATA[<h3><span style="color: #888888;">Modificando la página de contacto</span></h3>
<p>Tras seguir los <a href="http://www.uyperdon.com/2011/02/diem-project-dia-3-widgets/" target="_self">pasos para crear una pagina &#8220;Contacto&#8221;</a>. Declaramos una nueva vista css en apps/front/config/view.yml. Si no recordáis como hacer una página nueva podéis revisar los entregables anteriores. También hemos de añadir el widget que hemos incluido de contacto en el tutorial anterior. Y por último declaramos la nueva vista para la página creada:</p>

<div class="wp_syntax"><div class="code"><pre class="language" style="font-family:monospace;">stylesheets:
- layout
- typography
- navigation
- markdown
- form</pre></div></div>

<p>Y declaramos la css guardándola en web/themeCoolWater/css/form.css:</p>

<div class="wp_syntax"><div class="code"><pre class="language" style="font-family:monospace;">/* all forms */
label {
display:block;
font-weight:bold;
margin: 7px 0;
}
input {
padding:3px;
border: 1px solid #E5F0FB;
font: normal 1em Verdana, sans-serif;
color:#777;
}
textarea {
width:400px;
padding:3px;
font: normal 1em Verdana, sans-serif;
border: 1px solid #E5F0FB;
height:100px;
display:block;
color:#777;
}
input.submit {
font: bold 12px Arial, Sans-serif;
height: 28px;
margin: 0;
padding: 2px 3px;
color: #fff;
background: #306bc1 url(../images/button-bg.jpg) repeat-x 0 0;
border: 1px solid #306bc1;
cursor: pointer;
}
&nbsp;
/* content forms */
#dm_content form {
padding: 10px;
border: 1px solid #E5F0FB;
background: #F4F8FD;
}
&nbsp;
#dm_content form .submit_wrap {
margin-top: 15px;
}
&nbsp;
#dm_content .error_list,
#dm_content .error_list li {
display: inline;
color: red;
padding: 0;
}
&nbsp;
#dm_content .has_error {
border-color: red;
}
&nbsp;
#dm_content .form_valid {
margin: 10px 50px;
padding: 10px 0 10px 45px;
font: bold 1.3em/1.5em &quot;Trebuchet MS&quot;, Tahoma, arial, Sans-serif;
color: #2361BA;
border: 1px solid #E5F0FB;
background: #F4F8FD url(../images/quote.jpg) no-repeat 8px 6px;
}</pre></div></div>

<p>Tendremos la página de contacto hecha y podremos ver en la parte de administración los mensajes enviados desde Contenido/Contacto:</p>
<p style="text-align: center;"><img class="aligncenter" title="Contacto" src="http://diem-project.org/uploads/diem-ipsum/contact_list.png" alt="" width="585" height="143" /></p>
<h3><span style="color: #888888;">Creación de Sistema Blog</span></h3>
<p>Hasta aquí hemos aprendido bastante y llega una de las partes que más me entretiene. Si hemos de crear un contenido administrable muchas veces se ha de programar manualmente todo el mantenimiento (Alta / Modificación / Eliminación). Vamos a implementar un sistema de Blog que nos generará todo el mantenimiento de nuestros artículos.</p>
<p>En primer lugar modificaremos el archivo config/doctrine/schema.yml para declarar nuestro modelo:</p>

<div class="wp_syntax"><div class="code"><pre class="language" style="font-family:monospace;">Article:
actAs:
DmSortable:
I18n:
fields:         [ title, extract, body, is_active ]
actAs:
Timestampable:
DmVersionable:
columns:
title:            { type: string(120), notnull: true }
extract:          { type: string(2000), notnull: true }
body:             { type: clob, extra: markdown }
image:            { type: integer }
author:           { type: integer, notnull: true }
is_active:        { type: boolean, notnull: true, default: false }
relations:
Image:
class:          DmMedia
local:          image
foreignAlias:   Articles
Author:
class: DmUser
local: author
foreignAlias:   Articles</pre></div></div>

<p>Podéis encontrar la explicación a lo que implementamos<a href="http://diem-project.org/diem-5-1/doc/en/a-week-of-diem-ipsum/5-build-a-blog-engine" target="_blank"> aquí</a>. Como hemos modificado el modelo de datos (los datos de la BBDD) deberemos volver a ejecutar la comparación y creación de tablas:</p>
<p><code>php symfony doctrine:generate-migrations-diff<br />
php symfony doctrine:migrate<br />
php symfony dm:setup</code></p>
<p>Ejecutando los 3 comandos anteriores hemos creado el modelo en lib/model/doctrine/Article.class.php, el formulario en lib/form/doctrine/ArticleForm.class.php y tabla artículos en la BBDD.</p>
<p>Modificaremos el archivo config/dm/modules.yml para el modelo:</p>

<div class="wp_syntax"><div class="code"><pre class="language" style="font-family:monospace;">Content:
&nbsp;
Global:
&nbsp;
main:
components:
header:
footer:
&nbsp;
Blog:
&nbsp;
article:</pre></div></div>

<p>Y generaremos la interficie administrativa:</p>
<p><code>php symfony dm:setup</code></p>
<p>Si vamos a apps/admin/modules/article podremos ver que se ha generado un nuevo módulo de administración, apps/admin/modules/article. Ahora ya podemos editar nuestros artículos desde Contenido/Blog/ Artículos</p>
<p><img class="aligncenter" title="Adminstraciónde Artículos" src="http://diem-project.org/uploads/diem-ipsum/admin_content_article_link.png" alt="" width="398" height="147" /></p>
<p>En breve prepararemos la parte vista de nuestros artículos.</p>
<p><a href="http://www.uyperdon.com/2011/02/diem-project-dia-2-2-formulario-de-contacto/">Diem Project Día 2.2 (Formulario de Contacto)</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.uyperdon.com/2011/02/diem-project-dia-2-2-formulario-de-contacto/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Diem Project Día 3 (Widgets)</title>
		<link>http://www.uyperdon.com/2011/02/diem-project-dia-3-widgets/</link>
		<comments>http://www.uyperdon.com/2011/02/diem-project-dia-3-widgets/#comments</comments>
		<pubDate>Fri, 11 Feb 2011 16:10:09 +0000</pubDate>
		<dc:creator>Exdeus</dc:creator>
				<category><![CDATA[Miscelánea]]></category>

		<guid isPermaLink="false">http://www.uyperdon.com/?p=631</guid>
		<description><![CDATA[Continuar el cuarto día ha sido una tarea un poco dificil. Para realizar los siguientes puntos he dedicado más tiempo del deseado: Instalación de Plugins (widget) Instalación de Tweets externos Creación de Página de contacto Instalación de Plugins (widget) El problema más grande ha sido el de descargar el widget del tutorial que resulta se [...]<p><a href="http://www.uyperdon.com/2011/02/diem-project-dia-3-widgets/">Diem Project Día 3 (Widgets)</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Continuar el cuarto día ha sido una tarea un poco dificil. Para realizar los siguientes puntos he dedicado más tiempo del deseado:</p>
<ol>
<li>Instalación de Plugins (widget)</li>
<li>Instalación de Tweets externos</li>
<li>Creación de Página de contacto</li>
</ol>
<h3><span style="color: #888888;">Instalación de Plugins (widget)</span></h3>
<p>El problema más grande ha sido el de descargar el widget del tutorial que resulta se el WidgetForm y no el de twitter. Tras descargar el formato tar resulta que también es incorrecto. Por último decidí descargar el formato zip y entonces no hubo errores. Ahora que tengo el plugin&#8230; ¿qué hago?</p>
<p>Modifico las líneas de config/ProjectConfiguration.class.php:</p>

<div class="wp_syntax"><div class="code"><pre class="language" style="font-family:monospace;">    $this-&amp;gt;enablePlugins(array(
      // add plugins you want to enable here
	  'dmWidgetTwitterPlugin' ,
    ));</pre></div></div>

<p>¿Y ahora? solo se habla de la instalación mediante git. Así que recordando temas de symfony se copia la carpeta resultante de la descompresión del zip (cambiandole el nombre a &#8220;dmWidgetTwitterPlugin&#8221;) dentro de la carpeta plugin de nuestro proyecto y ejecutamos las siguientes líneas en la línea de comando:<br />
<code><br />
c:\ symfony plugin:publish-assets<br />
c:\ php symfony cc<br />
</code></p>
<p style="text-align: center;"><img class="aligncenter" title="Tweet instalado" src="http://diem-project.org/uploads/diem-ipsum/homepage.png" alt="" width="628" height="362" /></p>
<h3><span style="color: #888888;">Instalación de Tweets externos</span></h3>
<p>Ahora ya podemos acceder mediante el símbolo más de la parte inferior al widget de twitter. Mencionar que para que funcione tenemos que tener la extensión curl activada si no se tiene lanza un error: &#8220;<span style="color: #ff0000;">[dmWidgetTwitter/search] : Curl PHP support must be enabled in order to use the TwitterApiServer class. Check the curl php manual there: http://us.php.net/curl</span>&#8221; y tendremos que ir al archivo php.ini y descomentar la ínea que aparece como ;extension=php_curl.dll (quitarle el <img src='http://www.uyperdon.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> .</p>
<h3><span style="color: #888888;">Creación de Página de contacto</span></h3>
<p>Tras la odisea de instalación de plugin anterior el segundo ha sido mucho más sencillo. Para evitar sorpresas he descargado automáticamente el zip. Cambiamos el nombre por &#8220;dmContactPlugin&#8221; y realizamos los mismos pasos anteriores.Sin embargo, a diferencia del plugin tweeter el de contacto posee inserciones en BBDD así que ejecutamos:<br />
<code><br />
php symfony doctrine:generate-migrations-diff<br />
php symfony doctrine:migrate<br />
php symfony dm:setup<br />
php symfony cc<br />
</code><br />
De esta forma generamos automáticamente models, forms y filters. Mañana, aunque forma parte del mismo <a href="http://diem-project.org/diem-5-1/doc/en/a-week-of-diem-ipsum/4-using-diem-plugins">tutoria</a>l, <a href="http://www.uyperdon.com/2011/02/diem-project-dia-2-2-formulario-de-contacto/" target="_self">crearemos y daremos forma al formulario</a>.</p>
<p><a href="http://www.uyperdon.com/2011/02/diem-project-dia-3-widgets/">Diem Project Día 3 (Widgets)</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.uyperdon.com/2011/02/diem-project-dia-3-widgets/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Estreno Tron Legacy</title>
		<link>http://www.uyperdon.com/2010/11/estreno-tron-legacy/</link>
		<comments>http://www.uyperdon.com/2010/11/estreno-tron-legacy/#comments</comments>
		<pubDate>Fri, 26 Nov 2010 11:15:10 +0000</pubDate>
		<dc:creator>Exdeus</dc:creator>
				<category><![CDATA[Miscelánea]]></category>

		<guid isPermaLink="false">http://www.uyperdon.com/?p=542</guid>
		<description><![CDATA[La primera vez que la vi con tan solo 7 años salí hipnotizado. No sabía lo que era una RAM o un ROM pero me había sumergido durante 82 minutos (casualidad o no los mismos que la fecha de su esterno en 1982) en una historia increible. Desde entonces los ordenadores no fueron lo mismo. [...]<p><a href="http://www.uyperdon.com/2010/11/estreno-tron-legacy/">Estreno Tron Legacy</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></description>
			<content:encoded><![CDATA[<p>La primera vez que la vi con tan solo 7 años salí hipnotizado. No sabía lo que era una RAM o un ROM pero me había sumergido durante 82 minutos (casualidad o no los mismos que la fecha de su esterno en 1982) en una historia increible. Desde entonces los ordenadores no fueron lo mismo. Estoy hablando de <a href="http://es.wikipedia.org/wiki/Tron" target="_blank">Tron </a>claro.</p>
<p>Ahora llega <a href="http://www.klownsasesinos.com/peliculas/t/1552-tron-legacy-2010.html" target="_blank">Tron Legacy</a> y la ansiedad me corroe. Dirigida por Joseph Kosinski y con Jeff Bridges de nuevoserá una continuación del original. El mundo ficticio de los ordenadores, las luchas entre los programas para obtener la supremacía. Sin embargo será el hijo del protagonista en la primera película Sam Flynn (hijo de Kevin Flynn) el que entrará en el universo para averiguar qué le sucedió a su padre.</p>
<p>Solo queda esperar, si no hay más demoras, al 17 de diciembre del 2010.</p>
<p><a href="http://www.buscatube.com/videos-1/tron-legacy/vq7X3NR4f84?daft-punk-tron-legacy-theme-%28original-extract-hq%29" target="_blank">Trailers, vídeos y teasers </a></p>
<p><a href="http://www.uyperdon.com/2010/11/estreno-tron-legacy/">Estreno Tron Legacy</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.uyperdon.com/2010/11/estreno-tron-legacy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Menu interactivo estilo flash pero hecho con xhtml, css y javascript</title>
		<link>http://www.uyperdon.com/2010/11/menu-interactivo-estilo-flash-pero-hecho-con-xhtml-css-y-javascript/</link>
		<comments>http://www.uyperdon.com/2010/11/menu-interactivo-estilo-flash-pero-hecho-con-xhtml-css-y-javascript/#comments</comments>
		<pubDate>Tue, 23 Nov 2010 18:03:34 +0000</pubDate>
		<dc:creator>Exdeus</dc:creator>
				<category><![CDATA[Css]]></category>
		<category><![CDATA[Miscelánea]]></category>
		<category><![CDATA[Recursos]]></category>
		<category><![CDATA[menu interactivo sin flash]]></category>
		<category><![CDATA[xhtml]]></category>

		<guid isPermaLink="false">http://www.uyperdon.com/?p=501</guid>
		<description><![CDATA[Encontré esta manera sencilla de crear un menú interactivo mediante xhtml, css y javascript. En randallnet podríes encontrarlo (aunque pongo el enlace un poco más abajo). Puede que no sea tan llamativo como un flash pero posicionará mejor y es visualmente muy atractivo. Enlace Menu interactivo estilo flash pero hecho con xhtml, css y javascript [...]<p><a href="http://www.uyperdon.com/2010/11/menu-interactivo-estilo-flash-pero-hecho-con-xhtml-css-y-javascript/">Menu interactivo estilo flash pero hecho con xhtml, css y javascript</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Encontré esta manera sencilla de crear un menú interactivo mediante xhtml, css y javascript. En <a href="http://www.randallwebdeveloper.com/" target="_blank">randallnet</a> podríes encontrarlo (aunque pongo el enlace un poco más abajo). Puede que no sea tan llamativo como un flash pero posicionará mejor y es visualmente muy atractivo.</p>
<p><a title="Randall" href="http://www.randallwebdeveloper.com/2009/01/16/menu-interactivo-estilo-flash-pero-hecho-con-xhtml-css-y-javascript" target="_blank">Enlace</a></p>
<p><a href="http://www.uyperdon.com/2010/11/menu-interactivo-estilo-flash-pero-hecho-con-xhtml-css-y-javascript/">Menu interactivo estilo flash pero hecho con xhtml, css y javascript</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.uyperdon.com/2010/11/menu-interactivo-estilo-flash-pero-hecho-con-xhtml-css-y-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ocultar correo y evitar spam</title>
		<link>http://www.uyperdon.com/2010/11/ocultar-correo-y-evitar-spam/</link>
		<comments>http://www.uyperdon.com/2010/11/ocultar-correo-y-evitar-spam/#comments</comments>
		<pubDate>Tue, 23 Nov 2010 17:58:11 +0000</pubDate>
		<dc:creator>Exdeus</dc:creator>
				<category><![CDATA[Miscelánea]]></category>
		<category><![CDATA[Recursos]]></category>
		<category><![CDATA[Scripts]]></category>
		<category><![CDATA[evitar spam]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[ocultar correo]]></category>

		<guid isPermaLink="false">http://www.uyperdon.com/?p=522</guid>
		<description><![CDATA[Los robots spam van pasando por todos los archivos de nuestra programación para encontrar correos a los que dirigir sus oleadas de envío. Para poder evitar en la mayor medida posible este hecho siempre intento que la dirección de correo no aparezca en los formularios. Si el spammer es &#8220;listo&#8221; podrá ejecutar nuestro pequeño código [...]<p><a href="http://www.uyperdon.com/2010/11/ocultar-correo-y-evitar-spam/">Ocultar correo y evitar spam</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Los robots spam van pasando por todos los archivos de nuestra programación para encontrar correos a los que dirigir sus oleadas de envío. Para poder evitar en la mayor medida posible este hecho siempre intento que la dirección de correo no aparezca en los formularios. Si el spammer es &#8220;listo&#8221; podrá ejecutar nuestro pequeño código javascript pero al menos tendremos mímimamente oculta la dirección.</p>
<p>En primer lugar colocamos en el header de la / las páginas nuestro script:</p>

<div class="wp_syntax"><div class="code"><pre class="language" style="font-family:monospace;">&lt;script language=&quot;JavaScript&quot;&gt;
	usuario=&quot;uyperdon&quot;
	dominio=&quot;uyperdon.com&quot;
	conector=&quot;@&quot;
&nbsp;
	function direccion_correo(){
	   return usuario + conector + dominio
	}
&nbsp;
	function escribir_enlace_correo(){
	   document.write(&quot;&lt;a href='mailto:&quot; + dame_correo() + &quot;'&gt;&quot; 
           + dame_correo() + &quot;&lt;/a&gt;&quot;)
	}
&lt;/script&gt;</pre></div></div>

<p>Lo único que debemos hacer para mostrar la dirección es poner este otro código dentro del html:</p>

<div class="wp_syntax"><div class="code"><pre class="language" style="font-family:monospace;">&lt;script&gt;escribir_enlace_correo()&lt;/script&gt;</pre></div></div>

<p>Así nuestras direcciones estarán un poco más &#8220;ocultas&#8221;.</p>
<p><a href="http://www.uyperdon.com/2010/11/ocultar-correo-y-evitar-spam/">Ocultar correo y evitar spam</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.uyperdon.com/2010/11/ocultar-correo-y-evitar-spam/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Reinstalar Xp Acer Aspire One</title>
		<link>http://www.uyperdon.com/2010/09/reinstalar-xp-acer-aspire-one/</link>
		<comments>http://www.uyperdon.com/2010/09/reinstalar-xp-acer-aspire-one/#comments</comments>
		<pubDate>Thu, 23 Sep 2010 22:27:49 +0000</pubDate>
		<dc:creator>Exdeus</dc:creator>
				<category><![CDATA[Miscelánea]]></category>
		<category><![CDATA[acer]]></category>
		<category><![CDATA[aspire]]></category>
		<category><![CDATA[instalacion xp]]></category>

		<guid isPermaLink="false">http://www.uyperdon.com/?p=511</guid>
		<description><![CDATA[Tras el post de arranque con los errores de la Bios del Ace Aspire One existe también una manera sencilla de reinstalar nuestros sistemas operativos. Mi pequeño notepad venía ya con un Windows XP home instalado. Sin embargo Acer n especificaba que combinación de teclas tenía que pulsar para restaurar o realizar una nueva instalación [...]<p><a href="http://www.uyperdon.com/2010/09/reinstalar-xp-acer-aspire-one/">Reinstalar Xp Acer Aspire One</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Tras el <a href="http://www.uyperdon.com/2009/10/aspire-one-no-arranca/">post de arranque con los errores de la Bios</a> del Ace Aspire One existe también una manera sencilla de reinstalar nuestros sistemas operativos. Mi pequeño notepad venía ya con un Windows XP home instalado. Sin embargo Acer n especificaba que combinación de teclas tenía que pulsar para restaurar o realizar una nueva instalación del sistema, algo que suelo hacer regularmente cada año. </p>
<p>Para restaurar el sistema operativo tal y como viene de fábrica solo hay que reiniciar el equipo y pulsar ALT + F10. Tras esta operación hay que seguir los pasos indicados y tendremos el Laptop tal y como lo desembalamos sin tener que instalar desde pendrives o una Unidad externa.</p>
<p><a href="http://www.uyperdon.com/2010/09/reinstalar-xp-acer-aspire-one/">Reinstalar Xp Acer Aspire One</a> is a post from: <a href="http://www.uyperdon.com">Uy perdon</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.uyperdon.com/2010/09/reinstalar-xp-acer-aspire-one/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

