PHP Microtite Boilerplate
PHP Microtree Boilerplate es un marco PHP para crear sitios web simples, pero fuertemente funcionales, rápidos y seguros en básicamente en todos los entornos.
La mayoría de los marcos y incluso las calderas requieren un proceso de configuración agotador, donde necesita instalar múltiples dependencias. Esto lleva a una gran sobrecarga de código, que a menudo no necesita. Toda esa complejidad también es un riesgo potencial para su sitio web. Además, a menudo no es posible usar la mayoría de las soluciones, si necesita implementarlo en el plan de alojamiento compartido más barato.
Este proyecto quiere proporcionarle un marco y una plantilla para este caso exacto:
- Debe construir un sitio web bastante pequeño, con alguna funcionalidad.
- Usted elige PHP, porque desea hacer secuencias de comandos del lado del servidor, mientras que PHP también es el único idioma, que se ejecuta básicamente en todas las opciones de alojamiento.
- Usted construye esto por su cuenta o con un máximo de otra persona, lo que hace que la mejor práctica, pero la estructura de código compleja sea más innecesaria que un concepto útil.
- Debe hacerlo rápido, mientras que no desea hacer compromisos con respecto a la seguridad o el rendimiento.
- Por lo tanto, no le importa mucho el código limpio;).
Demo: https://phpmicrosite.jenskuerchner.de/
Características clave
- Enrutamiento fácil.
- Aplicación web progresiva (PWA) preparada.
- Multilenguaje preparado.
- Integración de Directus CMS (incluido el caché local).
- Docker Compose para el desarrollo local.
- TailWindcSS incluido (opcional).
- GDPR y CCPA listos.
- Cache de trabajo de servicio inteligente.
- GetText Support para fácil traducción (+ Fallback si no está instalado en el servidor).
- SEO optimizado.
- Generación automatizada de mapa del sitio.
- Optimizado para compartir en redes sociales.
- Integración de YouTube optimizada por velocidad y GDPR.
- Optimización opcional de CSS y JavaScript con scripts de compilación preparados.
- Documentación extensa en código.
- Encabezados de seguridad (.htaccess o a través de PHP)
- Múltiples características de seguridad (¡la mayoría de ellas requieren un servidor Apache!)
- Preparado para ejecutar la implementación de Git.
- Desarrollado para que sea extremadamente fácil para usted eliminar las características o agregar sus propias cosas.
Uso
Descargue la rama/etiqueta respectiva y cárguela en la carpeta de su sitio web, o clone el repositorio como desee.
Ajustelo a su proyecto:
- Verifique el archivo .htaccess, si lo ejecuta en Apache. Tenga en cuenta los encabezados y lugares de seguridad, donde se especifica un dominio/ruta (busque sudomain.com).
- Si no lo ejecuta en Apache, verifique el index.php para la configuración de los encabezados de seguridad y asegúrese de que cada solicitud (excepto los archivos) se envíe al index.php. Verifique el NginX_Deployment.SH: es un script bash preconfigurado para configurar su servidor web Nginx.
- Ajuste los valores dentro de los archivos config.php y también mentales, que se mencionan en los comentarios allí. Configurar una conexión a su CMS Directus si se usa.
- Check /Templates/general_meta.php y cree los respectivos favicons.
- Defina sus páginas en el enrutamiento.php. (¡Aviso legal y política de privacidad de la mente para mantener el GDPR que cumple!)
- Cree esas páginas (como se especifica antes) como archivos PHP individuales dentro /Páginas.
- Cree archivos respectivos dentro /controlador si es necesario en su caso.
- Verifique la opción de redirigir automáticamente dentro de varios idiomas en index.php y base.js.
- Construya el sitio web con esas páginas, el style.css y el base.js. Tenga en cuenta que minimizar esos archivos o ajustar la forma en que se incluyen en /templates/header.php y /templates/footer.php. Si usa el script de compilación preparado, no necesita preocuparse por esta parte.
- Ajuste el pie de página AT /Templates/footer.php a sus necesidades.
- Encuentre más detalles en la documentación en el código: ¡es un patio de recreo bien documentado!
Eso es básicamente con respecto a los ajustes. Puede encontrar una guía de configuración de muestra más detallada en la publicación de blog Medium correspondiente aquí.
¡Construir el proyecto, apenas depende de su configuración! Si está utilizando la integración TailWindcss, debe usar el script de compilación incluido, que requiere NodeJS! Si vas a estar en claro, puedes omitir eso. Sin embargo, no usar los scripts de compilación tampoco se fusionaría y minificaría los archivos CSS y JS. Por lo tanto, si es posible para usted, apenas se recomienda. Para la construcción:
- Asegúrese de estar dentro del directorio raíz del proyecto con su terminal.
- Ejecute
npm install . - Run
npm run build para dejar que la magia suceda. - Eso es todo. Siéntase libre de hacer esto manualmente en su máquina local y cargarla en su host, o usar algunas tuberías de compilación en cualquier herramienta que esté utilizando.
Por cierto: se recomienda utilizar un servicio CDN (por ejemplo, CloudFlare) para acelerarlo aún más.
Configuración de desarrollo local
Para el desarrollo local, puede hacer uso de Docker-Compose.yml incluido
- Actualice el nombre del contenedor en el archivo YML.
- Descargue e instale Docker Desktop.
- Ajuste el
$the_page_url en config.php temporalmente a "/". - Ejecute
docker-compose up -d en la terminal en el directorio raíz del proyecto. - Abra el proyecto en
localhost:80 (mente que puede ver un error SSL - no debe ser bloqueador), - Feliz codificación y prueba.
Que contribuye
Cualquiera es bienvenido a contribuir, pero importa las pautas:
- Informes de errores
- Solicitudes de funciones
- Solicitud de solicitud
Licencia
El código está disponible bajo la licencia GPL 3.0. Básicamente, puede hacer cualquier cosa con él, pero importa que si desea distribuir su trabajo en función de este código, su trabajo también debe tener licencia GPL. Esto significa que puede construir fácilmente su sitio web, ya que esto no es una distribución. La distribución sería el caso, si vende un proyecto basado en este código a otros o si crea proyectos públicos (no importa si los vende o no). Incluso todo esto estaría bien, siempre y cuando licite esos proyectos también con GPL. :) Consulte el archivo de licencia para todos los detalles.
Inspirado en
Este código se ha inspirado en la calderera HTML5.