it-swarm.com.de

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

Ich bin ein Softwareentwickler mit wenig Web-Erfahrung, der gerade versucht, meinen Web-Host und Domain-Namen für etwas anderes als einen Speicherauszug für Dateien zu verwenden, auf die ich anderen Menschen Zugriff gewähren möchte. Mein Plan ist es, auf irgendeine Weise eine persönliche/professionelle Website und ein Blog bereitzustellen, entweder mithilfe von FOSS-Standardprodukten, benutzerdefinierter Software oder Standardkomponenten mit benutzerdefinierten Modulen/Plugins.

Meine Anforderungen sind:

  1. Semantisches HTML (wohlgeformt, 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 - alles akzeptabel, solange es sofort validiert wird)
  3. Unterstützung für einen Blog
  4. Unterstützung für das Bearbeiten und Verwalten meines Lebenslaufs in HTML-Form sowie für das Verwalten hochgeladener Dateien in den Formaten PDF, ODT und DOC, die ich zum Herunterladen 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 meinen Host am einfachsten ist und ich mich auch damit auskenne
  6. Leicht zu bekommen oder schreiben Sie ein Thema für
  7. Unterstützung für statische Seiten, die sich selten (über mich) ändern, statische Seiten, die sich manchmal ändern (Projektlisten), dynamische Seiten (Blog, Kommentare) und Formulare (Kontakt)
  8. Funktioniert gut mit anderen Tools in derselben Umgebung - Ich verwende Trac auf demselben Host für die Projektverwaltung und setze möglicherweise andere Software ein, z. B. eine persönliche MediaWiki-Bereitstellung
  9. Einfach in andere soziale Medien zu integrieren (Twitter? Facebook? Pandora?) - nicht erforderlich, wäre aber nett
  10. Generierung und Pflege der Sitemap und/oder robots.txt

Meine Fragen:

  • Welche FOSS-Lösung ist für mich geeignet? Ich habe in der Vergangenheit mit Drupal und WordPress herumgespielt - WordPress war für mich ein solides Tool, aber zu der Zeit war es sehr blogorientiert (ich verstehe, dass es sich in letzter Zeit geändert hat) CMS-ähnlicher sein).
  • Welche kostenlosen (aber nicht Open Source) Lösungen sind für mich geeignet? Ich würde es vorziehen, vollen Zugriff auf die Quelle zu haben, aber es ist keine Voraussetzung.
  • Wo soll ich anfangen, wenn ich meine eigenen würfeln will? Ich würde es vorziehen, nicht meine eigenen zu rollen - mein Software-Engineering-Hintergrund 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, um diese Arbeit zu machen.

Vielen Dank.

11
Thomas Owens

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

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

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

  2. Validierung von HTML und CSS (XHTML, HTML4, HTML5 - alles akzeptabel, solange es sofort validiert wird)

    Ja , die meisten Designs für WordPress werden ohne großen Aufwand validiert oder stehen kurz davor, validiert zu werden. Es gibt eine großartige Dokumentation zum Thema.

  3. Unterstützung für ein Blog

    Ja , absolut.

  4. Unterstützung für das Bearbeiten und Verwalten meines Lebenslaufs in HTML-Formaten sowie für das Verwalten hochgeladener Dateien in den Formaten PDF, ODT und DOC, die ich zum Herunterladen 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 bevorzugt, da dies für meinen Host am einfachsten ist und ich auch damit vertraut bin

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

  6. Leicht zu bekommen oder schreiben Sie ein Thema für

    Ja , siehe Theme Development

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

    Ja Seiten werden in WordPress unter dem Seitenteil der Benutzeroberfläche verwaltet. Kontaktformulare funktionieren gut mit Plugins wie Kontaktformular 7

  8. Funktioniert gut mit anderen Tools in derselben Umgebung - Ich verwende Trac auf demselben Host für die Projektverwaltung und stelle möglicherweise andere Software wie eine persönliche MediaWiki-Bereitstellung bereit.

    Ja , obwohl Sie möglicherweise einige Umschreiberegeln hinzufügen müssen, damit nicht alles auf WordPress verweist. 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, wäre aber nett

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

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

    Ja , Google Sitemap Generator .

6
artlung

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 Beiträgen zu erstellen und gleichzeitig die Seiten neu anzuordnen.
  • http://driia.com/ - Die Geschäftsseite meiner Frau, sowohl ein Blog als auch eine Verkaufsseite. Ich habe Plugins geschrieben, die es ermöglichen, Posts automatisch auf Seiten zu gruppieren, die auf Kategorien und Tags basieren. Außerdem wurde erkannt, dass Posts mit einem bestimmten Tag zum Verkauf stehende Schmuckstücke oder Kunstwerke darstellen. 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 Themes und Plugins ist erstaunlich, aber die GPL-Lizenz bedeutet, dass alles, was Ihre Anforderungen nicht vollständig erfüllt, nach Belieben verbessert werden kann.

2
Craig Trader

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

Ehrlich gesagt würde ich mit WordPress gehen, wenn ich in Ihren Schuhen stecke, und Plugins nach Ihren Wünschen erstellen, wenn Sie noch keine FOSS-Plugins finden.

Die Einschränkung ist, dass seit Matt Mullenweg (CEO von Automattic, der Firma, die hinter WordPress steckt) 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 eine abgeleitete Arbeit von WordPress in seiner (was ich persönlich als verzerrt empfinde) Sichtweise ist. Du bist also gut, wenn du es für dich selbst machst, aber wenn du "Distribution" hast, wie wenn du die Plugins 2 Leuten gibst, bist du möglicherweise rechtlich dazu verpflichtet, sie selbst zu OSen, was etwas ist, was du vielleicht tun möchtest oder nicht .

1
intlect

Es hängt davon ab, was Sie tun möchten, und kommen Sie heraus:

  1. Erlernen eines Technologie-Stacks
    Ich habe den größten Teil des Codes für meine persönliche Website als Lernübung geschrieben, um mit den neuesten Änderungen in der Technologie, in der ich gearbeitet habe, Schritt zu halten, und habe ihn geändert, da sich mein Fokus geändert hat - ursprünglich ein klassischer _ Die SiteASP wurde auf ASP.NET 1.1 und dann auf 2.0 verschoben und wird jetzt nach einem kürzlichen Upgrade von ASP.NET MVC 1.0 auf ASP.NET MVC 2.0 ausgeführt
  2. Führen Sie einfach Ihre Website aus
    Sowohl bei der Arbeit als auch für einige Kirchenseiten, die ich in meiner Freizeit betreibe, habe ich gepackte Software verwendet - bei der Arbeit sprechen wir von "Enterprise" -CMS (MOSS, Tridion) für die Kirchenseiten Es ist FOSS ( N2 CMS ) - weil sie Funktionen boten, die über die hinausgingen, zu denen ich bereit war zu schreiben.

Wenn Ihr Beruf darin besteht, Websites zu erstellen, 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 für den Inhalt als für die Technologie zu verwenden.


Auf Kommentar antworten

Dann würde ich empfehlen, einen von der Stange zu nehmen - ich kann im Bereich PHP kaum eine Empfehlung aussprechen, da dies leider nicht meine Spezialität ist. Wenn Sie mit einigem C # fertig werden können N2 CMS ist sehr flexibel, hat aber nicht die riesige Plug-in/Theme-Basis von so etwas wie WordPress, was nach den Klängen wahrscheinlich Ihren Bedürfnissen ziemlich entsprechen würde Gut...

1

Ich baue CMS auf Unternehmensebene, um meinen Lebensunterhalt zu verdienen ... und ich hasse handelsübliche Systeme wie Joomla, Wordpress und Drupal. Hier sind meine Gründe:

1) Orte, an denen ich gearbeitet habe, haben diese (Arten von) Pakete mehrfach ausgenutzt, weil wir sie nicht schnell genug aktualisiert haben ... und in einigen Fällen können Updates wöchentlich sein. Sobald Sie gehackt werden, werden Sie ernsthaft in Frage stellen, warum Sie jemals diesen Weg gegangen sind ... es stinkt.

2) Wordpress Vorlagen sind verrückt. Einer wird einen voll ausgestatteten Admin-Bereich 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 ... verwende es für das, was es tun soll.

3) Ich habe Hunderte von Joomla (und Mambo) Sites in einem früheren Job erstellt. Selbst wenn Sie wissen, was Sie tun, wünschen wir Ihnen viel Glück, wenn Sie versuchen, aus diesem "Joomla-Layout" -Look auszubrechen. Gleiches gilt für Wordpress ... Sie können TELLEN, wenn Sie sich auf einer Wordpress - Site befinden. Nein, danke ... Ich werde dafür bezahlt, dass ich originelle Arbeiten mache.

4) Schulung. Versuchen Sie, jemandem innerhalb von 5 Minuten oder weniger die Verwaltung von Joomla oder Drupal zu erklären. Das von mir erstellte CMS kann an Personen mit einem Absatz schriftlicher Anweisungen (oder weniger) weitergegeben werden, da ich es so erstellt habe, dass es nur die Tools enthält, die für die jeweilige Website erforderlich sind. Andernfalls wird die Schaltfläche ausgeblendet. Ich fordere Sie auf, zu versuchen, jemanden mit weniger als den Anweisungen eines Telefonbuchs zu schulen, besonders wenn er technisch nicht versiert ist.

5) Einhaltung von Standards ... es 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 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 das Gleiche. Versuchen Sie jedoch, sich an einen potenziellen Kunden zu wenden und zu sagen: "Ich möchte Ihnen eine Menge Geld für die Anpassung eines kostenlosen Standardprodukts in Rechnung stellen" oder "Hier ist ein System, das speziell für Ihre Anforderungen 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 die 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 Standorte tun, wird der Erfolg durch Skaleneffekte gemindert. Es gibt keine Armee von Leuten, die Sicherheitslücken finden. Auch hier können mehrere Bereitstellungen zur Weiterentwicklung des Codes beitragen. Aber wenn Sie das Wissen haben, Qualitätscode zu schreiben, ist dies eine großartige Lösung.

Viel Glück.

1
bpeterson76

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

Es ist ein paar Jahre her, dass ich PHP CMS zum letzten Mal getestet habe, und zu der Zeit war meine Hauptanforderung die saubere Erweiterbarkeit. Zu der 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 versuchen, ohne sich selbst installieren zu müssen. Das letzte Mal, als ich es ausprobiert habe, schien es viel weniger werbefinanziert zu sein, aber ich denke, Sie müssen die Rechnungen bezahlen. Viele der CMS betreiben auch ihre eigenen Demoseiten (z. B. Joomla Demo , Xaraya Demo )

0
JasonBirch

Wenn Sie eine Menge Zeit und einen Juckreiz haben, der nicht verschwindet - ja, machen Sie es sich selbst. Ansonsten installiere WordPress (" famous 5 minutes install ") und gib dir 2 Stunden Zeit ... das ist alles, was du brauchen solltest, um eine sehr gute Idee zu bekommen.

Ich wollte als Antwort auf frühere Antworten ein paar Kommentare posten - 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 zustimmen @intlects Kommentar zu den Themen. 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 habe auch WP aktualisiert um herauszufinden, dass das Theme nicht mit der neueren Version kompatibel ist (und Sie dann herausfinden, wie gut die Unterstützung des Entwicklers ist).

0
Dan

Es gibt natürlich eine dritte Möglichkeit, Sie könnten ein weniger "schweres" CMS wie MODX verwenden. Dies würde Ihnen die Möglichkeit geben, das Rad aller Standard-CMS-Sachen nicht neu erfinden zu müssen ( Benutzerverwaltung, Dokumentenverwaltung usw.) und bieten Ihnen gleichzeitig eine einfache und flexible Umgebung, um Ihren eigenen Code zu erstellen. 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, um es zu verstehen, ohne wochenlang zu graben, sind einige der CMS-Systeme wirklich mächtige Monster ... etwas, das Sie wahrscheinlich nicht für eine persönliche Website benötigen). MODX ist im Grunde genommen nur für die Art von Dingen gedacht, die Sie ausführen möchten. Es bietet Ihnen einen Kern von Funktionen und Sie fügen Ihre eigenen hinzu. Außerdem teilen die Leute ihren Code, sodass Sie Ausschnitte, Module usw. finden, die andere verwendet haben.

0
Astaldaran