Ich habe WordPress bisher nur als selbst gehostete Blogging-Plattform verwendet. Ich muss es für ein sehr einfaches CMS verwenden, das aus ~ 10 Seiten besteht, von denen die meisten statische Inhalte sind und regelmäßig aktualisiert werden. Ich muss in der Lage sein, Dokumente hochzuladen, Bilder einzubetten und Kopien mit dem Texteditor zu bearbeiten - so ziemlich alle Standardfunktionen, die WordPress bietet.
Ich habe jedoch Schwierigkeiten, bestimmte Abschnitte innerhalb einer Seite zu bearbeiten - insbesondere, wenn ich weiß, wo ich anfangen soll. Ein "normales" CMS unterteilt eine Seite traditionell in separate Abschnitte und ermöglicht es mir, jeden dieser Abschnitte zu bearbeiten, indem ich entweder den Inhalt direkt bearbeite oder freigegebenen Inhalt an dieser Stelle einbinde. Ich kann nicht herausfinden, wie man das mit WordPress macht.
Ist es möglich, das Seitenmodell so zu "dehnen", dass eine Seite eigentlich nur ein Teil des Inhalts ist, von einer bestimmten Seite / Vorlage aufgenommen wird und - irgendwie - vor direkter Anzeige geschützt ist (Entfernen aus den Navigationsmenüs ist a Start).
Irgendwelche Hinweise, wo ich anfangen soll?
Aktualisieren
Stellen Sie sich zur Verdeutlichung einen Standard-WordPress-Blogbeitrag vor. Stellen Sie sich vor, es ist ein statischer Inhalt. Angenommen, Sie möchten, dass ein Editor nur den ersten Absatz dieses Blogposts ändern kann . Jetzt,
- Sollte sich der statische Inhalt dieser Seite in einem Beitrag, einer Seite, einer Vorlage oder etwas anderem befinden?
- Sollte der bearbeitbare Inhalt eine Seite sein, ... oder etwas anderes?
Beispielsweise:
<h1>About us</h1>
<p>Example.com is a company specialising in examples, demonstrations,
and canonical stuff.</p>
Wenn ich möchte, dass dieser Absatz bearbeitet werden kann, brauche ich vermutlich Folgendes:
<h1>About us</h1>
<p><?php insert_page('name-of-content-chunk'); ?></p>
Update 2
OK, nach vielen Recherchen, Versuchen und Irrtümern habe ich Folgendes aufgenommen:
- Wordpress ist nicht so eingerichtet, dass ein klassisches CMS einfach repliziert werden kann, insbesondere im Hinblick auf mehrere Inhalte auf einer Seite.
- Dieses Modell kann mehr oder weniger mithilfe von benutzerdefinierten Posts nachgeahmt werden (siehe unten).
- Seiten bieten jedoch fast die Möglichkeit, dies zu tun:
- Ein Plugin ist nur erforderlich, um eine Seite einzuschließen
- Seiten scheinen nicht so flexibel zu sein wie Beiträge - z. B. keine benutzerdefinierten Seitentypen
Die Methode, die ich unter Verwendung benutzerdefinierter Beitragstypen verwendet habe, lautet im Allgemeinen wie folgt:
- Die Seite ist eine "Seite" mit einer benutzerdefinierten Vorlage - nennen Sie sie "mypage.php".
- Diese Vorlage enthält Folgendes:
<div id = "header"> <? php query_posts (Array ('name' => 'foo', 'post_type' => 'header-text')); get_template_part ('Header-Text'); ?> </ div> <div id = "content"> <p> Eine statische Kopie in der Vorlage, die dies kann darf nur vom Site-Administrator geändert werden. </ p> <? php query_posts (Array ('name' => 'bar', 'post_type' => 'image')); get_template_part ('image'); ?> </ div>
Ist das für irgendjemanden da draußen sinnvoll ? :-)
Antworten:
Wie bereits erwähnt, möchten Sie möglicherweise benutzerdefinierte Beitragstypen verwenden . Sie sollten sich jedoch auch benutzerdefinierte Felder ansehen , in denen Sie Bits dynamischer benutzerdefinierter Daten angeben können, die Sie jeder Seite zuordnen möchten. Hier ist das Tutorial des Smashing Magazine zu benutzerdefinierten Feldern, das Tutorial (und das Video ) von Nettuts und eine Liste anderer Tutorials.
quelle
Wenn ich es richtig verstanden habe, möchten Sie unterschiedliche Layouts für unterschiedliche Seiten haben. Sie können dies erreichen, indem Sie entweder eine benutzerdefinierte Vorlage für jede Seite der Site oder eine einzelne benutzerdefinierte Seite mit verschiedenen Bedingungen erstellen.
Die erste Option finden Sie im Abschnitt zum WordPress-Codex zu benutzerdefinierten Vorlagenseiten: http://codex.wordpress.org/Pages#Creating_Your_Own_Page_Templates
Das zweite Tutorial finden Sie in diesem Tutorial: http://www.darrenhoyt.com/2007/12/26/multiple-wordpress-page-layouts-in-one-single-template/
Anschließend können Sie diese "Blöcke" in verschiedene PHP-Dateien verschieben, die Sie in Ihre spezifischen Seiten aufnehmen.
quelle
Ich denke, Ihre beste Wahl ist es, benutzerdefinierte Beitragstypen zu verwenden .
quelle
Schauen Sie sich ein Plugin wie Magic Fields an. Es verwendet intern benutzerdefinierte Felder, aber die Benutzeroberfläche kann über einen Rich-Text-Editor, ein Dropdown-Menü für Listen usw. verfügen.
Auf diese Weise können Sie Ihre Inhaltselemente, ihre Typen und (zur Auswahl) ihre Werte definieren. Dann kann Ihr Thema es anzeigen.
Eine Alternative wäre, einen Plugin-Bereich zu definieren und zu entscheiden, welches Plugin dort verwendet werden soll. Dies ist jedoch weniger flexibel, da immer noch keine zwei seiten- / postspezifischen Inhaltselemente zulässig sind.
quelle
Das beste Plugin zum schmerzlosen Hinzufügen von benutzerdefinierten Inhaltsbereichen über Titel und Inhalt hinaus ist wahrscheinlich das Plugin "Weitere Felder".
quelle