Este documento describe los pasos para instalar WordPress, incluyendo descargar e instalar WordPress, crear una base de datos, configurar el archivo wp-config.php, optimizar las URLs, traducir WordPress a otro idioma, y crear y modificar temas de WordPress. Explica los archivos necesarios para un tema básico como style.css e index.php, y otros archivos comunes como comments.php y functions.php.
Este documento resume los aspectos clave a considerar al elegir un hosting para WordPress, incluyendo los requisitos mínimos, características como memoria, espacio y transferencia de datos, y tipos de hosting como compartido, VPS o dedicado. También discute temas como realizar copias de seguridad periódicas, optimizar el rendimiento a través de plugins como W3 Total Cache, y mejorar la seguridad con plugins como iThemes Security.
Este documento introduce el comando wp-cli y cómo puede usarse para automatizar tareas administrativas de WordPress desde la línea de comandos. Explica cómo instalar wp-cli, los comandos básicos como instalar WordPress, crear y editar publicaciones, y cómo configurar wp-cli para usarlo de forma remota. También cubre paquetes de wp-cli, crear tus propios comandos, y recursos adicionales.
Wordpress como framework - DarioBF en WordCamp BarcelonaDarío BF
Este documento explica cómo WordPress puede utilizarse como un framework para el desarrollo web. Explica que WordPress ofrece características como la gestión de usuarios y permisos, plantillas, plugins, caché, registro de errores y gestión de multimedia. También describe cómo usar funciones como custom post types, metaboxes, WP_Query y loops para crear contenido personalizado.
Mod_alias es un módulo de Apache que permite manipular y controlar las direcciones URL. Incluye directivas como Alias, Redirect y ScriptAlias que mapean URLs a rutas de archivos o ejecutan scripts CGI. Las redirecciones se procesan antes que los alias y ambos se ordenan según aparezcan en la configuración.
"Web Performance para Wordpress" es una presentación de Javier Casares pronunciada en La Salle Campus Barcelona el 26 de abril de 2012. Esta es una de las sesiones sobre #webperf que organiza Javier Casares en colaboración con nuestro centro universitario. Se pueden seguir en directo a través del canal Livestream de La Salle BCN: http://new.livestream.com/LaSalleBCN
Instalación Wordpress y woocommerce con xampp y migración de base de datos de...Laura Colorado
Documento que explica paso a paso:
Cómo instalar Xampp (Apache + MySQL)
Cómo crear WordPress y tienda Woocomerce en local con Xampp.
Cómo exportar base de datos creada en servidor remoto e importar en local
Cómo configurar woocommerce y wordpress
Este documento resume los aspectos clave a considerar al elegir un hosting para WordPress, incluyendo los requisitos mínimos, características como memoria, espacio y transferencia de datos, y tipos de hosting como compartido, VPS o dedicado. También discute temas como realizar copias de seguridad periódicas, optimizar el rendimiento a través de plugins como W3 Total Cache, y mejorar la seguridad con plugins como iThemes Security.
Este documento introduce el comando wp-cli y cómo puede usarse para automatizar tareas administrativas de WordPress desde la línea de comandos. Explica cómo instalar wp-cli, los comandos básicos como instalar WordPress, crear y editar publicaciones, y cómo configurar wp-cli para usarlo de forma remota. También cubre paquetes de wp-cli, crear tus propios comandos, y recursos adicionales.
Wordpress como framework - DarioBF en WordCamp BarcelonaDarío BF
Este documento explica cómo WordPress puede utilizarse como un framework para el desarrollo web. Explica que WordPress ofrece características como la gestión de usuarios y permisos, plantillas, plugins, caché, registro de errores y gestión de multimedia. También describe cómo usar funciones como custom post types, metaboxes, WP_Query y loops para crear contenido personalizado.
Mod_alias es un módulo de Apache que permite manipular y controlar las direcciones URL. Incluye directivas como Alias, Redirect y ScriptAlias que mapean URLs a rutas de archivos o ejecutan scripts CGI. Las redirecciones se procesan antes que los alias y ambos se ordenan según aparezcan en la configuración.
"Web Performance para Wordpress" es una presentación de Javier Casares pronunciada en La Salle Campus Barcelona el 26 de abril de 2012. Esta es una de las sesiones sobre #webperf que organiza Javier Casares en colaboración con nuestro centro universitario. Se pueden seguir en directo a través del canal Livestream de La Salle BCN: http://new.livestream.com/LaSalleBCN
Instalación Wordpress y woocommerce con xampp y migración de base de datos de...Laura Colorado
Documento que explica paso a paso:
Cómo instalar Xampp (Apache + MySQL)
Cómo crear WordPress y tienda Woocomerce en local con Xampp.
Cómo exportar base de datos creada en servidor remoto e importar en local
Cómo configurar woocommerce y wordpress
Qué cosas se deben tomar en cuenta al momento de pensar en crear o mejorar una aplicación web que va a ser utilizada por miles de usuarios... por segundo.
Enfocado principalmente en proyectos basados en PHP
Este documento introduce los conceptos básicos del desarrollo web. Explica que la World Wide Web fue inventada por Tim Berners-Lee en 1989 usando HTML para vincular documentos a través de hiperenlaces. Describe los cuatro pilares de la WWW: hipertexto, identificadores de recursos, modelo cliente-servidor y lenguaje de marcas. También define términos clave y explica cómo funciona la web, incluyendo el proceso de solicitud y respuesta entre cliente y servidor.
Este documento describe cómo optimizar sitios web creados con WordPress. Explica que se deben desactivar o eliminar plugins innecesarios y optimizar imágenes y archivos CSS y JavaScript. También recomienda almacenar contenido estático en servidores externos, usar múltiples hostnames para descargar archivos en paralelo, y utilizar caché a nivel de navegador, servidor y CDN para reducir las solicitudes al servidor principal.
Este documento presenta una discusión sobre optimización de rendimiento en Drupal. Aborda temas como la importancia del rendimiento, tipos de caché como servidor web, PHP, Drupal y base de datos, herramientas de testing como Apache Bench y XHProf, optimización de código PHP con APC, caché del núcleo de Drupal, y opciones de caché como APC, Memcache y archivos. También cubre temas como escalabilidad y rendimiento general del sitio.
Presentación de la conferencia "Optimización del rendimiento web" impartida en la TLP2k12, en la jornada de desarrolladores (Tenerife LAN Party 2012).
Resumen y explicación, aquí:
http://www.emezeta.com/articulos/conferencia-optimizar-el-rendimiento-web
La aplicación First Cup tiene tres componentes principales: un servicio web que calcula la edad de Duke, un bean empresarial sin estado que calcula la diferencia de edad entre el usuario y Duke, y una aplicación web creada con JavaServer Faces que accede a estos componentes para mostrar la edad de Duke y determinar quién es más viejo. La aplicación web consta de páginas JSP y un bean administrado por JSF que define las propiedades y reglas de navegación.
Este documento resume las funcionalidades del servidor web Cherokee. Explica cómo instalar y configurar Cherokee, crear hosts virtuales, autenticación básica y digest, y ejecutar scripts PHP. También compara el rendimiento de Cherokee con Apache, encontrando que Cherokee usa menos memoria y puede manejar más peticiones.
Curso Blog Marketing con Wordpress 02 instalacion localDavid Vaquero
Este documento proporciona instrucciones para instalar WordPress localmente usando XAMPP. Explica cómo instalar los componentes necesarios como Apache, PHP y MySQL a través de XAMPP e instalar WordPress descargando e importando los archivos en la carpeta htdocs. Luego guía al lector a través de la configuración de la base de datos de WordPress y el archivo wp-config.php para completar la instalación. Finalmente, ofrece consejos para resolver problemas comunes.
El 80% del tiempo de carga de un sitio web se debe principalmente a Javascript, CSS, imágenes y Flash. Reducir estos componentes acelerará la carga de la página al disminuir las peticiones HTTP. Varias reglas como minimizar assets, usar CDNs y cache pueden optimizar el rendimiento.
Desarrollo de temas de apariencia para Liferay 6.1Julio Camarero
Este documento describe cómo crear y personalizar temas en Liferay. Explica que los temas permiten cambiar aspectos como las imágenes, el HTML, la posición de elementos y archivos JSP en el portal. Además, recomienda heredar de temas existentes para beneficiarse de actualizaciones y correcciones, y hacer los cambios mediante diferencias. Finalmente, proporciona consejos sobre el uso de CSS, plantillas, variables y servicios para personalizar completamente la apariencia y funcionalidad de Liferay.
Este documento proporciona una introducción al servidor web Nginx. Explica cómo instalar Nginx, configurar hosting virtuales, alias, control de acceso y autenticación básica. También cubre cómo usar FastCgi con Nginx para ejecutar scripts como WordPress y realiza comparaciones del rendimiento y uso de memoria de Nginx frente a Apache.
Este documento proporciona una introducción a MongoDB, incluyendo que es una base de datos NoSQL orientada a documentos, que MongoDB Atlas ofrece alojamiento en la nube de clusters de MongoDB de forma automatizada y escalable, y describe conceptos básicos como colecciones, documentos y operaciones CRUD.
El documento describe los pasos para desplegar WordPress en diferentes entornos locales y remotos utilizando diferentes métodos, desde la implementación directa en un solo servidor hasta el uso de múltiples servidores y dominios con control de versiones. Explica las ventajas e inconvenientes de cada método, con énfasis en el uso de sistemas de control de versiones para trabajar de manera colaborativa y mantener diferentes entornos de desarrollo, pruebas y producción.
Este documento describe cómo analizar documentos XML usando las APIs SAX y DOM en Java. Explica cómo construir analizadores SAX simples y cómo usar los eventos SAX para procesar documentos XML. También muestra cómo usar DOM para recorrer y extraer información de documentos XML. Finalmente, introduce la biblioteca JDOM para crear y manipular árboles DOM en Java.
Symfony es un framework de PHP que nos permite crear aplicaciones web y que está construido usando como base más de 30 componentes reutilizables y desacoplados.
En esta charla hablaremos sobre la última versión de este framework, su filosofía, su funcionamiento en general, repasaremos algunos de sus componentes y expondremos algunas de las buenas prácticas, todo ello acompañado de ejemplos.
Este documento presenta una introducción a PHP y describe los pasos para instalar Apache, PHP y configurar el entorno de desarrollo en Windows. Explica brevemente qué es PHP, su historia y ventajas. Luego detalla el proceso de descargar, instalar y configurar Apache, PHP y probar la instalación con una página PHP simple.
WordCamp Alicante 2017 - De HTML a WordPressDarío BF
El documento habla sobre el proceso de crear un tema de WordPress a partir de un diseño HTML y CSS existente. Explica las diferentes partes y archivos que componen un tema de WordPress como style.css, header.php, footer.php e index.php. También cubre cómo mover los archivos de diseño al tema de WordPress y modificar las rutas para que funcionen correctamente.
WordCamp Bilbao - De HTML a WordPress - @DarioBFDarío BF
Aprende cómo pasar tu maqueta HTML y CSS a tema de WordPress.
Un amplio repaso a la estructura de un theme de WordPress y las buenas prácticas a la hora de desarrollar nuestro propio theme.
Aprende cómo se comporta un tema, controla el Loop, crea menús dinámicos, zonas de widgets, tipos de contenidos personalizados, metaboxes y alguna sorpresa más.
Este documento describe el proyecto de limpieza, acondicionamiento y rediseño del patio interior del IES Tineo. Incluye fotos que muestran el estado del patio antes y después de la renovación, destacando las mejoras realizadas como la limpieza y el nuevo diseño.
Este documento trata sobre periféricos de salida como monitores, impresoras, sintetizadores de voz y visualizadores. Explica que los monitores están compuestos de píxeles y que cuantos más píxeles tengan, mayor es su resolución. Describe varios tipos de impresoras como de rueda, matriciales, de barras, de cadena, térmicas, de inyección de tinta, electrostáticas y láser. Finalmente, menciona brevemente que los sintetizadores de voz emiten son
Qué cosas se deben tomar en cuenta al momento de pensar en crear o mejorar una aplicación web que va a ser utilizada por miles de usuarios... por segundo.
Enfocado principalmente en proyectos basados en PHP
Este documento introduce los conceptos básicos del desarrollo web. Explica que la World Wide Web fue inventada por Tim Berners-Lee en 1989 usando HTML para vincular documentos a través de hiperenlaces. Describe los cuatro pilares de la WWW: hipertexto, identificadores de recursos, modelo cliente-servidor y lenguaje de marcas. También define términos clave y explica cómo funciona la web, incluyendo el proceso de solicitud y respuesta entre cliente y servidor.
Este documento describe cómo optimizar sitios web creados con WordPress. Explica que se deben desactivar o eliminar plugins innecesarios y optimizar imágenes y archivos CSS y JavaScript. También recomienda almacenar contenido estático en servidores externos, usar múltiples hostnames para descargar archivos en paralelo, y utilizar caché a nivel de navegador, servidor y CDN para reducir las solicitudes al servidor principal.
Este documento presenta una discusión sobre optimización de rendimiento en Drupal. Aborda temas como la importancia del rendimiento, tipos de caché como servidor web, PHP, Drupal y base de datos, herramientas de testing como Apache Bench y XHProf, optimización de código PHP con APC, caché del núcleo de Drupal, y opciones de caché como APC, Memcache y archivos. También cubre temas como escalabilidad y rendimiento general del sitio.
Presentación de la conferencia "Optimización del rendimiento web" impartida en la TLP2k12, en la jornada de desarrolladores (Tenerife LAN Party 2012).
Resumen y explicación, aquí:
http://www.emezeta.com/articulos/conferencia-optimizar-el-rendimiento-web
La aplicación First Cup tiene tres componentes principales: un servicio web que calcula la edad de Duke, un bean empresarial sin estado que calcula la diferencia de edad entre el usuario y Duke, y una aplicación web creada con JavaServer Faces que accede a estos componentes para mostrar la edad de Duke y determinar quién es más viejo. La aplicación web consta de páginas JSP y un bean administrado por JSF que define las propiedades y reglas de navegación.
Este documento resume las funcionalidades del servidor web Cherokee. Explica cómo instalar y configurar Cherokee, crear hosts virtuales, autenticación básica y digest, y ejecutar scripts PHP. También compara el rendimiento de Cherokee con Apache, encontrando que Cherokee usa menos memoria y puede manejar más peticiones.
Curso Blog Marketing con Wordpress 02 instalacion localDavid Vaquero
Este documento proporciona instrucciones para instalar WordPress localmente usando XAMPP. Explica cómo instalar los componentes necesarios como Apache, PHP y MySQL a través de XAMPP e instalar WordPress descargando e importando los archivos en la carpeta htdocs. Luego guía al lector a través de la configuración de la base de datos de WordPress y el archivo wp-config.php para completar la instalación. Finalmente, ofrece consejos para resolver problemas comunes.
El 80% del tiempo de carga de un sitio web se debe principalmente a Javascript, CSS, imágenes y Flash. Reducir estos componentes acelerará la carga de la página al disminuir las peticiones HTTP. Varias reglas como minimizar assets, usar CDNs y cache pueden optimizar el rendimiento.
Desarrollo de temas de apariencia para Liferay 6.1Julio Camarero
Este documento describe cómo crear y personalizar temas en Liferay. Explica que los temas permiten cambiar aspectos como las imágenes, el HTML, la posición de elementos y archivos JSP en el portal. Además, recomienda heredar de temas existentes para beneficiarse de actualizaciones y correcciones, y hacer los cambios mediante diferencias. Finalmente, proporciona consejos sobre el uso de CSS, plantillas, variables y servicios para personalizar completamente la apariencia y funcionalidad de Liferay.
Este documento proporciona una introducción al servidor web Nginx. Explica cómo instalar Nginx, configurar hosting virtuales, alias, control de acceso y autenticación básica. También cubre cómo usar FastCgi con Nginx para ejecutar scripts como WordPress y realiza comparaciones del rendimiento y uso de memoria de Nginx frente a Apache.
Este documento proporciona una introducción a MongoDB, incluyendo que es una base de datos NoSQL orientada a documentos, que MongoDB Atlas ofrece alojamiento en la nube de clusters de MongoDB de forma automatizada y escalable, y describe conceptos básicos como colecciones, documentos y operaciones CRUD.
El documento describe los pasos para desplegar WordPress en diferentes entornos locales y remotos utilizando diferentes métodos, desde la implementación directa en un solo servidor hasta el uso de múltiples servidores y dominios con control de versiones. Explica las ventajas e inconvenientes de cada método, con énfasis en el uso de sistemas de control de versiones para trabajar de manera colaborativa y mantener diferentes entornos de desarrollo, pruebas y producción.
Este documento describe cómo analizar documentos XML usando las APIs SAX y DOM en Java. Explica cómo construir analizadores SAX simples y cómo usar los eventos SAX para procesar documentos XML. También muestra cómo usar DOM para recorrer y extraer información de documentos XML. Finalmente, introduce la biblioteca JDOM para crear y manipular árboles DOM en Java.
Symfony es un framework de PHP que nos permite crear aplicaciones web y que está construido usando como base más de 30 componentes reutilizables y desacoplados.
En esta charla hablaremos sobre la última versión de este framework, su filosofía, su funcionamiento en general, repasaremos algunos de sus componentes y expondremos algunas de las buenas prácticas, todo ello acompañado de ejemplos.
Este documento presenta una introducción a PHP y describe los pasos para instalar Apache, PHP y configurar el entorno de desarrollo en Windows. Explica brevemente qué es PHP, su historia y ventajas. Luego detalla el proceso de descargar, instalar y configurar Apache, PHP y probar la instalación con una página PHP simple.
WordCamp Alicante 2017 - De HTML a WordPressDarío BF
El documento habla sobre el proceso de crear un tema de WordPress a partir de un diseño HTML y CSS existente. Explica las diferentes partes y archivos que componen un tema de WordPress como style.css, header.php, footer.php e index.php. También cubre cómo mover los archivos de diseño al tema de WordPress y modificar las rutas para que funcionen correctamente.
WordCamp Bilbao - De HTML a WordPress - @DarioBFDarío BF
Aprende cómo pasar tu maqueta HTML y CSS a tema de WordPress.
Un amplio repaso a la estructura de un theme de WordPress y las buenas prácticas a la hora de desarrollar nuestro propio theme.
Aprende cómo se comporta un tema, controla el Loop, crea menús dinámicos, zonas de widgets, tipos de contenidos personalizados, metaboxes y alguna sorpresa más.
Este documento describe el proyecto de limpieza, acondicionamiento y rediseño del patio interior del IES Tineo. Incluye fotos que muestran el estado del patio antes y después de la renovación, destacando las mejoras realizadas como la limpieza y el nuevo diseño.
Este documento trata sobre periféricos de salida como monitores, impresoras, sintetizadores de voz y visualizadores. Explica que los monitores están compuestos de píxeles y que cuantos más píxeles tengan, mayor es su resolución. Describe varios tipos de impresoras como de rueda, matriciales, de barras, de cadena, térmicas, de inyección de tinta, electrostáticas y láser. Finalmente, menciona brevemente que los sintetizadores de voz emiten son
Este documento resume los objetivos y factores que afectan la distribución en planta. Explica que los objetivos principales son integrar todos los factores que afectan la distribución y asegurar el movimiento de materiales y trabajo a través de distancias mínimas. También detalla 8 factores clave que pueden afectar la distribución, incluyendo materiales, maquinaria, trabajadores, movimientos, esperas, servicios, edificios e flexibilidad. Concluye que una distribución efectiva integra todos los recursos de la planta para minim
Este documento describe las diferentes fases de la informática y su evolución a través del tiempo. Comienza con las primeras herramientas de cálculo como el ábaco. Luego describe los primeros avances mecánicos como la máquina sumadora de Pascal y de Leibniz. Finalmente detalla las 5 generaciones de ordenadores, desde las primeras basadas en válvulas hasta la era de los microprocesadores y los ordenadores personales.
Este documento resume las capas de transporte y red del modelo OSI. La capa de transporte se encarga de la transferencia libre de errores de datos entre emisor y receptor a través de la red, usando protocolos como TCP y UDP. La capa de red proporciona conectividad entre sistemas de hosts mediante el direccionamiento y la selección de ruta, usando servicios orientados y no orientados a conexión. La capa de transporte prepara los datos para su envío a través de la capa de red.
Conférence Bleu Ciel - La Menuiserie Loizeau Loizeau85
Un résumé de la conférence Bleu Ciel de Vendredi 17 janvier 2014 lors de notre soirée privée "J'éco - Rénove, J'économise" jusqu'à 80% sur mes travaux.
El documento resume las discusiones de 17 sesiones de debate ciudadano sobre la despoblación en la región de Maestrazgo en España. Los vecinos identificaron problemas como la falta de comunicaciones e internet, dificultades para los jóvenes agricultores, y pérdida de empleos. Sugirieron dar más apoyo a la agricultura, turismo sostenible, y empresas que generen empleos, especialmente para mujeres. También pidieron menos burocracia y más incentivos para vivir en áreas rurales.
Este documento presenta el proyecto aplicado de diseño de plantas industriales de 2014 para el programa de ingeniería industrial. Contiene tres trabajos colaborativos que incluyen la presentación de una fábrica de calzado, el diseño de su planta productiva mediante diagramas de procesos y planos, y el estudio de su sistema logístico y de flujo de materiales. Finalmente, se presentan las conclusiones sobre los conocimientos adquiridos en el curso aplicando herramientas de diseño.
Este documento resume los conceptos clave sobre virus informáticos, incluyendo su definición, clasificaciones, ejemplos de virus comunes, características generales, cómo funcionan los antivirus y ejemplos de antivirus populares. También incluye una sección sobre los posibles efectos de una infección y las fuentes consultadas.
El documento describe una película llamada "Manos Milagrosas" sobre dos niños nacidos con sus cabezas unidas y el doctor que trató de separarlos. También cuenta la historia del doctor desde su infancia, cuando tuvo problemas en la escuela que se resolvieron cambiándolo de institución, lo que le permitió graduarse como médico cirujano y empezar a trabajar en una clínica, donde al principio tuvo problemas pero logró operar exitosamente a un paciente de emergencia.
El documento describe los componentes principales de un pizarrón interactivo, incluyendo una computadora, video-proyector, pantalla interactiva y software especializado. El pizarrón interactivo permite proyectar contenido de la computadora sobre una superficie y hacer anotaciones de manera táctil, guardar y compartir estas anotaciones.
El documento describe los principales recursos naturales del Perú, incluyendo recursos renovables como plantas, animales, agua y suelo; recursos no renovables como petróleo, sal y minerales; y los recursos específicos de la costa peruana como petróleo, sal, fosfatos, hierro, vegetación, aves guaneras y camarón.
Innover ou périr? Promouvoir une culture d’innovationIslem Yezza
Au cours des dernières décennies, l’innovation est devenue une priorité stratégique pour les entreprises évoluant dans un environnement incertain aux contours mouvants et aux caractéristiques volatiles. Pourtant, peu de compagnies parviennent vraiment à innover.
El documento describe el desastre de Chernobyl ocurrido en 1986 cuando explotó el reactor nuclear número 4 en la planta de energía de Chernobyl en Ucrania. La explosión liberó una gran nube radiactiva que contaminó amplias zonas de la Unión Soviética y Europa. Cientos de miles de personas trabajaron para contener los efectos de la radiactividad y construir un sarcófago alrededor del reactor dañado. El desastre fue considerado el peor accidente nuclear e industrial de la historia.
El documento describe conceptos básicos de sistemas operativos, incluyendo procesadores (conjuntos de instrucciones RISC y CISC, registros como contador de programa y puntero de pila), syscalls, traps, memoria, procesos, bloques de control de procesos, espacio de direcciones y tablas de procesos. Explica los diferentes tipos de procesadores, registros y su función, y define una syscall como una llamada al sistema que cambia el modo de ejecución del sistema operativo de usuario a núcleo.
El documento describe los planes para nombrar la biblioteca escolar y celebrar el Día del Libro. Se propusieron varios nombres posibles y los estudiantes y maestros eligieron "Duende Azul". Maryta Berenguer fue nombrada la madrina de la biblioteca. Durante la celebración, se revelará el nuevo nombre de la biblioteca, habrá lectura, cuentos y merienda.
estas diapositivas fueron diseñadas con diferentes tipos de funciones , incluyen gráficas , comportamiento y tabulador espero y os sirvan de mucho
eso a sido todo
Curso avanzado de programación y configuración de WordpressIrontec
Este documento describe los pasos para instalar WordPress en un servidor, incluyendo la instalación del software, la creación de una base de datos y usuario, la configuración del archivo wp-config.php, la optimización de URLs, y la localización de WordPress a otros idiomas mediante la descarga e instalación de paquetes de idiomas.
El documento explica cómo instalar y configurar WordPress en un servidor propio o en un hosting compartido. Detalla los requisitos técnicos mínimos, el proceso de instalación, la configuración básica, la gestión de usuarios, plugins y temas, y cómo realizar copias de seguridad y actualizaciones. El objetivo es capacitar a los usuarios para montar un sitio web con WordPress y gestionarlo de forma autónoma.
Documentación de cómo podemos instalar y configurar de una manera sencilla un sitio web basado en Wordpress 3.8.
Este manual nos explica paso a paso cómo instalar y configurar para poner en marcha la versión 3.8 de Wordpress en un hosting externo como en nuestra propia máquina.
Esta basado en la documentación de Iñaki Arenaza (@iarenaza) "Monta Worpdress en tu Empresa" y en la documentación de Dani Reguera (@dreguera) "Los mejores plugins para Wordpress".
Este documento describe WordPress, un sistema de gestión de contenidos libre y de código abierto popular para publicar contenido en la web. Explica qué es WordPress, sus ventajas como facilidad de instalación y personalización, a quién va dirigido, cómo instalarlo y convertirlo en un CMS completo mediante el uso de temas y plugins. También proporciona enlaces a recursos como el códex de WordPress y ejemplos de su uso.
Este documento ofrece consejos sobre cómo aprovechar al máximo las funcionalidades de WordPress. Explica que WordPress permite gestionar usuarios y permisos de forma sencilla, crear tipos de contenido personalizados y usar plugins para añadir funcionalidad. También recomienda instalar plugins de seguridad y optimización para proteger el sitio y mejorar el rendimiento.
Docker permite crear contenedores ligeros que ofrecen portabilidad, ligereza y autosuficiencia. Un documento explica cómo instalar Docker y crear un entorno de desarrollo para WordPress usando Docker Compose con contenedores para MySQL y WordPress. También describe cómo crear una imagen ISO de WordPress en Debian para implementarla en producción.
Este documento proporciona una introducción al servidor web Nginx. Explica cómo instalar Nginx, configurar hosting virtuales, alias, control de acceso y autenticación básica. También cubre cómo usar FastCgi con Nginx para ejecutar scripts como WordPress y realiza comparaciones del rendimiento y uso de memoria de Nginx frente a Apache.
Este documento proporciona instrucciones para instalar un servidor web en casa usando Debian GNU/Linux. Explica cómo instalar Apache, PHP, MySQL y phpMyAdmin, y configurar archivos y dominios virtuales. También cubre cómo agregar un sitio de WordPress y configurar DNS dinámico.
Wordpress.com ofrece sitios web básicos gratuitos pero con limitaciones, mientras que Wordpress.org permite instalar y administrar Wordpress de manera independiente. Para usar Wordpress.org, se requiere contratar hosting, descargar e instalar Wordpress, y configurar la base de datos. Luego se pueden personalizar los sitios mediante temas, plugins y configuraciones adicionales.
Buddypress: Social Networking, in a BoxIñaki Arenaza
Este documento presenta una introducción a BuddyPress, una herramienta que permite añadir funcionalidades de red social a WordPress. Explica cómo instalar y configurar BuddyPress de forma básica, incluyendo la configuración de perfiles de usuario y la adición de campos personalizados. También describe brevemente otras características como grupos de usuarios, amistades y mensajería privada. El objetivo es capacitar a los asistentes para instalar y personalizar una instalación de BuddyPress.
Este documento describe los pasos para instalar CMS como Joomla y Wordpress en un servidor virtual usando Apache. Se requieren componentes como Apache, PHP y MySQL. Se crean carpetas y bases de datos, y se configuran los archivos de Apache para cada sitio virtual. Luego se descargan e instalan los paquetes de Joomla y Wordpress siguiendo los asistentes de instalación para configurar las conexiones a la base de datos.
Este documento proporciona consejos sobre seguridad en WordPress, incluyendo mantener contraseñas seguras y software actualizado, instalar plugins y themes de fuentes confiables, configurar .htaccess para restringir acceso y proteger contra ataques de fuerza bruta, y utilizar plugins como Wordfence, Sucuri Security y NinjaFirewall para mejorar la seguridad general del sitio.
Este documento trata sobre el acceso a bases de datos MySQL desde PHP. Explica cómo instalar MySQL y phpMyAdmin, conectarse a la base de datos desde PHP usando funciones como mysql_connect(), mysql_query() y mysql_fetch_array(), y el uso del lenguaje SQL para consultas, inserciones, actualizaciones y eliminaciones.
PHP Tema 4 - Acceso a bases de datos MySQL en PHPSpacetoshare
Este documento trata sobre el acceso a bases de datos MySQL desde PHP. Explica cómo instalar MySQL y phpMyAdmin, y describe las principales funciones de PHP para conectarse a una base de datos, realizar consultas SQL, procesar resultados y cerrar la conexión. También incluye ejemplos sencillos de cómo mostrar datos almacenados en una tabla de noticias.
Este documento presenta una introducción al desarrollo de aplicaciones con el framework Zend. Explica la arquitectura MVC y los requisitos técnicos para usar Zend Framework. También describe la estructura de directorios recomendada y explica cómo configurar el archivo index.php para inicializar la aplicación y manejar las rutas.
Este documento proporciona instrucciones para instalar y configurar un entorno de desarrollo local con CakePHP y PostgreSQL en Windows, incluyendo la instalación de Apache, PHP, PostgreSQL, la configuración de los archivos httpd.conf y php.ini, y la instalación de CakePHP.
Este documento trata sobre el acceso a bases de datos MySQL desde PHP. Explica cómo instalar y configurar MySQL, crear bases de datos y tablas mediante lenguaje SQL, y cómo conectarse a la base de datos y realizar consultas desde PHP utilizando funciones como mysql_connect(), mysql_query() y mysql_fetch_array(). También presenta la herramienta phpMyAdmin para administrar bases de datos de forma gráfica.
Este documento explica cómo instalar WordPress, incluyendo requerir un servidor, base de datos MySQL, descargar los archivos de WordPress, configurar el archivo wp-config.php, subir los archivos al servidor, y ejecutar la instalación. También describe los roles de usuario, carpeta wp-content, plugins comunes, widgets, temas, y ajustes de WordPress.
Este documento trata sobre el acceso a bases de datos MySQL desde PHP. Explica cómo instalar y configurar MySQL, utilizar herramientas como phpMyAdmin, el lenguaje SQL y las funciones de PHP para conectarse a la base de datos, realizar consultas y procesar los resultados.
Similar a Cursowordpress 091124113422-phpapp02 (20)
1. Curso avanzado de programación y configuración de Wordpress
Curso de Wordpress
2. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
● Instalación en Servidor
– Obtener Wordpress
● Descargamos la última versión de Wordpress el el
directorio donde vamos a trabajar:
– wordpress@lander:/var/www/blog$ wget
http://wordpress.org/latest.zip
● Extraemos los ficheros del archivo "latest.zip":
– wordpress@lander:/var/www/blog$ unzip latest.zip
3. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
– Creación de la base de datos
● Creamos una base de datos y un usuario para nuestro
Wordpress:
wordpress@lander:/var/www/blog$ mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 443
Server version: 5.0.51a-24+lenny2-log (Debian)
Type 'help;' or 'h' for help. Type 'c' to clear the buffer.
mysql» create database wordpress_db;
Query OK, 1 row affected (0.02 sec)
4. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
mysql» grant all privileges on wordpress_db.* to
wordpressdbuser@'localhost' identified by 'wordpressdbpass';
Query OK, 0 rows affected (0.00 sec)
mysql» flush privileges;
Query OK, 0 rows affected (0.00 sec)
5. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
– Conectar Wordpress con la base de datos (Fichero de
configuración)
● El fichero básico de configuración de Wordpress en "wp-
config.php", que es precisamente el que tendremos
que modificar para añadir los datos de conexión a la
base de datos.
● El fichero de configuración no existe por lo que
deberemos de copiar el fichero plantilla que provee
Wordpress llamado "wp-config-sample.php" y editarlo.
wordpress@lander:/var/www/blog/wordpress$ cp wp-config-
sample.php wp-config.php
6. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
● Entre las opciones del fichero encontramos las
configuraciones respectivas a la conexión a base de
datos, que modificaremos con nuestros valores.
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wordpress_db');
/** MySQL database username */
define('DB_USER', 'wordpressdbuser');
/** MySQL database password */
define('DB_PASSWORD', 'wordpressdbpass');
/** MySQL hostname */
define('DB_HOST', 'localhost');
7. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8');
/**
* WordPress Database Table prefix.
*
* You can have multiple installations in one database if you give
each a unique
* prefix. Only numbers, letters, and underscores please!
*/
$table_prefix = 'wp_';
8. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
– Creación de las tablas de Wordpress en su base de datos
● Dejemos que Wordpress lo haga solo.
– Wordpress, finalizando la instalación
● Accedemos a la url del host. (ref: wordpress.conf)
http://wordpress.irontec.com/
● Wordpress nos redirigirá a una página de instalación.
9. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
10. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
● Seguimos el formulario y Wordpress creará las tablas en la
base de datos. Por último nos ofrecerá el usuario y
contraseña del administrador que apuntaremos para
posteriormente cambiarla.
11. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
12. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
● Hacemos login y ya está instalado Wordpress.
– * Cambiar la contraseña.
13. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
● Optimización de URLs
● Por defecto Wordpress escribe y recibe las URLs mediante
parámetros (consulta-valor). Hoy en día la tendencia es
utilizar URLs SEO, que optimiza el posicionamiento en los
motores de búsqueda (Google).
● Url permite generar URLs SEO de manera muy sencilla.
Entramos al panel de administración » Settings »
Permalinks:
14. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
15. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
● Elegimos el formato que más nos convezca o generamos
uno nosotros mismos mediante Custom Structure.
● Wordpress ofrece diferentes variables para crear nuestra
propia estructura:
(http://codex.wordpress.org/Using_Permalinks)
– %year%
– %monthnum%
– %day%
– %hour%
– %minute%
– %second%
– %postname%
– %post_id%
– %category%
– %tag%
16. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
● ej: /%postname%/
● Convertiremos "http://wordpress.irontec.com/?p=1" en
"http://wordpress.irontec.com/hello-world/".
17. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
● Hay que crear un fichero .htaccess:
«IfModule mod_rewrite.c»
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
«/IfModule»
● Y habilitar el módulo "rewrite" de apache:
# a2enmod rewrite ; /etc/init.d/apache2 restart
18. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
● Localización de Wordpress
– Obteniendo ficheros
● Se pueden obtener los ficheros de traducción de Wordpress
en
http://codex.wordpress.org/WordPress_in_Your_Language
en muchos idiomas.
● Como ejemplo bajaremos el paquete de idioma de
castellano:
wordpress@lander:/var/www/blog/files/langs$ wget
http://carrero.es/wp-content/uploads/2007/05/wp2.8.4-
es_ES.zip
19. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
● Y lo descomprimimos en el directorio de "languages" de
wordpress (si el directorio languages no existe, crearlo en
"wp-includes"):
●
wordpress@lander:/var/www/blog/wordpress/wp-
includes/languages$ unzip ../../../files/langs/wp2.8.4-
es_ES.zip
20. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
– Configurando el Idioma de Wordpress
● Wordpress no tiene un switcher (user friendly) de idiomas
por lo que para ver Wordpress en otro idioma hay que
definirlo en el fichero de configuración principal "wp-
config.php".
/**
* WordPress Localized Language, defaults to English.
* Change this to localize WordPress. A corresponding MO file for
the chosen
* language must be installed to wp-content/languages. For example,
install
* de.mo to wp-content/languages and set WPLANG to 'de' to
enable German
* language support.
*/
define ('WPLANG', 'es_ES');
21. Curso avanzado de programación y configuración de Wordpress
Instalación de Wordpress
● Una vez hecho este cambio Wordpress estará traducido.
22. Curso avanzado de programación y configuración de Wordpress
Localización de Wordpress
– Ficheros PO y MO
● Wordpress utiliza el sitema "gettext" para su traducción.
Gettext utiliza tres tipos de ficheros para crear y almacenar
las cadenas de traducción:
● .POT (Portable Object Template)
– Es el fichero que recoge todas las cadenas que se
encuentran en el código llamadas mediante las funciones
__() o _e().
● .PO (Portable Object)
– Es el fichero que contiene las traducciones en el idioma
que se desea utilizar. Referencia las cadenas en el idioma
original al idioma a traducir.
23. Curso avanzado de programación y configuración de Wordpress
Localización de Wordpress
● .MO (Machine Object)
– Es el fichero fichero binario resultante de la compilación del
fichero ".po".
● Ejemplo de cómo se recogen los datos en un fichero ".po":
24. Curso avanzado de programación y configuración de Wordpress
Localización de Wordpress
#: wp-admin/index.php:24
#: wp-admin/menu.php:28
msgid "Dashboard"
msgstr "Escritorio"
● En forma de comentario (#comentario) se muestra en qué
ficheros aparece la cadena. Ésto nos facilitará meter la
traducción en un ámbito o un contexto para conseguir una
mejor coherencia en las frases. "msgid" es la cadena real
que se encuentra en los ficheros; y "msgstr" es la
traducción.
25. Curso avanzado de programación y configuración de Wordpress
Localización de Wordpress
– Herramientas de localización
● POEDIT (http://www.poedit.net/download.php):
– Es un programa de escritorio que nos permite editar de
manera visual los ficheros ".po" y que compila
automáticamente los ficheros al guardarlos.
● Abrimos el fichero ".po" con esta herramienta que nos
facilita la traducción de las cadenas del proyecto.
26. Curso avanzado de programación y configuración de Wordpress
Localización de Wordpress
●
27. Curso avanzado de programación y configuración de Wordpress
Localización de Wordpress
● Hemos traducido la cadena "Dashboard" como "Super
Escritorio" y una vez guardado el resultado es:
28. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
Los temas en Wordpress se albergan en el directorio "wp-
content/themes/", donde Wordpress mirará automáticamente para
cargarlos y poder activarlos mediante la administración.
29. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
● Partes de un tema
– Los temas de Wordpress requieren de al menos dos
ficheros, "index.php" y "style.css".
– style.css
● En este fichero se declara el tema, es el fichero que
Wordpress "parseará" para obtener los datos del tema.
● La declaración del tema:
/*
THEME NAME: Example Theme 1
THEME URI: http://wordpress.irontec.com
DESCRIPTION: Tema de ejemplo 1
VERSION: 0.1
AUTHOR:Lander Ontoria
AUTHOR URI:
TAGS: developer
30. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
● El fichero es una hoja de estilos (CSS) donde escribiremos
nuestro css.
div#container {
float:right;
margin:0 0 0 -200px;
width:100%;
}
div#content {
margin:0 0 0 200px;
}
31. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
– index.php
● Este fichero alberga la estructura básica de la página.
● Wordpress tiene una estructura modular que permite
mediante llamadas a funciones obtener y dibujar
diferentes partes del contenido (
http://codex.wordpress.org/Template_Tags,
http://codex.wordpress.org/Stepping_Into_Templates ).
«?php get_header() ?» Mediante esta función obtendremos la
cabecera (título del blog, ...).
«div id="container"»
«div id="content"»
32. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
«?php while ( have_posts() ) : the_post() ?» Aquí nos encontramos
con un while que si hay posts nos los mostrará.
«div id="post-«?php the_ID() ?»" class="post-class"»
«h2 class="entry-title"»«a href="«?php the_permalink() ?»" title="«?
php printf( __('Permalink to %s'), the_title_attribute('echo=0') ) ?»"
rel="bookmark"»«?php the_title() ?»«/a»«/h2»
«div class="entry-date"»«abbr class="published" title="«?php
the_time('Y-m-dTH:i:sO') ?»"»«?php unset($previousday);
printf( __( '%1$s – %2$s'), the_date( '', '', '', false ),
get_the_time() ) ?»«/abbr»«/div»
«div class="entry-content"»
«?php the_content( __( 'Read More «span class="meta-
nav"»»«/span»') ) ?»
«?php wp_link_pages('before=«div class="page-link"»' . __( 'Pages:') .
'&after=«/div»') ?»
«/div»
33. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
«div class="entry-meta"»
«span class="author vcard"»«?php printf( __( 'By %s'), '«a class="url
fn n" href="' . get_author_link( false, $authordata-»ID,
$authordata-»user_nicename ) . '" title="' . sprintf( __( 'View all
posts by %s'), $authordata-»display_name ) . '"»' .
get_the_author() . '«/a»' ) ?»«/span»
«?php edit_post_link( __( 'Edit'), "ttttt«span class="edit-link"»",
"«/span»nttttt«span class="meta-sep"»|«/span»n" ) ?»
«span class="comments-link"»«?php
comments_popup_link( __( 'Comments (0)'), __( 'Comments (1)'),
__( 'Comments (%)') ) ?»«/span»
«/div»
«/div»«!-- .post --»
«?php comments_template() ?» Muestra el box de comentarios, ya
sea para un post o una página.
«?php endwhile; ?»
35. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
– Más ficheros "imprescindibles" para un tema
● * style.css
● * index.php
● * comments.php
– * El tema de dibuja los comentarios.
● * comments-popup.php
– * El tema de los popup de los comentarios.
● * single.php
– * Es el fichero que se usará para mostrar un solo post.
● * page.php
– * El tema de las páginas.
● * category.php
– * El tema de las categorías.
36. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
● * author.php
– * El tema del autor.
● * date.php
– * Cuando se llama a una fecha, el formato se coge de
este fichero.
● * search.php
– * El fichero de búsqueda.
● * 404.php
– * 404.
● En muchos de los temas que nos podamos descargar de
Internet encontraremos un fichero llamado
"functions.php". Este fichero suele contener métodos y
funciones que habitualmente se usar para dibujar
contenido o escribir funciones propias para el manejo del
tema.
37. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
– Estructura del tema "default"
● wordpress@lander-laptop:/var/www/blog/wordpress/wp-
content/themes/default$ tree .
.
|-- 404.php
|-- archive.php
|-- archives.php
|-- comments-popup.php
|-- comments.php
|-- footer.php
|-- functions.php
|-- header.php
|-- image.php
39. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
|-- screenshot.png
|-- search.php
|-- sidebar.php
|-- single.php
`-- style.css
1 directory, 26 files
40. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
● Instalación de un tema
– Disponemos de gran cantidad de temas en
"http://wordpress.org/extend/themes/" que nos
servirán de base para que con ligeras modificaciones
podamos construirnos nuestros propios temas.
– Una vez hemos elegido qué tema queremos para
nuestro Wordpress o de que tema queremos partir el
primer paso es descargarlo y descomprimirlo en el
directorio "/wp-content/themes/":
41. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
wordpress@lander-laptop:/var/www/blog/files/themes$ wget
http://wordpress.org/extend/themes/download/arclite.2.02.zip
wordpress@lander-laptop:/var/www/blog/wordpress/wp-
content/themes$ unzip ../../../files/themes/arclite.2.02.zip
– El siguiente paso será habilitarlo desde la zona de
administración de Wordpress en el menú de
administración de temas. El tema se activará y el
resultado:
42. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
43. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
● Desarrollo de temas propios
– Para desarrollar un tema propio es necesario tener en
cuenta que hay que partir de dos ficheros,
"index.php" y "style.css". Una vez tenemos estos dos
ficheros la dinámica es ir reescribiendo los ficheros
que queremos para poner nuestra propia estructura y
estilo.
44. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
– Una manera para facilitar la identificación de las
diferentes partes de la estructura de Wordpress es
identificar las zonas mediante herramientas de
desarrollo (Firebug) e ir construyendo una hoja de
estilos que visualmente facilite la identificación.
#page{
float:none;
width:1024px;
margin:0 auto;
/*example*/ border:1px solid red;
}
45. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
46. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
– Pero lo más común para empezar a desarrollar un
tema es extenderse de otro o sobre escribirlo ya que
de esta manera disminuiremos la opción de error y
dispondremos de multitud de métodos ya escritos
para dibujar y gestionar el contenido.
– Internet nos ayuda a encontrar diferentes temas, pero
entre las opciones que encontraremos tenemos
"temas en blanco". Los temas en blanco están
desarrollados para que con las mínimas
modificaciones de código HTML, PHP o Javascript,
apliquemos nuestros propios estilos a nuestro
Wordpress.
47. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
– Referencias:
● http://www.plaintxt.org/themes/sandbox/
● http://www.jdavidmacor.com/2007/09/17/wordpress-theme-
building-resources/
48. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
● Sandbox
– Sandbox es un tema que viene completamente en blanco
con un estilo (CSS) pre formado con varias opciones de
configuración. Este tema en concreto es muy fácil de
modificar y el código está bastante documentado.
– Sandbox ofrece varias configuraciones de la estructura de
Wordpress modificando una línea en la hoja de estilos:
49. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
/* Two-column with sidebar on left from the /examples/ folder */
@import url('examples/2c-l.css');
50. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
/* Two-column with sidebar on right from the /examples/ folder */
@import url('examples/2c-r.css');
51. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
@import url('examples/3c-l.css');
52. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
● Recursos para desarrolladores y documentación en la
red
– * Temas Wordpress:
● * http://wordpress.org/extend/themes/
– * Desarrollo (Api del desarrollador de Wordpress):
● * http://codex.wordpress.org/
● * http://codex.wordpress.org/Theme_Development
● * http://codex.wordpress.org/Stepping_Into_Templates
● * http://codex.wordpress.org/Template_Tags
53. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Temas)
– * Temas en blanco:
● * http://www.jdavidmacor.com/2007/09/17/wordpress-
theme-building-resources/
● * http://www.plaintxt.org/themes/sandbox/
– * Debuging
● * Firebug
54. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
Plugins
● Los plugins en Wordpress se albergan en el directorio
"wp-content/plugins/", donde Wordpress mirará
automáticamente para cargarlos y poder activarlos
mediante la administración.
55. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
56. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
● Partes de un plugin
– A diferencia de los temas de Wordpress, los plugins
solo requieren un fichero para funcionar.
Examinemos el plugin de "Hello Dolly":
57. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
– hello.php
● Este fichero es el único del que se compone el plugin.
"Hello Dolly" es un plugin sencillo que lo único que
hace es sacar una frase aleatoria el la parte superior de
la zona de administración de Wordpress.
58. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
● En este fichero se declara el plugin, es el fichero que
Wordpress "parseará" para obtener los datos del plugin.
● La declaración de un plugin:
«?php
Plugin Name: Hello Dolly
Plugin URI: http://wordpress.org/#
Description: This is not just a plugin, it symbolizes the hope and
enthusiasm of an entire generation summed up in two words sung
most famously by Louis Armstrong: Hello, Dolly. When activated
you will randomly see a lyric from «cite»Hello, Dolly«/cite» in the
upper right of your admin screen on every page.
Author: Matt Mullenweg
Version: 1.5.1
Author URI: http://ma.tt/
*/
59. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
● El código:
function hello_dolly_get_lyric() {
/** These are the lyrics to Hello Dolly */
$lyrics = "Hello, Dolly
Well, hello, Dolly
It's so nice to have you back where you belong
You're lookin' swell, Dolly
I can tell, Dolly
Dolly'll never go away again";
// Here we split it into lines
$lyrics = explode("n", $lyrics);
// And then randomly choose a line
return wptexturize( $lyrics[ mt_rand(0, count($lyrics) - 1) ] );
}
60. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
// This just echoes the chosen line, we'll position it later
function hello_dolly() {
$chosen = hello_dolly_get_lyric();
echo "«p id='dolly'»$chosen«/p»";
}
// Now we set that function up to execute when the admin_footer
action is called
add_action('admin_footer', 'hello_dolly'); Lanza una función en
una acción especifica que en este caso es en el admin_footer
61. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
// We need some CSS to position the paragraph
function dolly_css() {
$x = ( 'rtl' == get_bloginfo( 'text_direction' ) ) ? 'left' : 'right';
echo "
«style type='text/css'»
#dolly {
position: absolute;
top: 4.5em;
margin: 0;
padding: 0;
$x: 215px;
font-size: 11px;
}
«/style» ";
}
62. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
add_action('admin_head', 'dolly_css'); Lanza una función en una
acción especifica que en este caso es en el admin_header
● Los plugins de Wordpress se valen de diferentes hooks,
acciones y filtros para lanzar funciones, sustituir o dibujar
contenido.
63. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
● Instalación de plugins
– Disponemos de una gran cantidad de plugins de
Wordpress que podremos descargar desde
http://wordpress.org/extend/plugins/ y en unos pocos
pasos activarlos para nuestro Wordpress.
– Obtener el plugin:
wordpress@lander-laptop:/var/www/blog/files/plugins$ wget
http://downloads.wordpress.org/plugin/random-youtube-video.zip
– Descomprimir el plugin en "wp-content/plugins/":
wordpress@lander-laptop:/var/www/blog/wordpress/wp-
content/plugins$ unzip ../../../files/plugins/random-youtube-
video.zip
64. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
– Por último deberemos acceder al panel de administración
de Wordpress y activar el plugin.
65. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
– Este plugin en concreto sirve para sacar vídeos aleatorios
de Youtube que previamente hemos definido en una
lista.
66. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
– El plugin ofrece un Widget de Wordpress que deberemos
activar.
67. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
– El resultado:
68. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
● Desarrollo de un plugin propio
– Como ya hemos comentado anteriormente los
plugins de Wordpress solo necesitan de un fichero
para funcionar y donde son declarados, pero por qué
no estructurar un plugin de mejor manera.
– Vamos a crear un plugin llamado Simple Plugin para
desarrollar esta documentación sobre el mismo y
hacer un plugin que interactue de diferentes maneras
con Wordpress.
69. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
– Estructura del plugin
● En un primer paso crearemos un directorio en "wp-
content/plugins/" para nuestro plugin.
– wordpress@lander-laptop:/var/www/blog/wordpress/wp-
content/plugins$ mkdir simple_plugin
● Y un fichero principal para declarar nuestro plugin y
cargar las diferentes funciones que vallamos a utilizar.
– wordpress@lander-laptop:/var/www/blog/wordpress/wp-
content/plugins/simple_plugin$ touch simple_plugin.php
70. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
– Declaración del plugin
● simple_plugin.php:
/*
Plugin Name: Simple Plugin
Plugin URI: http://wordpress.irontec.com
Description: Simple Plugin Description.
Version: 1.0
Author: Lander Ontoria
Author URI: http://www.irontec.com
*/
Solamente con estos pasos Wordpress ya es capaz de leer
la información del plugin y ofrecerlo en su lista para
poder instalarlo.
71. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
72. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
– simple_plugin.php:
/*
* ####### VARIABLES
*/
/*
*
* Definimos la variable PLUGIN_URL
*
*/
if (!defined('PLUGIN_URL'))
define('PLUGIN_URL',WP_CONTENT_URL.'/plugins/');
73. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
/*
* En esta variable tenemos la url completa hasta el directorio
* de plugins que utilizaremos en diferentes lugares de los
* ficheros que compondrán este plugin.
*/
/*
*
* Definimos la variable SP_TEXT_DOMAIN
*
*/
define('SP_TEXT_DOMAIN','simple_plugin');
74. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
/*
* En esta variable tendremos almacenado el nombre distintivo del
plugin.
* Se usará para el texte domain de nuestro plugin.
*/
/*
* ####### FICHEROS Y LIBRERÍAS
*/
/*
*
* Cargamos nuestro fichero de funciones
*
*/
75. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
require_once (dirname(__FILE__).'/libs/functions.php');
/*
* Este fichero lo utilizaremos para cargar y escribir funciones.
*/
/*
*
* cargamos la adminsitración para nuestro plugin
*
*/
require_once (dirname(__FILE__).'/admin/admin.php');
76. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
/*
* Este fichero controlará y cargará lo necesario para la zona de
adminstración
*/
/*
*
* cargamos el fichero que controla nuestro plugin
*
*/
require_once (dirname(__FILE__).'/simple_plugin_public.php');
/*
* Este fichero controlará y cargará lo necesario para la zona pública
*/
77. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
– Páginas y opciones de administración de los plugins
● Este plugin ofrecerá dos páginas de administración del
mismo.
● El fichero de control es "/admin/admin.php":
/*
* Este fichero es el que mediante acciones y funciones de wordpres
* cargará la zona de administración de nuestro plugin.
*/
78. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
/*
* INIT
*
* en la acción admin_init de Wordpress
* se lanzará la función que hayamos definido.
*/
79. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
function sp_admin_init(){
/*
* $jsLibs, es un array donde hemos definido qué librerías de
javascript
* queremos tener cargadas en la zona de adminstración.
*
* Wordpress pone a nuestra disposición diferentes librerías,
* que pueden ser cargadas mediante su "alias".
*
*
http://codex.wordpress.org/Function_Reference/wp_enqueue_scri
pt
*
* En esta dirección tenemos la lista de las librerías disponibles
*/
80. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
$jsLibs = array('jquery','jquery-ui-core','jquery-ui-tabs');
foreach ($jsLibs as $lib) wp_enqueue_script($lib);
/*
* wp_enqueue_script() es la función de Wordpress que encola
* las librerías que llamamos.
*/
/*
* i_wp_add es una clase que hemos implementado para cargar y
encolar
* diferentes librerías propias. La clase se encuentra definida en
* "functions.php"
*/
i_wp_add::wp_add_css(PLUGIN_URL.'simple_plugin/admin/css/adm
in_style.css','admin');
i_wp_add::wp_add_js(PLUGIN_URL.'simple_plugin/admin/js/admin
_script.js','admin');
}
81. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
add_action('admin_init', 'sp_admin_init');
/*
* PAGES
*
* Mediante la acción admin_menu, cargaremos los menús que
* necesitemos para nuestro plugin.
*/
function sp_admin_page_1(){
/*
* Este fichero dibujará y gestionará una página de administración
*/
include( dirname(__FILE__).'/sp_admin_page_1.php');
}
82. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
function sp_admin_page_2(){
}
/*
* sp_add_menu_pages ()
*
* Es la función que se llamara en la acción admin_menu
*
* Se encargará de cargar en el menú de administración, los
* menús y submenús que declaremos
*
*/
83. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
function sp_add_menu_pages (){
add_menu_page(
'Simple Plugin Admin Page 1', //Título de la página
'Simple Plugin', //Nombre del botón del menú
1, //Prioridad
'sp_admin_page_1.php', //fichero
'sp_admin_page_1' //función
);
add_submenu_page('sp_admin_page_1.php', 'Simple Plugin Admin
Page 2', 'Simple Plugin Conf', 1, 'sp_admin_page_2.php',
'sp_admin_page_2');
}
add_action('admin_menu', 'sp_add_menu_pages');
84. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
● Fichero que cargará el primer menú
"/admin/sp_admin_page_1.php":
«div class="wrap"»
«h2»«?php echo __('Simple Plugin',SP_TEXT_DOMAIN) ?»«/h2»
«div id="tabscontent"»
«ul»
«li»«a href="#tabs-1"»«?php echo __('hola
mundo',SP_TEXT_DOMAIN) ?»«/a»«/li»
«li»«a href="#tabs-2"»«?php echo __('Simple Plugin test
2',SP_TEXT_DOMAIN) ?»«/a»«/li»
«/ul»
85. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
«div id="tabs-1"»
«form method="post" action="options.php"»
«?php wp_nonce_field('update-options'); ?»
«table class="form-table"»
«tr valign="top"»
«th scope="row"»«?php echo __('número de veces de hola
mundo',SP_TEXT_DOMAIN) ?»«/th»
«td»«input type="text" name="sp_hola_mundo_times" value="«?
php echo get_option('sp_hola_mundo_times'); ?»" /»«/td»
«/tr»
«tr valign="top"»
«th scope="row"»«?php echo __('color del borde de hola
mundo',SP_TEXT_DOMAIN) ?»«/th»
«td»«input type="text" name="sp_hola_mundo_border_color"
value="«?php echo
get_option('sp_hola_mundo_border_color'); ?»" /»«/td»
«/tr»
87. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
● Este fichero está preparado para albergar diferentes tabs
(jquery-ui-tabs) para dar una mejor apariencia a nuestro
plugin, pero lo más interesante que podemos encontrar es
el contenido que está en el primer "tab". Encontramos un
formulario estándar de Wordpress cuya función es mostrar
un formulario para administrar valores y guardarlos
automáticamente. Estos valores los podremos recuperar
mediante la función de Wordpress "get_option()".
88. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
● En esta captura vemos cómo se han generado dos botones
de administración para nuestro plugin.
89. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
● En esta captura vemos las pestañas que hemos definido y el
formulario de administración resultante.
90. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
● La segunda pestaña.
91. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
– Estructura del plugin (2), directorios de administración
.
|-- admin
| |-- admin.php
| |-- css
| | `-- admin_style.css
| |-- js
| | `-- admin_script.js
| `-- sp_admin_page_1.php
(...)
92. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
– Contenido del plugin en la zona pública
● La forma más habitual de sacar contenido al Blog es
hacer filtros.
● Para nuestro plugin hemos creado una página de
Wordpress y hemos escrito en el cuerpo de la página el
tag de control que hemos definido para nuestro plugin.
93. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
94. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
● El tag de nuestro plugin es "[simple_plugin|hola_mundo]".
Nuestro plugin recibirá como variable de configuración
o carga lo que encuentre después del símbolo | .
● El fichero de control de la zona pública es
"simple_plugin_public.php":
/*
* Este fichero es el que mediante acciones y funciones de wordpres
* cargará nuestro plugin en la zona pública.
*/
95. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
/*
* INIT
*
* en la acción init de Wordpress
* se lanzará la función que hayamos definido.
*/
/*
* Incluímos la clase simple_plugin, el fichero contiene una clase de
* control y una clase que desarrolla el contenido del plugin.
*/
require_once(dirname(__FILE__).'/class.simple_plugin.php');
function sp_init(){
/*
* Cargamos los ficheros de idiomas de nuestros plugins
*/
96. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
load_plugin_textdomain( SP_TEXT_DOMAIN, 'wp-
content/plugins/simple_plugin/languages/',
'simple_plugin/languages/');
/*
* Cargamos los ficheros de estilos y scripts de nuestro plugin
*/
$jsLibs = array('jquery','jquery-form','jquery-ui-core');
foreach ($jsLibs as $lib) wp_enqueue_script($lib);
i_wp_add::wp_add_css(PLUGIN_URL.'simple_plugin/css/style.css');
i_wp_add::wp_add_js(PLUGIN_URL.'simple_plugin/js/script.js');
/*
* Preparamos el filtro que contiene la clase controladora
*/
simple_plugin_ctrl::load_filter();
}
97. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
add_action('init', 'sp_init');
/*
* WIDGET
*
* en la acción plugins_loaded de Wordpress
* se lanzará la función que hayamos definido para cargar los
* widgets que el plugin ofrezca.
*/
add_action("plugins_loaded", array('simple_plugin','widgets'));
98. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
● La clase de control:
/*
*
* Clase que controla y carga el plugin
*
*/
class simple_plugin_ctrl{
static public function get_plugin_tag(){
return "simple_plugin";
}
static public function content_filter($content){
$preg = @preg_match_all('/['.self::get_plugin_tag().'|(?«conf»[^]]
+)]/', $content, $ret);
99. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
if ($preg«=0) return $content;
foreach ($ret[0] as $n =» $match){
$match = str_replace(array('[','/','|',']'),array('[','/','|',']'),$match);
$content = ereg_replace($match , self::go($ret['conf'][$n]) ,
$content );
}
return $content;
}
100. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
static public function load_filter(){
/*
* Add filter de Wordpress
*
*
* Esta función pasará el contenido de wordpress a nuestro filtro
*
* simple_plugin_ctrl::content_filter();
*
*/
add_filter('the_content', array('simple_plugin_ctrl','content_filter'));
}
101. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
static public function go($conf){
/*
*
* Llamada a nuestro plugin
*/
$plg = new simple_plugin($conf);
if ($ret = $plg-»the_content()) return $ret;
return "";
}
}
102. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
● La clase del plugin:
/*
*
* la clase del plugin
*/
class simple_plugin{
protected $conf;
protected $content;
protected $lock = false;
103. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
public function __construct($conf){
$this-»conf = $conf;
switch ($this-»conf){
case "hola_mundo":
$this-»content = $this-»hola_mundo();
break;
default:
$this-»lock=true;
break;
}
}
105. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
static public function hola_mundo_widget($args){
$plg = new simple_plugin(false);
extract($args);
$title = $args['widget_name'];
$html = $before_widget;
if($title != '') $html.= $before_title . $title . $after_title;
$html.= $plg-»hola_mundo();
$html.= $after_widget;
echo $html;
}
106. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
public function the_content(){
if (trim($this-»content)!="" && $this-»lock === false) return
$this-»content;
return false;
}
static public function widgets(){
register_sidebar_widget(__('hola mundo',SP_TEXT_DOMAIN),
array('simple_plugin','hola_mundo_widget'));
}
}
107. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
● La clase del plugin nos permitirá ir desarrollando sobre
ella diferentes opciones para el plugin.
108. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
109. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
● Mediante este plugin hemos conseguido sacar en la zona
pública un "hola mundo" en una página y en un widget.
110. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
– Localización de plugins
● Para la localización de los plugins Wordpress pone a
nuestra disposición las "wordpress-i18n tools"
(http://codex.wordpress.org/I18n_for_WordPress_Deve
lopers) que podemos obtener mediante svn.
wordpress@lander-laptop:/var/www/blog/wordpress$ mkdir
wordpress-i18n ; cd wordpress-i18n
wordpress@lander-laptop:/var/www/blog/wordpress/wordpress-
i18n$ svn export http://svn.automattic.com/wordpress-
i18n/tools/trunk/ tools
111. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
● Para generar el fichero ".pot":
wordpress@lander-laptop:/var/www/blog/wordpress/wordpress-
i18n/tools$ php makepot.php wp-plugin ../../wp-
content/plugins/simple_plugin/ ../../wp-
content/plugins/simple_plugin/languages/simple_plugin.pot
● Para generar las locales de cada idioma que vallamos a
utilizar hay que copiar el ".pot" y generar un ".po":
wordpress@lander-laptop:/var/www/blog/wordpress/wp-
content/plugins/simple_plugin/languages$ cp simple_plugin.pot
simple_plugin-es_ES.po
114. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
– Enlaces de documentación y funciones más importantes
para desarrollar un plugin
http://codex.wordpress.org/Plugins
http://codex.wordpress.org/Writing_a_Plugin
http://codex.wordpress.org/Adding_Administration_Menus
http://codex.wordpress.org/Creating_Options_Pages
http://codex.wordpress.org/Template_Tags
115. Curso avanzado de programación y configuración de Wordpress
Extendiendo Wordpress (Plugins)
http://codex.wordpress.org/Plugin_API
http://codex.wordpress.org/Plugin_API/Action_Reference
http://codex.wordpress.org/Function_Reference
http://codex.wordpress.org/Function_Reference/add_action
http://codex.wordpress.org/Function_Reference/add_filter
116. Curso avanzado de programación y configuración de Wordpress
Conectando Wordpress con el mundo
● Ejemplo de conexión con Facebook (Facebook
Connect)
wordpress@lander-laptop:/var/www/blog/files/plugins$ wget
http://www.e-aula.com/download/fbconnect_1_2_1.zip
wordpress@lander-laptop:/var/www/blog/wordpress/wp-
content/plugins$ unzip ../../../files/plugins/fbconnect_1_2_1.zip
– El uso de este plugin permite:
● * Acceder al blog (login) con un usuario de Facebook,
siendo Facebook el que valida el usuario sin que este
indique en ningún momento su clave al blog/sitio al que
accede.
117. Curso avanzado de programación y configuración de Wordpress
Conectando Wordpress con el mundo
● * El usuario no necesita registrarse en el blog e indicar sus
datos de perfil dado que desde el blog/sitio al que accede
es posible recuperar la información del perfil del usuario
en Facebook(nombre, foto, sexo, ciudad, idioma,….).
Estos datos que tanto cuesta conseguir de un usuario
porque está harto de registrase en mil sitios, los podemos
explotar para personalizar el blog, generar estadísticas…
De forma automática el plugin crea un usuario de
Wordpress con la información del perfil Facebook, que
posteriormente podrá editar el usuario.
118. Curso avanzado de programación y configuración de Wordpress
Conectando Wordpress con el mundo
● * Es posible obtener la lista de amigos/contactos del usaurio
en Facebook, y generarinvitaciones para que accedan a
nuestro blog/sitio. Una forma de promocionar el sitio
mediante el maravilloso boca-oreja.
● * Es posible recuperar la lista de amigos que ya pertenecen a
la “comunidad” del blog/sitio.
● * La actividad que realiza el usuario en el blog/sitio (Ej.
comentar un post), se puedeenviar al minifeed de
Facebook, para que forme parte de su lifestream y otros
usuarios de Facebook puedan ver dicha actividad
(nuevamente el boca-oreja).
● * Es posible mostrar las últimas visitas a nuetro blog, con la
foto de los usuarios que han accedido mediante Facebook
Connect.
119. Curso avanzado de programación y configuración de Wordpress
Ejemplo de conexión con Twitter
120. Curso avanzado de programación y configuración de Wordpress
Cómo hacer un backup de nuestro blog
121. Curso avanzado de programación y configuración de Wordpress
Otros usos derivados de Wordpress
● Wordpress MU
● Wordpress Shop
122. Curso avanzado de programación y configuración de Wordpress
Licencia Copyleft
Copyright