20 tips para desarrollar sitios de alto tráfico con Wordpress

6 de Octubre de 2009 — Darío Ferrer

En más de una ocasión nos hemos preguntado si es posible utilizar un CMS para portales de alto tráfico. Al menos con Wordpress la respuesta es , pero ni por un segundo pienses que el asunto es tan sencillo como instalarlo.

Desarrollar un sitio de alto tráfico requiere de mayor nivel de conocimientos en programación y diseño que cualquier otro proyecto, pues la prioridad se enfoca en un principio simple: lograr más cosas con menos código. Wordpress posee una arquitectura impresionantemente ágil, pero aún así debes tener en cuenta de que se trata de un software construido para uso general, por lo cual es necesario que conozcas el software de cabo a rabo y planifiques tu trabajo de manera muy cuidadosa.

Trabajar con sitios de alto tráfico equivale a viajar en un globo. Imagínate que -dentro del globo en pleno vuelo- de repente encuentras un peso extra que debes transportar y resulta imprescindible (tráfico de usuarios). La acción a tomar sería, entonces, salir de toda carga innecesaria (código malo, archivos pesados, carga dinámica, consultas excesivas a la base de datos) para compensar el peso que tu globo (servidor) puede soportar, y con ello transportar la carga importante a buen término.

¿Cuál es la ventaja de utilizar Wordpress en lugar de un desarrollo desde cero?

Principalmente Wordpress viene solucionando un problema bastante común existente en los desarrollos propios: el entorno administrativo. Funciones, opciones para el usuario, interfaz, sistemas de edición, etc. es la parte que más “come” presupuesto y con Wordpress la tenemos ya “hechita”, cocinada y lista para servir. Esto significa que, por un lado, nuestros clientes se ahorrarán una bola de billete y, por el otro, nosotros como desarrolladores ahorramos un tiempo precioso, dos elementos que nos colocan en una posición muy competitiva a la hora de licitar o proponer un proyecto de alta exigencia.

La otra ventaja es que la documentación de este software está plenamente disponible de forma libre y gratuita para cualquiera, lo que se traduce como una liberación de la dependencia cliente-proveedor y el asunto del soporte se nos hace más liviano. En otras palabras, tendrás más tiempo para salir a la playa con tu novia, esposa, novio, “sí pero no”, marinovio, retruque, pegoste, “peor es nada” o cualquier forma de vida mono o pluricelular que tenga los suficientes cojones de salir contigo (en mi caso hay que tenerlas de acero).

Los 20 tips

Entrando en materia, es necesario advertir que los siguientes 20 tips tocan puntos directamente relacionados con el desarrollo de una web, tales como la programación, el diseño y el entorno Wordpress. Otros temas como SEO, seguridad, etc. no fueron abordados, pues la temática específica que ahora nos llama consiste en lograr desarrollar sitios que se mantengan ligeros y funcionales, indiferentemente de la cantidad de usuarios que lo visiten. A continuación la lista:

BÁSICO

1) Si no eres experto contrata uno

construir-super-portales-wordpress-1Este primer tip no sólo sirve como abrebocas para el resto sino que realmente da lugar a la primera pregunta que debes hacerte a la hora de asumir la construcción de un proyecto grande: “¿Soy un experto en programación o diseño/maquetación web?”. Si no cuentas con un dominio de alto nivel en estas disciplinas, subcontrata al mejor profesional que puedas encontrar o, mejor aún, házte de un equipo “élite” para asumir el proyecto en conjunto y bajo tu coordinación.

Este punto es importante. Hasta la fecha he visto demasiados ilusos que se encargan de proyectos cuyo techo de exigencia se encuentra absolutamente fuera de su radio de acción y al final terminan jodiendo a su cliente y -por supuesto- desprestigiados. Suficientes riesgos tenemos con la misma naturaleza del proyecto como para agregar más peligros a lo que ahora se encuentra bajo nuestra responsabilidad. La Regla: Si no dominas una materia de la A a la Z, busca a alguien que lo haga por ti y págale de acuerdo a su nivel.

Regresar a la lista de tips

2) Elige el servicio de hosting adecuado

construir-super-portales-wordpress-1Debes primero aprender a identificar objetivamente los requerimientos de tu sitio en materia de hosting. Esto te ayudará a encontrar el proveedor adecuado a tus necesidades. Algunos piensan que el hecho de contar con un servidor dedicado o VPS soluciona sus problemas. Ciertamente un dedicado ofrece mejores prestaciones que un VPS o compartido, pero en este campo debes ir con ojo avizor, pues un proyecto web de envergadura necesita, ante todo, un servicio fiable que te ofrezca múltiples soluciones y reduzca al mínimo los riesgos de problemas.

Como primera opción te recomendaría buscar servicios con datacenter propios. Este mundo está colmado de los llamados “resellers”, quienes te ofrecen servidores que a su vez han contratado con el proveedor directo. A la hora de un inconveniente, éstos dependen de la respuesta de su proveedor para poder responderte, encasillando así el problema en un proceso burocrático cuyo mayor afectado será tu proyecto.

Por supuesto lo anterior no tiene por qué ser una regla fija. Conozco resellers de muy alto nivel que tienen a disposición un cúmulo de recursos para solucionar cualquier eventualidad de forma rápida y eficaz, algunas veces más rápido que los propios proveedores directos, ya que dichos resellers trabajan con múltiples proveedores y conocen muy bien su área. De este grupo puedo recomendarte a Interalta y Minerva Hosting -entre otros-. Pero como -mencioné- esta clase de super-resellers no abunda, así que anda con cuidado en este terreno.

La Regla: Tómate tu buen tiempo para elegir un buen proveedor de hosting, evalúa su nivel de sevicios y compromiso con el cliente, comunícate previamente con ellos las veces que desees, expón las necesidades de tu proyectos y luego elige al más adecuado. En cuanto a los costos, quedará de ti decidir si deseas calidad o precios bajos. No todo lo caro es bueno, pero lo bueno no es barato. Si quieres calidad tendrás que pagarla pero créeme, un buen proveedor vale cada centavo. Es preferible pagar unos billetes de más que un dominio caído constantemente.

Para comenzar, puedes revisar las referencias al final sobre comunidades de usuarios de hosting, donde se desarrollan discusiones interesantes y productivas que podrían orientarte a una mejor elección final de tu proveedor.

Regresar a la lista de tips

ENTORNO WORDPRESS

3) Bajo ningún concepto toques los archivos del núcleo

construir-super-portales-wordpress-1Házte ese gran favor. No es necesario modificar funciones nativas de Wordpress. La Regla: Si no enuncias funciones no se ejecutan, y si no existen créalas. Wordpress te ofrece 2 vías principales para hacerte la vida más fácil en tal sentido: el entorno de la plantilla y el sistema de plugins. Puedes crear nuevas funciones, mezclarlas con las preexistentes y hacer que Wordpress las reconozca como si las hubiese parido. Si te encuentras en algún cuello de botella documéntate y verás que siempre existen métodos y procedimientos para cualquier caso sin que tengas necesidad de echar mano al core. Además -y esto es de lo más importante- la hora de actualizar el software, sólo será cuestión de subir y sobrescribir sin que te tiemble el pulso.

Regresar a la lista de tips

4) Wordpress es una masa moldeable, no un CMS que te limita

construir-super-portales-wordpress-1No mires a Wordpress como un Joomla o un Drupal (con el perdón de los joomleros y drupaleros pero es la verdad) sino como una especie de framework que puedes moldear y adaptar a tu completo gusto. A diferencia de los anteriores, Wordpress no te limita con módulos, contenido HTML indeseado o estructuras totémicas que exigen tu resignación, sino que -por el contrario- se trata de un sistema que te ofrece total libertad para hacer lo que te plazca.

Veámoslo de esta forma: un software web trabaja en función a los datos, se introduce información que luego debe ser devuelta. Wordpress sencillamente hace eso, sin maquillajes ni accesorios. Queda entonces de ti elegir la forma y lugar en la cual esos datos se muestren en la interfaz.

Wordpress no es un CMS complaciente. Hasta los inexpertos deben meterse un poco con el código para personalizar elementos que -por ejemplo- con Joomla lo tendrían totalmente automatizado, pero pagando como precio la ejecución de innumerables procesos extra para lograr que soluciones tu problema con un cómodo clic, y ejecutando otro montón de procesos para mostrarlo en la interfaz, haciendo de esta aplicación (y por favor joomleros discúlpenme de nuevo) una opción totalmente descartada para un sitio de alto tráfico. Comprendido este punto no te será difícil seguir la Regla: Wordpress es una masa moldeable y debes verlo como tal.

Regresar a la lista de tips

PROGRAMACIÓN

5) Modela tus tablas de la base de datos de manera acorde con la realidad del sitio

construir-super-portales-wordpress-1Existe un mito entre webmasters que debería ser roto desde este momento: “mientras la base de datos (BD) se mantenga íntegra, la velocidad del sistema se conservará rápida”. Esto es falso -al menos en el tema que estamos abordando- y antes de explicar comenzaré con la Regla: Los sistemas no se ralentizan por la existencia de muchas tablas, sino por la presencia de muchos registros en una sola tabla. Dicho principio es ampliamente conocido, respetado y elemental entre los modeladores de bases de datos.

Para los desarrolladores de plugins, Wordpress ofrece principalmente dos tablas nativas esenciales a la hora de introducir datos de configuraciones:

  • wpdb->options
  • wpdb->postmeta

La parte cómoda de usar estados tablas es que puedes echar mano a los llamados hooks y ahorrarte bastante tiempo de codificación. Por ejemplo, para gestionar datos en la tabla wpdb->options sólo tienes que echar mano a:

  • add_options() para añadir
  • update_options() para actualizar
  • delete_options() para borrar

Con los hooks te ahorras la tarea de construir consultas una y otra vez, ya que la sola enunciación de funciones activa el motor de consultas de Wordpress de forma impresionante. Ahora bien, estas maravillosas funciones podrían ser tus peores enemigas dependiendo de la naturaleza de tu proyecto, pues si las empleas de forma inconveniente te exigirán una gran cantidad de consultas por usuario.

Pongamos un ejemplo común para lo anterior: tablas o índices informativos donde cada dato es consultado en tiempo real. Recordemos que de forma nativa Wordpress te ofrece wpdb->postmeta para introducir datos directo desde tu editor (puedes ver el formulario con el nombre de Campos Personalizados). Pero al mismo tiempo sucede que según tus cálculos predices que se ingresarán 10.000 registros dinámicos mensuales que no pueden ser cacheados porque se necesitan en tiempo real (por ejemplo una tabla de programación para una red televisiva) ¿Qué harás, meter todos esos datos en el humilde wpdb->postmeta?.

Una solución podría ser construir nuevas tablas/campos y darle así oxígeno a tu base de datos, permitiéndole una rápida localización y lectura de éstos y, al mismo tiempo, devolviéndolos de manera rápida y fiable a un gran número de visitantes simultáneos.

Procura entonces seguir la Regla: Planifica la estructura de tus datos de manera que tu BD pueda devolver las consultas de forma más rápida y desahogada.

Regresar a la lista de tips

6) Averigua hasta qué punto los recursos nativos disponibles representan una solución o un obstáculo

construir-super-portales-wordpress-1Si eres desarrollador y miras el conjunto de funciones o etiquetas que Wordpress te ofrece, seguro babearás de placer a la primera. Sin embargo, a la hora de desarrollar un sitio de alto tráfico debes averiguar qué involucra cada función, al menos las más usadas. Algunas veces Wordpress necesita cargar procesos que podrías obviar haciéndote tus propias funciones. Por ejemplo, en algunas ocasiones se carga el motor de expresiones regulares (regexp) en zonas que realmente no se necesita. Queda de ti entonces seguir la Regla: Investiga cómo operan las funciones de Wordpress y qué necesitan para ejecutarse.

Regresar a la lista de tips

7) No confíes en los plugins. Aprende a construirlos y adaptar los disponibles

construir-super-portales-wordpress-1Al aprender a construir plugins se nos abre una nueva puerta de opciones que -entre otras cosas- incluyen una noticia decepcionante: descubrimos que la gran mayoría de éstos no nos servirá de mucho para proyectos grandes, pues obviamente el desarrollador no pensó en nuestra situación específica a la hora de construirlos (en el mejor de los casos, cuando efectivamente no se trata de un mal programador).

Plugins maravillosos podrían echarnos la partida para atrás ¿Quién no se cautiva al instante con las impresionantes funciones NextGen Gallery o Cforms II sin siquiera saber que son un par de dinosaurios tragadores de recursos?.

Ahora bien, existen dos tipos de plugins: los que actúan en la interfaz administrativa y los que actúan en la interfaz de usuario. Por ejemplo, Scissors es un plugin que opera sólo en el entorno administrativo; con éste puedes editar tus imágenes, darles una marca de agua, etc. para posteriormente guardar los cambios y mostrarla al usuario normalmente. Como Scissors no opera en el frontend puedes usarlo con los ojos cerrados, ya que los recursos para el administrador son prácticamente nulos en comparación con los requeridos para los visitantes del sitio. La Regla: programa tus propios plugins o adapta productivamente los que uses.

Regresar a la lista de tips

8) Balancea la carga dinámica

construir-super-portales-wordpress-1No todo necesita de un query, incluso los datos dinámicos. PHP posee innumerables soluciones que te permitirán quitarle trabajo innecesario a la base de datos. Existen ocasiones en que resulta más conveniente el uso de un archivo XML o un simple archivo de texto que tu mismo MySQL. Sabiendo reconocer dichos escenarios podrás seguir sin problemas la Regla: Balancea tu carga dinámica y explota el PHP al máximo.

Regresar a la lista de tips

9) Programa sabiendo que un servidor interpretará lo que hagas

construir-super-portales-wordpress-1Hace poco me tropecé con un caso en el cual debía extraer datos desde una web externa y colocarlos en otro sitio. Para tal fin el anterior programador echó mano a las librerías Snoopy y luego se construyó un impresionante conjunto de clases y funciones digno de los dioses. Quedé con la boca abierta ante tal demostración de destreza. Pues mi programador logró exactamente lo mismo con file_get_contents() y unas 7 líneas de código. Tuve que frotar mis ojos para creerlo y luego tomarme un buen trago de ron para olvidar (al anterior).

De aquí surge la Regla: busca formas más abreviadas de programación para lograr tus objetivos. Esto no sólo se aplica a Wordpress sino a todos los casos. De ahí la importancia de ser experto en la materia o -en su defecto- buscar al mejor profesional que puedas encontrar. Resumir un vademécum de código en 7 líneas vale cada centavo que pagues, por lo cual te recomiendo no ser tacaño en ese sentido.

Si eres programador y sabes lo que haces, no esperes para comprender el entorno de Wordpress, ya que un buen cúmulo de sus funciones y recursos realmente te resuelven los problemas de forma limpia y muy abreviada.

Regresar a la lista de tips

10) Establece una clara línea entre los elementos estáticos y dinámicos.

construir-super-portales-wordpress-1Esto viene un poco de la mano con lo anterior, pero en lugar de referirnos a la relación PHP > MySQL haremos mención a la relación HTML > PHP. A lo largo de toda la plantilla de Wordpress existen partes que pueden ser invocados dinámicamente pero que son fijos por naturaleza. Elementos como rutas de archivos, juego de caracteres (charset) y título del sitio -entre muchos otros- pueden fácilmente ser reemplazados por texto estático sin ningún problema. Dicha acción te ayudará a orientar la carga dinámica hacia lo realmente necesario.

La parte de la caché también toca directamente este punto. En el tema que tratamos “caché” es la posibilidad de convertir páginas dinámicas en estáticas, ahorrando así una buena carga de trabajo al CPU, lo que mejora el tiempo de cargado de páginas. En tal sentido, el aprovechamiento de la caché depende directamente de la frecuencia de actualización del contenido. Por ejemplo, en un sitio que publique una noticia cada 15 segundos debe descartarse el cacheo del contenido y concentrarse en la optimización de la carga dinámica. La Regla es: Identifica los elementos estáticos y manténlos exactamente así, estáticos.

Regresar a la lista de tips

DISEÑO

11) Ahorra código innecesario

construir-super-portales-wordpress-1De nada sirve que programes magistralmente si tu HTML es más pesado que la conciencia de Judas Iscariote y peor planificado que la última campaña al Oriente de Alejandro Magno. Una maquetación profesional y reducida de tu interfaz resulta vital para un sitio de alto tráfico. Por tal motivo tu código HTML también debe ser lo más reducido posible, a fin de ahorrar transferencia y velocidad de Carga. la Regla es simple: Usa el código exacto y dale uso correcto al HTML (estructura) y CSS (presentación).

Hacer uso correcto del HTML no sólo implica reservarlo para la parte estructural, sino también utilizar sus elementos de forma correcta. Utiliza tablas sólo para contenido que necesita ser tabulado y déjale a las capas todo lo demás. Usa etiquetas correctas para identificar títulos, listas, párrafos, etc.. Si no entiendes este principio es hora de pensar contratar un buen diseñador/maquetador para que lo haga por ti.

Regresar a la lista de tips

12) Apégate a los estándares

construir-super-portales-wordpress-1Los estándares HTMl y CSS no sólo son beneficiosos para aspectos importantes como la accesibilidad, posicionamiento y compatibilidad entre buscadores, sino que -trabajando bajo sus parámetros- se te abrirá una gran puerta de soluciones sencillas para casos complejos. La Regla: Acostúmbrate y pliégate a los estándares web. Si tu código es mayoritariamente malo, tarde o temprano te arrinconarás de tal manera que deberás “solucionar” el problema con más código malo.

Regresar a la lista de tips

13) Fija un límite de peso en la carga de archivos

construir-super-portales-wordpress-1Éste es un método personal que acostumbré a utilizarlo y me parece oportuno compartirlo. En realidad es muy simple: según alguna experiencia previa establezco un límite de peso total de carga por página y trato de no salirme de ahí. Si llego al límite evalúo cada elemento y trato de aplicar reducciones en las zonas requeridas. Si el código está optimizado y aún así el peso pasa del límite pues ni modo, sigo avanzando.

El método es muy útil porque nos obliga a revisar constantemente lo que estamos haciendo. Es mediante la evaluación constante que descubrimos formas más simples de lograr los mismos resultados. La Regla: fijemos pesos límites para todas las zonas del sitio y utilicémoslos como referencia. Por ejemplo, puede que a primera vista el index de un portal tipo 20minutos.es no deba pesar más de 600kb, y en este punto entran en juego elementos como scripts, multimedia e imágenes, el cual abordaremos a continuación.

Regresar a la lista de tips

14) Utiliza servicios externos disponibles

construir-super-portales-wordpress-1Hoy en día es muy común ver grandes corporaciones de la información echando mano a servicios públicos como Youtube, Scribd o Vimeo. Sin embargo, esta parte debe ser analizada porque junto a los pros también guarda sus buenas contras. Los archivos multimedia alojados en un servidor propio consumen bastante ancho de banda, por lo cual es muy usual contratar un servidor aparte para no abarrotar el que aloja el sitio.

Los servicios externos ahorran una considerable cantidad de dinero en este campo, pero al mismo tiempo limitan la capacidad de personalización y exclusividad que quizás el sitio deba poseer. Adicionalmente, la mayoría de estos servicios poseen políticas de uso y publicación, las cuales a su vez adoptan licencias que quizás no convengan mucho a tu proyecto. La Regla entonces es: Evalúa hasta qué punto resulta beneficioso utilizar servicios externos de multimedia.

Regresar a la lista de tips

15) Optimiza tus imágenes

construir-super-portales-wordpress-1Tipos de imágenes que componen nuestro proyecto web: El conjunto de imágenes de un sitio se divide en dos grupos: 1) Imágenes propias de la interfaz y 2) Imágenes del contenido. Las imágenes de la interfaz se dividen, a su vez, en dos grupos: 1) Imágenes mostradas mediante HTML y 2) Imágenes de fondo mostradas a través de CSS; la diferencia entre ambas es que las mostradas vía HTML involucran un sentido semántico directamente relacionado con la estructura, como por ejemplo separadores de artículos, botones de formularios y logos. Los fondos CSS son, en cambio, puramente decorativos (o deberían serlo).

A qué se le denomina optimización de imágenes: Optimizar una imagen es simplemente reducirla lo más posible de peso en kb mientras su calidad visual se mantiene en el rango deseado.

Respecto a los formatos, debes identificar los que pueden emplearse en la web y ser leidos por los navegadores, pero basta con limitarnos a cuatro para obtener suficientes opciones de uso: JPG, GIF, PNG de 8 bits (PNG-8) y PNG de 24 bits (PNG-24). Cada uno de éstos tiene características específicas, cuyas ventajas derivadas las orientan a un uso también específico.

Con lo anterior hay que tener cierta cautela, pues no se trata de decir “GIF es mejor para todo lo que sea fondo repetitivo” ya que no es así. En el campo de las imágenes toda afirmación absolutista tiende a ser falsa, ya que existe diversidad de situaciones con sus respectiva diversidad de soluciones correctas. La Regla: Busca un método para lograr la mejor relación peso-calidad en las imágenes del sitio, impleméntalo y manténlo en el tiempo.

Regresar a la lista de tips

16) Utiliza recursos javascript sólo cuando sea necesario

construir-super-portales-wordpress-1El asunto del javascript también debe entrar en el proceso de planificación inicial, cuando los temas del diseño, usabilidad y accesibilidad se enfrentan por primera vez.

Desde que los nuevos recursos javascript cobraron auge, alguien cometió el error de calificarlos como “eyecandy” (accesorio cosmético) y con ello dieron a entender de que es correcto utilizarlos como elementos de estética aunque no cumplan una función específica. Esto es un error y aquí viene la Regla: Todo recurso javascript de tu sitio debería 1) Responder a una necesidad clara, generalmente relacionada con la usabilidad o 2) no existir.

Actualmente existen maravillosos frameworks y librerías javascript que ofrecen impresionantes efectos visuales. Sin embargo -por lo mismo de los efectos- algunos diseñadores les han dado uso indiscriminado, olvidándose que todo script debe cumplir una función específica además de la cosmética (la misma mala costumbre que cundió al mundo con el auge del flash). Puede que en sitios de bajo tráfico puedas darte el lujo de incluir buena carga javascript, pero en sitios de alto tráfico constituye un grave error.

Muchos plugins de Wordpress incluyen archivos javascript, la mayoría de éstos sin haber sido sujetos a procesos de estudio y selección; simplemente le gustaron al desarrollador y fueron implementados a la primera. En tal caso entra en juego tu habilidad para sustituir dichos scripts por otros que juzgues más eficaces y livianos al mismo tiempo.

Wordpress dispone de un buen arsenal javascript que puedes cargar cómodamente con la función wp_enqueue_script() (aunque te recomiendo construir esa parte de forma estátca hasta donde te sea posible). Dicho conjunto de scripts son constantemente actualizados por parte del equipo de desarrollo de Wordpress, así que con cada actualización general te mantendrás al día en tal sentido.

Regresar a la lista de tips

17) Inyecta accesibilidad a tu proyecto

construir-super-portales-wordpress-1Nada más hermoso que haber deshabilitado el javascript del navegador y notar que el contenido de un sitio sigue siendo accesible. O deshabilitar el CSS y encontrarse con un juego agradablemente semántico de etiquetas HTML, cuya estructura le concede un flujo lógico de contenido al sitio. O tropezarse con teclas de acceso directo que permiten la navegación sin necesidad de utilizar el ratón. Aspectos como éstos ofrecerán un innegable valor agregado a tu proyecto, ya que con ello permitirás el acceso al mayor número posible de usuarios.

La accesibilidad se ha convertido en una verdadera ciencia, definiéndose como el conjunto de procedimientos ejecutados a favor de aquellos usuarios que por diversos motivos (discapacidad visual o motora, condiciones climáticas o tecnológicas adversas, etc.) tienen serios problemas para desenvolverse en la red. De dichas investigaciones se han desprendido pautas o recomendaciones plenamente disponibles para su estudio e implementación por parte de los diseñadores web.

Lamentablemente -en materia de portales de alto tráfico- la aplicación de elementos de accesibilidad es prácticamente nula. Sin embargo, mientras más desarrolladores tomen conciencia del tema, seguramente notaremos un cambio paulatino en tal sentido. La Regla es: construye sitios accesibles.

Regresar a la lista de tips

18) Diseña una interfaz usable

construir-super-portales-wordpress-1La calidad de las interfaces de usuario está directamente relacionada con la usabilidad, definiéndose ésta como la cualidad de un sitio en poseer un entorno intuitivo que facilite la navegación en cada una de sus zonas. El diseño de la interfaz está íntimamente relacionado con todos los subprocesos de desarrollo y -consecuentemente- constituye uno de los primeros pilares del proyecto. Esto significa que debes atender esta parte desde el mismo principio de la planificación, pues se trata de la misma disposición de los elementos, su jerarquía a los ojos del usuario y del equipo de redacción. Recomiendo adelantar este paso aún antes del trabajo de programación. La Regla: Considera el diseño de la interfaz como una de las tareas más decisivas en el desarrollo de un portal.

Del diseño de interfaces web hay mucha tela que cortar y -paradójicamente- muy escaso material disponible en internet. En un futuro iré redactando contenido enfocado en este tema y, al mismo tiempo, animo a los profesionales en el área a compartir públicamente parte de sus conocimientos. Urge esta medida.

Regresar a la lista de tips

MANTENIMIENTO DE LA CALIDAD

19) Adiestra correctamente a los encargados de gestionar contenido

construir-super-portales-wordpress-1De nada sirve optimizar tu código de manera perfecta si quienes van a gestionar el contenido lo arruinarán en un santiamén. Seguramente más de un desarrollador se ha visto en el dilema de sentirse avergonzado de incluir algún portal en su portafolios, pues aquella obra de arte construida correctamente de principio a fin, con una validación HTML perfecta y de rápida carga, en menos de una semana se convirtió en un tótem paquidérmico que no termina de cargar nunca y con un código fuente que da asco.

En mis últimas dos experiencias con portales me animé a incluir el adiestramiento como parte del paquete básico de desarrollo. Sólo 3 sesiones intensivas de capacitación bastaron para que el personal editor fuese capaz de generar artículos con un HTML correctamente estructurado. Para tal fin procedí una manera que explico a continuación:

  1. Desactivar el editor visual: El editor visual de Wordpress (Wysiwyg) suele ser muy eficiente en algunos casos, pero lamentablemente a su conversor de código aún le falta mucho para generar eficazmente un buen HTML. En cambio, puede que el editor de texto plano no muestre algunos elementos en tiempo real, pero ciertamente es la vía más segura y rápida de no provocar errores de código.
  2. Desarrollar recursos a favor del personal de edición: Uno de los puntos más álgidos y esenciales del desarrollo de portales lo constituye el hecho de hacerle la vida fácil a los redactores. Su familiarización con el entorno web alcanza un punto muy limitado y debemos respetar ese factor. En lugar de crearles más problemas con códigos y procedimientos técnicos, debemos aliviarles toda la carga posible y hacer que superen exitosamente la barrera tecnológica que se imponen entre su oficio comunicacional y la forma de lograr publicar sus artículos.

    Es aquí donde entra -principalmente- tu capacidad para desarrollar plugins, pues éstos representan la solución más rápida y profesional para proveer a dicho personal de una completa interfaz donde puedan desempeñarse de la forma más cómoda posible.

    Vale la pena mencionar que uno de los obstáculos más grandes para un redactor está representado por el lío del tratamiento de imágenes. Quizás desees leer este artículo respecto a una buena combinación de plugins para implementar.

  3. Dar soporte: Desarrollaste el portal y adiestraste al personal. Sólo queda ofrecerles el soporte necesario bajo condiciones lógicas y favorables para ti y tu cliente. Según experiencia personal, para un grupo bien adiestrado el período de soporte no debería pasar de un mes, aunque te toca a ti decidir esa parte.

Entonces la Regla es: Ofrece capacitación y soporte a quienes se encargarán del contenido, a fin de que mantengan un código limpio, accesible y bien estructurado.

Regresar a la lista de tips

20) Mantén tu base de datos optimizada

construir-super-portales-wordpress-1Gracias al phpMyAdmin esta parte resulta muy fácil. Sólo entras a la base de datos indicadas y optimizas todas las tablas. Sin embargo, la misma facilidad del proceso hace que esto tienda a olvidarse. Si transcurre mucho tiempo sin optimización, puede que tu base de datos comience a devolver errores o ralentizarse.

De la misma forma evalúa los plugins -tales como Search Unleashed- que puedan llenar demasiado tu base de datos con registros innecesarios y busca la forma de desactivar las funciones que no necesitas.

Regresar a la lista de tips

REFERENCIAS DE UTILIDAD

Referencia Wordpress para desarrolladores web:

Comunidades de usuarios Wordpress en español:

Comunidades de Hosting en español:

Diseño Web:

Tips, tutoriales y consejos para sitios de alto tráfico:

  • Bitacoras.com
  • Meneame
  • Twitter
  • del.icio.us
  • Facebook
  • Digg
  • Technorati
  • BarraPunto

Publicado en Portada, Wordpress. 29 Comentarios »

29 comentarios

  • Hades dijo:
    7 de Octubre de 2009 a las 11:16 pm

    Tremendo artículo que elaboraste, me lo he leido completo.
    En lo personal creo que muchos de estos consejos son buenas costumbres que deben aprenderse desde el inicio, como el “no usar todo solo porque puedes”, la justificación de las cosas y elementos que usamos en los proyectos es básico.
    Y la otra es el tema de la usabilidad, yo no soy experto, a las justas se montar un sitio con Wordpress, pero me han resultado muy útiles muchos puntos de esta lista.

    Saludos!

  • Darío Ferrer dijo:
    8 de Octubre de 2009 a las 12:59 am

    Gracias por tu comentario Hades. Me gustó lo de “no usar todo solo porque puedes”. Muy cierto.

  • zanguanga dijo:
    10 de Octubre de 2009 a las 6:52 am

    Como en Photoshop, jajaja, hay gente que se empeña en hacer todo lo que sabe en cada imagen que crea, le aplica todos los filtros, todas las opciones….

    Gracias por la referencia al foro y enhorabuena por este “máster”. Es lo mejor que he leído sobre WordPress en español desde hace mucho tiempo.

    Sin embargo encuentro una pequeña contradicción en el punto del mantenimiento, Si bien es cierto que el editor visual presenta todavía demasiadas carencias o problemas, lo veo imprescindible para los editores-comunicadores que, como bien dices, ni saben ni quieren saber nada de html.

    Yo logro convencerles para que no abusen de estilos de texto, digamos de forma “creativa”, añadiéndole colores, negritas, subrayados etc. con la errada intención de “destacar” algo, cuando en realidad intentan demasiadas cosas, logrando un descontrol total y el efecto contrario, o sea, que nada destaque por “exceso de competencia”. Frecuentemente me cuesta que respeten el diseño de la tipografía. Les adiestro para que usen las etiquetas título, cita, etc. que aparecen el editor, pero en html no sabrían hacerlo. Y, además, por desgracia frecuentemente no lo respetan.

    (¿Falta el enlace al artículo de las imágenes en el punto 19.2 o no lo ví yo?)

  • Darío Ferrer dijo:
    10 de Octubre de 2009 a las 3:22 pm

    (¿Falta el enlace al artículo de las imágenes en el punto 19.2 o no lo ví yo?)

    Oops sí! faltaba el enlace =P. Arreglado, gracias por notarlo Zanguanga, y por supuesto gracias por el simpático comentario hacia el artículo.

    Sin embargo encuentro una pequeña contradicción en el punto del mantenimiento, Si bien es cierto que el editor visual presenta todavía demasiadas carencias o problemas, lo veo imprescindible para los editores-comunicadores que, como bien dices, ni saben ni quieren saber nada de html.

    Yo logro convencerles para que no abusen de estilos de texto, digamos de forma “creativa”, añadiéndole colores, negritas, subrayados etc. con la errada intención de “destacar” algo, cuando en realidad intentan demasiadas cosas, logrando un descontrol total y el efecto contrario, o sea, que nada destaque por “exceso de competencia”. Frecuentemente me cuesta que respeten el diseño de la tipografía. Les adiestro para que usen las etiquetas título, cita, etc. que aparecen el editor, pero en html no sabrían hacerlo. Y, además, por desgracia frecuentemente no lo respetan.

    Es cierto que el editor visual ofrece cierta comodidad debido a que ofrece visualización en tiempo real pero -por otro lado- es costumbre de los redactores pegar directamente desde Word al editor, lo cual genera gran cantidad de código malo que algunas veces hasta afecta la maquetación.

    De igual forma, el editor visual de Wordpress (y de ningún CMS) es un recurso 100% fiable. Son innumerables las ocasiones en las cuales debemos corregir, borrar y editar contenido, quedando muchas veces resíduos de código que -dependiendo del caso- también pueden afectar la presentación de la página.

    Con el editor de texto plano el problema se elimina completamente y no es tan complicado como algunos piensan. Para un redactor resulta muy fácil adaptarse a un poquito de código. Fíjate por ejemplo en los usuarios de foros, quienes deben aprender a manejar algunas herramientas de formato/estructura, lográndolo exitosamente -y por sí mismos- en poco tiempo.

    El adiestramiento sólo consta de 3 sesiones: una de inducción, otra de práctica y otra última dedicada a resolver dudas derivadas de lo que han practicado. Luego el soporte les ofrece seguridad extra hasta que dominen 100% la herramienta.

    En cuanto a la previsualización, Wordpress dispone de un sistema para tal fin aún más avanzado que el de los sistemas de foros.

    Entonces, todo el trabajo radica en definir muy bien el juego de estilos que estarán disponibles y -tal como se explica- dotar a los redactores de métodos abreviados para lograr una publicación de calidad. Uno de los principales recursos para el desarrollador está representado por el archivo quicktags.js, ubicado en el directorio includes/js/. Éste archivo es el que controla los botones para la inserción de etiquetas. Allí puedes modificar las existentes y crear nuevas. El archivo quicktags.dev.js es una versión descomprimida del anterior, de manera que puedes trabajar esta parte de forma muy cómoda (¡Dios, cómo adoro a este software!).

    La estrategia correcta -al menos a mi parecer- consiste en reducirle las vías a los redactores a sólo una, pero que en esa única vía éstos encuentren todos los recursos necesarios para lograr su objetivo. La recompensa es un aprendizaje más rápido y -en consecuencia- un método sólido que puede ser delegado fácilmente en nuevos redactores, quienes a su vez serían adiestrados por los antiguos.

  • zanguanga dijo:
    10 de Octubre de 2009 a las 8:31 pm

    hmmm ¿sabes? tienes toda la razón, pero sigue sin convencerme lo del editor si estamos hablando de usuarios megatorpes, que son muy frecuentes, si no tanto en medios de comunicación, sí en empresas de otro tipo. Yo suelo insistir mucho en usar la herramienta “pegar como texto plano”, resulta muy útil para estos casos.

    Gracias por toda la nueva información que aportas, pero a mí me da yuyu tocar esos archivos, eso es para gente con más nivel y por otra parte ¿qué pasaría con las actualizaciones? Definitivamente, creo que los desarrolladores de WordPress deberían intentar solventar estos problemas en futuras versiones. Así como los de internacionalización, aún pendientes.

  • Darío Ferrer dijo:
    10 de Octubre de 2009 a las 9:51 pm

    hmmm ¿sabes? tienes toda la razón, pero sigue sin convencerme lo del editor si estamos hablando de usuarios megatorpes, que son muy frecuentes, si no tanto en medios de comunicación, sí en empresas de otro tipo. Yo suelo insistir mucho en usar la herramienta “pegar como texto plano”, resulta muy útil para estos casos.

    Hagamos algo: si me lo permites te enviaré un correo con un enlace que te va a convencer definitivamente ;).

    Gracias por toda la nueva información que aportas, pero a mí me da yuyu tocar esos archivos, eso es para gente con más nivel y por otra parte ¿qué pasaría con las actualizaciones? Definitivamente, creo que los desarrolladores de WordPress deberían intentar solventar estos problemas en futuras versiones. Así como los de internacionalización, aún pendientes.

    En mi caso tengo ese archivo programado como plugin, lo cual soluciona el asunto de las actualizaciones y además hace honor al Tip 3 :D.

  • 20 tips para desarrollar sitios de alto tráfico con Wordpress | TodoWordPress dijo:
    11 de Octubre de 2009 a las 1:33 am

    [...] De imprescindible lectura y sin despercicio alguno: 20 excelentes consejos de Darío Ferrer para desarrollar sitios de alto tráfico con Wordpress. [...]

  • zanguanga dijo:
    11 de Octubre de 2009 a las 3:59 am

    Darío, por supuesto que puedes enviarme todos los correos que consideres oportunos.

    En mi caso tengo ese archivo programado como plugin, lo cual soluciona el asunto de las actualizaciones y además hace honor al Tip 3 :D.

    Ahh maladrín, malandrín… ahora sí ¿ves como había truco? jajaja, yo antes usaba también un plugin para crear quicktags :D Gracias de nuevo.

  • Buenas prácticas para desarrollar sitios web con WordPress dijo:
    11 de Octubre de 2009 a las 12:00 pm

    [...] de puntos que debes tener claro si desarrollas sitios web hechos con el poder de WordPress. Échale un ojo en su sitio web oficial y empápate de buenas [...]

  • Todotutoriales dijo:
    12 de Octubre de 2009 a las 8:07 am

    Desarrollar sitios de alto tráfico con Wordpress…

    Estos 20 tips para desarrollar sitios de alto tráfico con Wordpress, de Darío Ferrer, conforman un auténtico master para desarrollar sitios en WordPress, de imprescindible lectura. Aquí os dejo el índice para abrir el apetito:
    Básico

    Si no eres exper…

  • Trucos para desarrollar un sitio de alto tráfico con WordPress, Carrero dijo:
    12 de Octubre de 2009 a las 12:31 pm

    [...] Dario Ferrer Etiquetas: cache, cms, mysql, php, plugins, servidores dedicados, sitio, tráfico, [...]

  • jesusguevarautomotriz dijo:
    12 de Octubre de 2009 a las 9:04 pm

    Tremendo artículo Darío, para no expertos como yo, sirve para agarrar luces en cuanto en cuanto sobre como debemos pensar en la administración de nuestro pequeño blog… Me gustó mucho “Si no eres experto contrata uno”.

    Tengo claro que no hay que abusar de los plugins, seguir lo estándares incluso en la redacción de posts, elegir el hosting adecuado y otros tips similares. Obviamente estoy consciente de que no soy un experto y en mas de una ocasión me he sentido muy tentado a contratar a alguien, pero el factor es el $. Sin embargo gustosamente lo haré cuando esté en un posición mas privilegiada.

    Saludos.

  • Buenas prácticas para desarrollar sitios web con WordPress | InformaticaRD dijo:
    13 de Octubre de 2009 a las 10:04 pm

    [...] de puntos que debes tener claro si desarrollas sitios web hechos con el poder de WordPress. [...]

  • Juani dijo:
    18 de Octubre de 2009 a las 2:18 am

    Genial artículo !!!! Que me dices de la cantidad de recursos que consume WP? He leido comparaciones de CMS y no sale muy favorecido contra drupal o Joomla para sitios grandes.

  • Darío Ferrer dijo:
    20 de Octubre de 2009 a las 2:23 pm

    Juani escribió:
    He leido comparaciones de CMS y no sale muy favorecido contra drupal o Joomla para sitios grandes.

    ¿Podrías por favor mostrarme la fuente de esta información?

  • Recopilación de cosas importantísimas sobre Wordpress dijo:
    22 de Octubre de 2009 a las 7:18 am

    [...] ? 20 tips para desarrollar sitios de alto tráfico con Wordpress. Via: darioferre [...]

  • Jorge Oyhenard dijo:
    24 de Octubre de 2009 a las 5:48 pm

    Excelente artículo, la verdad que te lo haz currado, es bueno ver toda la información junta en un solo artículo !

  • Darío Ferrer dijo:
    24 de Octubre de 2009 a las 5:54 pm

    Gracias Quique, me alegra que te haya gustado.

  • 20 tips para desarrollar sitios de alto tráfico con Wordpress | Contenidos dijo:
    25 de Octubre de 2009 a las 9:35 am

    [...] De imprescindible lectura y sin despercicio alguno: 20 excelentes consejos de Darío Ferrer para desarrollar sitios de alto tráfico con Wordpress. [...]

  • Digital dijo:
    26 de Noviembre de 2009 a las 3:42 am

    Excelente!

    Da gusto encontrarse posts como este tan bien explicados y elaborados.

    Ahora antes de empezar a explicar sobre el tema a algun compañero que se inicie le recomendaré siempre su lectura y estudio.

    Saludos

  • Desarrolladores PHP dijo:
    26 de Noviembre de 2009 a las 8:55 pm

    Excelente artículo! Muchas gracias por compartir ;)

    Saludos.

  • RBZ Sevilla dijo:
    1 de Diciembre de 2009 a las 6:18 pm

    Creo que esta frase del tip 8 tiene un error: “Existen ocasiones en que resulta más conveniente el uso de un archivo XML o un simple archivo de texto que tu mismo MySQL” Supongo que era un “de” en vez de un “que”.

    El artículo es buenísimo, muy completo y claro en la expresión. Supongo que en los portales de prensa siguen usando Joomla en vez de wordpress porque lo instalan de serie. ¿Recomendarías el uso de wordpress para un periódico?

  • Piros dijo:
    3 de Diciembre de 2009 a las 3:10 am

    Tremendo articulo, muy bien elaborado y con consejos realmente importantes para los que usamos wordpress.

  • Darío Ferrer dijo:
    17 de Diciembre de 2009 a las 12:48 am

    Digital, gracias por tus impresiones sobre el artículo y me alegra saber que lo recomendarás.

    Desarrolladores PHP, igualmente un gusto leerte.

    Rafael, qué bueno verte rondando por aquí. Desde luego recomiendo Wordpress para portales noticiosos. A pesar de los numerosos pasos para orientar el software a sitios de alto tráfico, ciertamente es un proceso más rápido, sencillo y fiable comparándolo con otros CMS (que los he probado y pufff… ya sabes).

    Piros, excelente que el artículo te sirva.

  • Gabriel dijo:
    22 de Diciembre de 2009 a las 6:32 pm

    Vaya Muchos Halagos Dario..bueno solo escribo para felicitarte por este post muy completo, voy aplicar tus consejos. Saludos

  • jhsilva dijo:
    26 de Enero de 2010 a las 9:59 pm

    De verdad,un excelente articulo.Espero estudiarlo con detenimiento para aplicar buenos consejos que pude Observar.
    Algo que podrias haber incluido en tus tips es buscar estandarizar los procesos de desarrollo en wordpress para quienes trabajen programando, maquetando y diseñando, ya que me ha tocado ver de todo y es realmente una ensalada que al final se vuelve incontrolable.

    Saludos

    Jorge

  • Darío Ferrer dijo:
    29 de Enero de 2010 a las 11:26 am

    Gracias por sus comentarios chicos,

    jhsilva, tienes razón en lo que comentas y de hecho debería escribirse en muchos papeles para pegárselos en la frente a algunos (incluýendome). No obstante, dicho aspecto viene siendo parte de los principios básicos de todo desarrollador y es por tanto un punto más general.

    Hace poco tuve la oportunidad de ir a la oficina de un buen amigo programador, cuyo método de trabajo era sencillamente un asco: librerías e includes desordenados, hojas de estilos en el quinto diablo, páginas partidas en 5 pedazos y otras aberraciones. Como no soy persona de andar criticando esas cosas me quedé callado, pero el personaje supo interpretar mi expresión, así que comentó de la nada: “yo tengo mi propio orden”.

    Sólo decir que esa persona es un verdadero maestro de la programación. Construye sistemas complejos desde cero y por lo tanto respeto sumamente su trabajo. Pero su método…

Comentar este artículo

Nombre (Requerido)

Correo (No será publicado) (Requerido)

Sitio web

Secciones

Anteriores

comentarios recientes

@Jk en ¿”WatchTower” o “CashPower”?: Hola! Solo queria decirte algo de corazon, no soy testigo, pero muchas veces...

@Glass en ¿Joomla Vs. Wordpress? (1ª parte): Muy interesante post, aunque algo parecido leí en alguna parte pero en inglés, aunque aquí se tocan...

@Ricardo Olivera en ¿Joomla Vs. Wordpress? (1ª parte): Muy interesante el post y los comentarios. Yo quiero poner una tienda tipo carrito de...

@Antonio García en ¿Joomla Vs. Wordpress? (1ª parte): Creo que la comparación no debería tomarse tan literalmente, creo que muchos usuarios no tan...

@Daniel Gonzalez en ¿Joomla Vs. Wordpress? (1ª parte): Sobre la comparación de lo que puede o no puede hacer wordpress y joomla, sería interesante...

@Bandolera en ¿Joomla Vs. Wordpress? (1ª parte): Hola chicos malos: Según he leido el artículo y los comentarios dejados, me doy cuenta que en...

@ABTOP en Construir letras capitulares en Wordpress. Parte I – PHP: Similar, but slightly different approach: http://newrussianamerica.co...

@claudia santiesteban hernandez en Malos consejos: yo tengo una enemiga por mis espaldas y hasta le tengo y me quito a angel eso me da miedo y...

Darío Ferrer — Blog personal

Sitio desarrollado con Wordpress, software libre para un mundo libre.

56 consultas a la BD en 1.425 segundos. Blog alojado en DreamHost