Gehen benutzerdefinierte Beitragstypen verloren, wenn das Thema geändert wird?


8

Ich bin im Begriff, mit der Arbeit an einem benutzerdefinierten WordPress-Thema zu beginnen, und ich möchte wissen, wie vorsichtig ich mit benutzerdefinierten Posts sein muss. Angenommen, ich erstelle ein WordPress-Design, das mehrere benutzerdefinierte Beitragstypen registriert. Nach meinem Verständnis geschieht dies bei Aktivierung des Themas.

Wenn ich mehrere Beiträge dieses benutzerdefinierten Typs erstellen und dann zu einem Thema wechseln würde, das diesen benutzerdefinierten Beitragstyp nicht hat, hätte ich die Beiträge vollständig verloren?

Was wäre, wenn ich zu einem anderen Thema wechseln würde, bei dem DID denselben benutzerdefinierten Beitragstyp hat (falls dies möglich ist), würden sie noch existieren?

Was ist mit denselben Problemen im Zusammenhang mit der benutzerdefinierten Taxonomie? Wenn ich zu einem anderen Thema wechsle, das die benutzerdefinierte Taxonomie nicht unterstützt, gehen die Taxonomiedaten von benutzerdefinierten Posts verloren (wenn sie überhaupt gespeichert werden). Werden die Daten für die benutzerdefinierte Taxonomie noch vorhanden sein?


1
Beiträge sind datenbankgesteuert. Alle Daten sollten da sein. Ich habe die Erfahrung gemacht, dass ich ein halbes Dutzend Mal das Thema gewechselt habe. Stellen Sie sich ein Thema vor, um die Beiträge anzuzeigen.
Shawn

Wenn der benutzerdefinierte Beitragstyp im Themenordner selbst definiert ist und Sie ihn deaktivieren möchten, wird Ihr Beitragstyp "ausgeblendet", bis Sie das Thema wieder aktivieren. Der Beitragstyp befindet sich weiterhin in der Datenbank, wie im obigen Kommentar angegeben.
Howdy_McGee

"Meines Erachtens geschieht dies bei Aktivierung des Themas" - dies geschieht zur Laufzeit, dh wenn der Code ausgeführt wird, dh beim Laden jeder Seite.
Andrew Bartel

1
Früher habe ich CPTs in den Themenfunktionsdateien registriert, sie jedoch in einem Ordner mit Mu-Plugins erstellt. Im Falle einer Themenänderung müssen Vorlagen hinzugefügt werden, um die mit CPTs verknüpften benutzerdefinierten Felder anzuzeigen. Die CPTs bleiben jedoch im Administrationsbereich sichtbar.
Ray Gulick

Antworten:


9

Du verlierst nichts. Alle Ihre benutzerdefinierten Beiträge, Taxonomien, Begriffe und ihre Beziehungen befinden sich noch in der Datenbank. Ohne diese können jedoch nicht auf die Daten zugegriffen werden, wie auf der WordPress-Bearbeitungsseite oder bei benutzerdefinierten Abfragen und dergleichen.


5

Wie bereits erwähnt, befinden sich alle Daten in Ihrer Datenbank, wenn Sie in Zukunft das Thema wechseln, sind jedoch nicht verfügbar.

Aus diesem Grund möchte ich ein Funktions-Plugin erstellen, das alle meine benutzerdefinierten Beitragstypen, Taxonomien und Shortcodes enthält. Sie können sogar ein Plugin einrichten , das in Ihrer Wordpress-Installation immer aktiviert ist. Justin Tadlock hat einen Artikel über das Erstellen eines Plugins für benutzerdefinierte Funktionen geschrieben , das es wert ist, gelesen zu werden.


4

Sie sollten ein ortsspezifisches Plugin oder untergeordnetes Thema für Ihren benutzerdefinierten Code erstellen, das Code zum Registrieren von benutzerdefinierten Beitragstypen und benutzerdefinierten Taxonomietypen enthält.

Sie können den Code dann mit jedem übergeordneten Thema verwenden.

Wie bereits erwähnt, geht nichts verloren, da alles in der Datenbank gespeichert ist, aber eindeutig nicht im Backend von WordPress angezeigt wird, es sei denn, Sie verwenden Code mit denselben CPT- und Steuernamen wie zuvor, um sie im neuen Thema zu registrieren.


2

Wenn Sie das Thema ändern und das neue Thema nicht denselben benutzerdefinierten Beitragstyp hat, wird es für das neue Thema nicht angezeigt. Sie können es jedoch problemlos zurückerhalten, indem Sie einfach den Code aus Ihrem alten Thema für den benutzerdefinierten Beitragstyp kopieren und in die Datei function.php für neue Themen einfügen. Es gehen keine Daten verloren.

Möglicherweise liegt ein anderes Problem beim Anzeigen des benutzerdefinierten Beitragstyps für das neue Thema vor. Es ist jedoch garantiert, dass keine Daten verloren gehen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.