Wie kann ich entscheiden, ob ich meine eigene Software rollen oder ein gepacktes CMS (und entsprechende Plugins) verwenden soll?

11

Ich bin ein Softwareentwickler mit wenig Web-Erfahrung, der gerade dabei ist, meinen Webhost und meinen Domain-Namen tatsächlich für etwas anderes als einen Dateidumpingplatz für Dateien zu verwenden, auf die ich anderen Personen Zugriff gewähren muss. Mein Plan ist es, eine persönliche / professionelle Website und ein Blog bereitzustellen, entweder mit FOSS-Standardprodukten, benutzerdefinierter Software oder Standardkomponenten mit benutzerdefinierten Modulen / Plugins.

Meine Anforderungen sind:

  1. Semantisches HTML (gut geformte, ordnungsgemäße Verwendung von Attributen, gegebenenfalls Mikroformate, Verwendung von CSS für Stil und HTML für Markup)
  2. Validierung von HTML und CSS (XHTML, HTML4, HTML5 sind alle akzeptabel - solange sie sofort validiert werden)
  3. Unterstützung für einen Blog
  4. Unterstützung für die Bearbeitung und Verwaltung meines Lebenslaufs in HTML-Form sowie für die Verwaltung hochgeladener Dateien in den Formaten PDF, ODT und DOC, die ich zum Download zur Verfügung stelle
  5. Geschrieben in einer Sprache, die ich kenne und die mein Host unterstützt - PHP wird bevorzugt, da dies für mich am einfachsten zu hosten ist und ich auch damit vertraut bin
  6. Einfach zu bekommen oder ein Thema für zu schreiben
  7. Unterstützung für statische Seiten, die sich selten ändern (über mich), statische Seiten, die sich manchmal ändern (Projektlisten), dynamische Seiten (Blog, Kommentare) und Formulare (kontaktieren Sie mich)
  8. Spielt gut mit anderen Tools in derselben Umgebung - ich verwende Trac auf demselben Host für das Projektmanagement und kann andere Software wie eine persönliche MediaWiki-Bereitstellung bereitstellen
  9. Einfach in andere soziale Medien zu integrieren (Twitter? Facebook? Pandora?) - nicht erforderlich, aber schön
  10. Erstellung und Pflege der Sitemap und / oder der robots.txt

Meine Fragen:

  • Welche FOSS-Lösung wäre für mich geeignet? Ich habe in der Vergangenheit mit Drupal und WordPress herumgespielt - WordPress hat mich als solides Werkzeug empfunden, war aber zu der Zeit sehr blogorientiert (ich verstehe, dass es in jüngerer Zeit geändert wurde, um CMS-ähnlicher zu werden).
  • Welche kostenlosen (aber nicht Open Source) Lösungen könnten für mich geeignet sein? Ich würde es vorziehen, vollen Zugriff auf die Quelle zu haben, aber dies ist keine Voraussetzung.
  • Wo soll ich anfangen, wenn ich meine eigenen rollen werde? Ich würde es vorziehen, nicht meine eigenen zu rollen - mein Hintergrund in der Softwareentwicklung sagt mir, dass meine Anforderungen allgemein sein sollten und ich in der Lage sein sollte, einige vorhandene Lösungen zu finden, die ich kombinieren kann, damit dies funktioniert.

Vielen Dank.

Thomas Owens
quelle
Haben Sie Jquery ausprobiert? <ducks>
Tim Post
@ Tim Post: Ich möchte Ihren Kommentar nur für den lol-Faktor abstimmen, aber befürchten, dass dies den falschen Eindruck vermitteln würde;)
Zhaph - Ben Duguid
Off-Topic: Dies ist keine Frage zum Webmastering. Warum die Upvotes?
@Kinopiko stimmt den meisten von Ihnen gekennzeichneten Posts zu, aber für mich ist dieser zum Thema.
JasonBirch
@ TimPost Dein "Enten" -Kommentar hat mich davon abgehalten, einen ansonsten anstößigen Kommentar zu melden. ;-P
NDEIGU

Antworten:

6

Die Buy-vs-Build-Frage ist eine ewige. Ich würde sagen, WordPress und Drupal erfüllen beide Ihre Kriterien. Ich habe mehr Erfahrung mit WordPress, also würde ich es in WordPress machen. Um Ihre Anforderungen zu erfüllen:

  1. Semantisches HTML (gut geformte, ordnungsgemäße Verwendung von Attributen, gegebenenfalls Mikroformate, Verwendung von CSS für Stil und HTML für Markup)

    Ja , die meisten Themen für WordPress verwenden standardmäßig xhtml ohne Probleme. Mikroformat-bezogene Markups müssen wahrscheinlich in einer HTML-Ansicht von Hand erstellt werden, obwohl es möglicherweise Plugins gibt, die dies erleichtern.

  2. Validierung von HTML und CSS (XHTML, HTML4, HTML5 sind alle akzeptabel - solange sie sofort validiert werden)

    Ja , die meisten Themen für WordPress werden ohne große Probleme validiert oder stehen kurz vor der Validierung. Es gibt eine großartige Dokumentation zum Thema.

  3. Unterstützung für einen Blog

    Ja , absolut.

  4. Unterstützung für die Bearbeitung und Verwaltung meines Lebenslaufs in HTML-Form sowie für die Verwaltung hochgeladener Dateien in den Formaten PDF, ODT und DOC, die ich zum Download zur Verfügung stelle

    Ja , der Lebenslauf muss nur eine statische Seite sein und die hochgeladenen Dateien mit dem nativen Medienverwaltungstool in WordPress verwalten.

  5. Geschrieben in einer Sprache, die ich kenne und die mein Host unterstützt - PHP wird bevorzugt, da dies für mich am einfachsten zu hosten ist und ich auch damit vertraut bin

    Ja , WordPress = PHP + MySQL + Apache funktioniert am besten fürmod_rewrite

  6. Einfach zu bekommen oder ein Thema für zu schreiben

    Ja , siehe Themenentwicklung

  7. Unterstützung für statische Seiten, die sich selten ändern (über mich), statische Seiten, die sich manchmal ändern (Projektlisten), dynamische Seiten (Blog, Kommentare) und Formulare (kontaktieren Sie mich)

    Ja, Seiten werden in WordPress im Bereich "Seiten" der Benutzeroberfläche verwaltet. Kontaktformulare funktionieren gut mit Plugins wie Kontaktformular 7

  8. Spielt gut mit anderen Tools in derselben Umgebung - ich verwende Trac auf demselben Host für das Projektmanagement und kann andere Software wie eine persönliche MediaWiki-Bereitstellung bereitstellen

    Ja , obwohl Sie möglicherweise einige Umschreiberegeln hinzufügen müssen, damit nicht alles auf WordPress zeigt. Ich führe WordPress in einem Unterverzeichnis aus und lasse es normalerweise alles erledigen. Möglicherweise müssen Sie einen Bezeichner hinzufügen, damit WordPress einen MediaWiki-Verzeichnisstamm ignoriert.

  9. Einfach in andere soziale Medien zu integrieren (Twitter? Facebook? Pandora?) - nicht erforderlich, aber schön

    Ja , über Plugins. Standardmäßig können Sie auch RSS-Feeds in WordPress-Seitenleisten ziehen.

  10. Erstellung und Pflege der Sitemap und / oder robots.txt

    Ja , Google Sitemap Generator .

artlung
quelle
Für Nummer 4 - Ich habe bereits PDF-, ODT- und DOC-Formate meines Lebenslaufs. Ich brauche nur etwas, mit dem ich meine Dateien einfach hochladen und auf Seiten verlinken kann. Außerdem ist der Link zum Google Sitemap Generator falsch - er verweist auf das Kontaktformular 7.
Thomas Owens
1
Oh, sicher, WordPress macht die Dateiverwaltung gut. Meine durcheinandergebrachten Links wurden ebenfalls behoben.
Artlung
Cool, danke. Lassen Sie mich meinen ursprünglichen Beitrag bearbeiten, um zu reflektieren, was ich eigentlich meine (ich habe ihn noch einmal gelesen und es ist etwas verwirrend - es sieht so aus, als ob ich meinen HTML- / Webseiten-Lebenslauf in PDF / ODT / DOC umwandeln möchte).
Thomas Owens
Aktualisierte meine Antwort, um die Änderung in der Frage
widerzuspiegeln
2

Ich habe Wordpress verwendet, um eine Reihe von Websites mit unterschiedlichen Anforderungen einzurichten, und ich denke, dass Wordpress auch Ihre Anforderungen erfüllen würde:

  • http://chaos.trader.name/ - In erster Linie eine seitenorientierte Informationsseite mit einigen Blogs.
  • http://ludus.unicornsrest.org/ - In erster Linie ein Blog, aber mit einer tief verschachtelten Seitenstruktur. Ich habe ein Plugin geschrieben, um Links zu Seiten in Posts zu erstellen und gleichzeitig die Seiten neu anzuordnen.
  • http://driia.com/ - Die Business-Site meiner Frau, sowohl Blog- als auch Verkaufsseite. Ich habe Plugins geschrieben, die es ermöglichen, Beiträge automatisch nach Seiten zu gruppieren, basierend auf Kategorien und Tags, und um zu erkennen, dass Beiträge mit einem bestimmten Tag Schmuck oder Kunstwerke darstellen, die zum Verkauf stehen. Die Verkaufspreise werden als Metadaten auf den Posts gespeichert.
  • http://barkingmad.org/ - Werbeseite für eine gemeinnützige Unterhaltungsgruppe.

Die Anzahl und Qualität der für Wordpress verfügbaren Themen und Plugins ist erstaunlich, aber die GPL-Lizenz bedeutet, dass alles, was Ihren Anforderungen nicht vollständig entspricht, nach Belieben verbessert werden kann.

Craig Trader
quelle
1

Ich glaube nicht, dass Sie ein FOSS-Projekt finden werden, das genau das tut, was Sie von OTB erwarten. WordPress ist solide, aber Sie müssten ein wenig arbeiten, um das zu generieren, was Sie wollen. Drupal könnte eher Kopfschmerzen bereiten, als es zunächst aussieht. Ich weiß, dass die Leute es lieben, und ich weiß, dass ich es versucht habe, aber ich möchte mir lieber keine Sorgen machen, dass zwischen den Versions-Upgrades so viele Hacks durchgeführt werden müssen.

Ehrlich gesagt würde ich mich für WordPress entscheiden, wenn ich in Ihren Schuhen stecke, und Plugins für das erstellen, was Sie brauchen, wenn Sie noch keine FOSS-Plugins finden.

Die Einschränkung ist, dass seit Matt Mullenweg (CEO von Automattic, dem Unternehmen hinter WordPress) einen Richard Stallman auf alle zieht, er glaubt und befürwortet, dass alle Themen (Themencode, nicht Bilder / CSS) und Plugins (Plugin-Code) ist GPL, weil es in seiner (was ich persönlich verzerrt finde) Ansicht eine abgeleitete Arbeit von WordPress ist. Sie sind also gut, wenn Sie es für sich selbst tun, aber wenn Sie "Distribution" haben, wie bei der Weitergabe der Plugins an 2 Personen, sind Sie möglicherweise gesetzlich an das Betriebssystem selbst gebunden, was Sie möglicherweise tun möchten oder nicht .

intlect
quelle
Ehrlich gesagt ist es mir egal, was ich schreibe. In der Tat würde ich wahrscheinlich sowieso - wenn ich etwas halbwegs Anständiges machen kann und es für andere von Nutzen ist. Ich bin nur neugierig auf WordPress - sind die neueren Versionen wirklich für mehr als nur das Bloggen geeignet? Gibt es außer der primären WordPress-Website noch andere Repositories oder Indizes für Plugins, Module und Themes?
Thomas Owens
Sie bloggen jetzt viel weniger. Grundsätzlich hat es auch Seiten, und Sie können mit einer statischen Homepage und nur Seiten, keine Beiträge gehen. Es ist wirklich dein Anruf. Auf wordpress.org finden Sie im Grunde alles, was Plugins betrifft. Themen ... sie werden mehr oder weniger im Internet durchsucht. Ich persönlich finde Thesis of diythemes.com sehr hilfreich für die einfache Einrichtung / Anpassung, aber das Web ist buchstäblich mit Themen gefüllt. Und die wordpress.org Repos. Seien Sie etwas vorsichtig beim Herunterladen von Themen und Plugins von überall. Einige sind Malware, andere sagen nur "Webspam".
intlect
1

Es hängt davon ab, was Sie tun möchten, und raus daraus:

  1. Lernen Sie einen Technologie-Stack
    Ich habe den größten Teil des Codes geschrieben, der meine persönliche Site als Lernübung unterstützt, um mit den neuesten Änderungen in der Technologie, in der ich gearbeitet habe, auf dem Laufenden zu bleiben, und habe ihn geändert, als sich mein Fokus änderte - ursprünglich eine klassische ASP-Site Dann wurde es auf ASP.NET 1.1 und dann auf 2.0 verschoben und läuft jetzt nach einem kürzlich durchgeführten Upgrade von ASP.NET MVC 1.0 auf ASP.NET MVC 2.0
  2. Führen Sie einfach Ihre Site aus.
    Sowohl bei der Arbeit als auch für einige kirchliche Sites, die ich in meiner Freizeit betreibe, habe ich Softwarepakete verwendet. Bei der Arbeit sprechen wir von "Enterprise" CMS (MOSS, Tridion) für die kirchlichen Sites FOSS ( N2 CMS ) - weil sie Funktionen bieten, die über die hinausgehen, die ich schreiben wollte.

Wenn Ihr Beruf das Erstellen von Websites ist, gibt es ein Argument für die Verwendung der Technologie, die Sie "verkaufen". Wenn es sich um etwas anderes handelt, würde ich empfehlen, Ihre Zeit eher mit Inhalten als mit Technologie zu verbringen.


Auf Kommentar antworten

Dann würde ich empfehlen, eine von der Stange zu nehmen - ich kann im PHP-Bereich kaum eine Empfehlung abgeben, da dies leider nicht meine Spezialität ist. Wenn Sie mit etwas C # N2 fertig werden, ist CMS sehr flexibel, hat aber nicht die riesige Plug-In / Theme-Basis von etwas wie WordPress, was nach den Klängen wahrscheinlich ziemlich gut zu Ihren Anforderungen passen würde ...

Zhaph - Ben Duguid
quelle
Mein Geschäft sind keine Websites, das ist sicher. Mein beruflicher Hauptfokus liegt in der Regel auf der weicheren Seite des Software-Engineerings - Anforderungs-Engineering, Prozess- und Projektmanagement, Design und Architektur. Ich bin jedoch mit einigen Web-Technologie-Stacks ein wenig vertraut (hauptsächlich, weil ich Back-End-Web-Entwicklung durchgeführt habe - nichts nach vorne gerichtet). Und ehrlich gesagt würde ich es vorziehen, es für eine persönliche Website einfach zu halten und den Inhalt hervorzuheben.
Thomas Owens
1

Ich baue CMS auf Unternehmensebene, um meinen Lebensunterhalt zu verdienen ... und ich persönlich hasse Standardsysteme wie Joomla, Wordpress und Drupal. Hier sind meine Gründe:

1) An Orten, an denen ich gearbeitet habe, wurden diese (Arten von) Paketen mehrmals ausgenutzt, weil wir sie nicht schnell genug aktualisiert haben. In einigen Fällen können Aktualisierungen wöchentlich erfolgen. Sobald Sie gehackt werden, werden Sie ernsthaft fragen, warum Sie jemals diesen Weg gegangen sind ... es stinkt.

2) Die Vorlagen von Wordpress sind verrückt. Einer wird einen voll ausgestatteten Administrationsbereich haben, während der nächste keinen hat und erwartet, dass Sie den Code hacken. Wo suchen? AHHHHH !!! Ich habe viele von ihnen eingesetzt, aber es schmerzt mich jedes Mal. Meiner Meinung nach ist Wordpress ein Blog-System ... verwenden Sie es für das, was es tun soll.

3) Ich habe in einem früheren Job Hunderte von Joomla- (und Mambo-) Websites eingerichtet. Selbst wenn Sie wissen, was Sie tun, viel Glück beim Versuch, aus diesem "Joomla-Layout" -Look auszubrechen ... besonders wenn die Zeit nicht auf Ihrer Seite ist. Gleiches gilt für Wordpress ... Sie können sagen, wenn Sie sich auf einer Wordpress-Site befinden. Nein, danke ... Ich werde dafür bezahlt, dass ich Originalarbeiten mache.

4) Schulung. Erklären Sie jemandem innerhalb von 5 Minuten oder weniger die Joomla- oder Drupal-Verabreichung. Das von mir erstellte CMS kann jemandem mit einem Absatz schriftlicher Anweisungen (oder weniger) beigebracht werden, da ich es so erstellt habe, dass es nur die Tools enthält, die jede bestimmte Website benötigt. Andernfalls verschwindet die Schaltfläche. Ich fordere Sie auf, jemanden mit weniger als einem Telefonbuch an Anweisungen zu schulen, insbesondere wenn er technisch nicht versiert ist.

5) Einhaltung von Standards ... das ist etwas, bei dem ich persönlich keine Kompromisse eingehen werde. Ich kontrolliere alles, was mein CMS ausgibt, und habe es so aufgebaut, dass in wenigen Minuten etwa ein Dutzend Codezeilen in jede HTML-kompatible Vorlage eingefügt werden können, um jedes Mal kompatiblen Code zu erstellen. Wordpress ist in Ordnung, Joomla und Drupal nicht immer so sehr.

6) Marktfähigkeit. CMS machen alle die gleichen Dinge. Aber versuchen Sie, einen potenziellen Kunden anzusprechen und zu sagen: "Ich möchte Ihnen viel Geld in Rechnung stellen, um ein kostenloses Standardprodukt anzupassen" und "Hier ist ein System, das speziell für Ihre Bedürfnisse entwickelt wurde". Wenn es ein gutes Produkt ist, Sie werden dieses Geschäft fast jedes Mal gewinnen. In Ihrem Fall spielt das keine Rolle ... aber wer weiß, vielleicht können Sie auf der Funktionalität für zukünftige Projekte aufbauen ... Projekte bezahlen ...

Es gibt natürlich Nachteile. Sie bauen alles selbst, was Zeit braucht. Wenn Sie dies für mehrere Websites tun, wird der Erfolg durch Skaleneffekte verringert. Es gibt keine Armee von Leuten, die Schwachstellen finden. Auch hier können mehrere Bereitstellungen dazu beitragen, dass sich der Code weiterentwickelt. Wenn Sie jedoch das Wissen haben, Qualitätscode zu schreiben, ist dies eine großartige Lösung.

Viel Glück.

bpeterson76
quelle
0

Für Ihren Anwendungsfall ist ein gepacktes CMS wahrscheinlich der beste Weg.

Es ist ein paar Jahre her, seit ich PHP CMS das letzte Mal evaluiert habe, und zu der Zeit war meine Hauptanforderung eine saubere Erweiterbarkeit. Zu dieser Zeit war Joomla ein starker Konkurrent, und Xaraya sah intellektuell interessant aus, obwohl der Entwicklungszyklus langsam schien.

Wenn Sie ein paar ausprobieren möchten, können Sie es auf der opensourceCMS-Site ausprobieren, ohne sich selbst installieren zu müssen. Als ich es das letzte Mal ausprobiert habe, schien es viel weniger werblich zu sein, aber ich denke, Sie müssen die Rechnungen bezahlen. Viele der CMS betreiben auch eigene Demo-Sites (z. B. Joomla Demo , Xaraya Demo ).

JasonBirch
quelle
0

Wenn Sie eine Menge Zeit und einen Juckreiz haben, der nicht verschwindet, rollen Sie Ihren eigenen. Andernfalls installieren Sie WordPress (" berühmte 5-Minuten-Installation ") und geben Sie sich 2 Stunden Zeit ... das ist alles, was Sie brauchen sollten, um eine sehr gute Idee zu bekommen.

Ich wollte ein paar Kommentare als Antwort auf frühere Antworten veröffentlichen - Sie können definitiv Websites erstellen, die "Seiten" mit WP sind, nicht nur Blogs (und es ist sehr gut zum Erstellen von Websites mit integrierten Blogs), und dem Kommentar von @ intlect zu Themen zustimmen. Es kann einen großen Unterschied in der Qualität einiger Themen geben (auch ein guter Ort, um zu lernen / zu sehen, wie WP funktioniert) - Ich wurde ein paar Mal gebissen und auch WP aktualisiert, um festzustellen, dass das Thema nicht mit der neueren Version kompatibel ist (und dann finden Sie heraus, wie gut die Unterstützung des Entwicklers ist).


quelle
0

Es gibt natürlich eine dritte Option: Sie könnten ein weniger "schweres" CMS wie MODX verwenden. Dies würde Ihnen die Möglichkeit geben, das Rad aller Standard- CMS- Dinge (Benutzerverwaltung, Dokumentenverwaltung usw.) nicht neu erfinden zu müssen Sie erhalten eine einfache, flexible Umgebung, in der Sie Ihren eigenen Code erstellen können. Ich habe eine Reihe von CMS verwendet und alle haben ihre Nischen, aber wenn Sie etwas wollen, das einfach zu entwickeln und leicht genug ist, dass Sie es ohne wochenlanges Graben verstehen können (einige der CMS-Systeme sind wirklich mächtige Bestien ... etwas, das Sie wahrscheinlich nicht für eine persönliche Website benötigen). MODX wurde im Grunde genommen genau für die Art von Dingen entwickelt, die Sie ausführen möchten. Es bietet Ihnen einen Kern an Funktionen und Sie fügen Ihre eigenen hinzu. Außerdem teilen die Leute ihren Code, sodass Sie Schnipsel, Module,


quelle
Ich würde mir das gerne ansehen. Können Sie weitere ähnliche Dinge wie MODX vorschlagen?
Thomas Owens