Si desarrollara Craigslist hoy, ¿qué marco PHP usaría y por qué?

Podrías “usar wordpress”, pero no está diseñado para hacer eso, como construir una casa con un cuchillo de mesa, no estás usando las herramientas adecuadas para el trabajo.

Hay soluciones en cualquier idioma, y ​​Craigslist elige a Perl para lograrlo. Llegaremos a PHP en un momento, pero hablemos de las fortalezas de Perl sobre PHP. La capacidad de Perl para trabajar con texto, especialmente su expresión regular rápida y efectiva, y como lenguaje de scripting general, realmente lo convierte en una opción sólida para aplicaciones, y no solo sitios web, y mucho de lo que hace Craigslist, para que se adapte al tamaño tiene que ser así, se realiza a través de aplicaciones Perl de gestión y modificación de texto. El otro aspecto es la recopilación y el almacenamiento de datos con los que Craigslist usa e interactúa. Cuando esté pensando en desarrollar una aplicación, creo que solo mirar el marco no es un lugar ideal para comenzar, especialmente con algo tan específicamente pesado como Craigslist.

Entonces, cuando miras los frameworks PHP, debes recordar que estás construyendo una aplicación, no solo un sitio web, y que gran parte de tu código no encajaría en el axion tradicional de los frameworks MVC php como Zend, Lavarel o Yii … Construiría algo alrededor de un micro-marco más como Slim o Silex para permitirte construir la aplicación correctamente sin tanta sobrecarga. Porque entrelazar las bases de datos requeridas (motores de búsqueda de texto completo como Sphinx o Solr + Datastores + Queues) requeriría muchas soluciones personalizadas de todos modos. Un microframework le brinda la capacidad de piratear lo que necesita, como enrutamiento y gestión de modelos, y rodar su propio ORM para manejar una solución de datos compleja.

En realidad, podría usar cualquier marco, Drupal o Joomla incluidos, pero para que funcione bien, se requiere mucho más que simplemente aprovechar un marco.

Personalmente, creo que cualquier marco puede hacerlo. Incluso WordPress, que se conoce como plataforma de blogs, puede hacerlo (lo sé porque también desarrollo algo de Web usándolo y, a veces, uso su marco que está integrado).

Pero debido a que está preguntando “qué marco usaría”, respondí “Marco Yii”. Dejame explicar.

Craiglist contiene una lista de publicaciones que el usuario puede insertar, actualizar o eliminar.
Puedo crear esta funcionalidad usando Gii para generar las funciones CRUD. Esto puede ahorrar mucho tiempo.

Craiglist tiene membresía. Y hay miembros premium y miembros gratuitos.
Proporcionan dos tipos de estilo de autenticación, RBAC (Role Base Access Control) o ACL (Access Control List).
Seguiré adelante usando RBAC. Usaré la extensión de Derechos para ayudarme a crear el rol y asignar la función realmente rápido.

Otras funciones
Se puede lograr otra función utilizando su ORM incorporado llamado ActiveRecord. Por ejemplo, para enumerar todas las listas, podría seguir escribiendo así:
Post :: modelo () -> publicado () -> findAll ();

¿Quieres paginación en la lista? Solo usaré CListView.

Para comprender qué tan rápido puede ir este marco, eche un vistazo a cómo
Creación de un sistema de blog con Yii en poco tiempo.

Yo usaría Laravel. Pequeño y escalable, fácil de obtener lo que desea.
Debo mencionar los paquetes a través del compositor, que es una gran cantidad de código que no necesita escribir ya que ya está como complemento (paquete).

Elem ORM es muy fácil de usar. Consulte el marco PHP para artesanos web para obtener más información. ¡También desarrollo web, diseño y otros temas nerd! Código brillante para empezar bien.

Depende del tamaño de su sitio web, creo que si no es un desarrollador avanzado y desea crear su sitio rápidamente, puede usar WordPress.

Hay muchos complementos y temas disponibles para WordPress, creados específicamente para convertir WordPress en un sitio web clasificado.

Puede buscar en Google “sitio web clasificado con wordpress” para ver la lista de complementos y temas disponibles.

WordPress para un sitio como ese? Sí, si quisieras que se arrastrara. Por el peso en la base de datos ya, trataría de evitar un marco y construir un minimalista para ahorrar ciclos de procesador y ram.

WordPress podría hacer el trabajo. No iría tan lejos como para decir que está usando completamente las herramientas incorrectas. Simplemente no le permitirá la personalización y optimización muy refinadas que probablemente deseará en el futuro.

Hay una gran cantidad de complementos de WordPress que pueden proporcionarle toda la funcionalidad que necesita. El código también está siendo probado y mantenido de forma independiente por sus desarrolladores para que no tenga que depurar tanto.

Para frameworks PHP me gusta Laravel. Creo que es más una preferencia personal que basarse en lo que necesariamente sería lo mejor para su proyecto.

Por favor, toma mi framework qbolec / PHP-Framework y haz lo que quieras con él 😉

Aunque siempre puedes agregar WordPress encima, creo que tratar de crear toda esa funcionalidad a través de WordPress estaría empujando sus límites.