Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module › Modulsuche ›

content types automatisch in Taxonomie zusammenfassen ???

Eingetragen von qriz (17)
am 27.08.2009 - 18:47 Uhr in
  • Modulsuche
  • Drupal 6.x

Hi,

Ich suche schon ne weile nach einer Lösung für folgendes:

Wie kann ich am besten 1000+ nodes aus 10 nodetypen mit identischem cck fieldset(Felder sind identisch) in einen neuen contenttyp ändern oder übertragen und dabei automatisch den alten contenttypen in taxonomieterms schreiben?

p.s. automatisch ist hier der Schlüssel jedes node einzeln stellt ja kein problem dar!

Dankeschön im voraus

‹ Rating/Bewertung Daumen hoch Daumen runter Personalisierte Nodes ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Mit zwei einfachen

Eingetragen von traxer (1009)
am 27.08.2009 - 22:37 Uhr

Mit zwei einfachen Datenbankabfragen.

Ich bezweifel daß soetwas über bestehende Module machbar ist.

--
XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

könntest du vielleicht ein

Eingetragen von qriz (17)
am 27.08.2009 - 22:35 Uhr

könntest du vielleicht ein beispiel geben?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Wenn die Inhalte der

Eingetragen von traxer (1009)
am 27.08.2009 - 22:45 Uhr

Wenn die Inhalte der Inhaltstypen foo und bar in baz umgewandelt werden sollen, der derzeitige Inhaltstyp im Vokabular mit der ID 42 landen soll:

  1. Begriffe einfügen:
    INSERT INTO term_node (nid, vid, tid)
    SELECT n.nid, n.vid, td.tid
    FROM node AS n
    INNER JOIN term_data AS td ON td.name = n.type AND td.vid = 42
    WHERE n.type IN ('foo', 'bar');
  2. Typ ändern:
    UPDATE node SET type = 'baz' WHERE type IN ('foo', 'bar');

Das ist natürlich nur dann so einfach, wenn die Begriffe foo und bar schon im Vokabular vorhanden sind und wenn alle CCK-Felder, die in foo und bar auftauchen auch in baz vorhanden sind.

--
XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke ich werde mich uebers

Eingetragen von qriz (17)
am 29.08.2009 - 01:08 Uhr

Danke ich werde mich uebers wochenende mal darein knien.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Vielen Dank

Eingetragen von qriz (17)
am 30.08.2009 - 23:22 Uhr

Hat wunderbar geklappt (auch wenn ich den code nicht komplett verstanden hab es hat getan was ich wollte)

RESPEKT und Dank

  • Anmelden oder Registrieren um Kommentare zu schreiben

Die erste Abfrage ist ein

Eingetragen von traxer (1009)
am 31.08.2009 - 09:11 Uhr

Die erste Abfrage ist ein INSERT ... SELECT. Dabei wird eine SELECT-Abfrage verwendet (SELECT ... FROM ... INNER JOIN ... ON ... WHERE) um aus bestehenden Datensätzen neue zu erzeugen und diese dann in eine andere Tabelle einzutragen.

INNER JOIN kombiniert jeden Datensatz aus der node-Tabelle (in der gespeichert ist, welche Nodes es gibt) mit jedem Datensatz aus der term_data-Tabelle (in der gespeichert ist welche Begriffe es gibt) zu einem neuen Datensatz. Die ON-Bedingungen sorgen dafür, das von den neuen Datensätzen nur die verwendet werden, bei denen die Vokabular-ID 42 ist und der Begriff so benannt ist wie der Inhaltstyp. Die WHERE-Bedingng sorg dafür, das nur Nodes der von dir gewünschten Inhaltstypen betrachtet werden.

Ein paar Aufräumarbeiten habe ich noch vergessen:

INSERT INTO content_type_baz (nid, vid)
SELECT n.nid, n.vid
FROM node AS n
LEFT OUTER JOIN content_type_baz AS c ON n.vid = c.vid
WHERE n.type = 'baz' AND c.vid IS NULL

Achtung: Der Name des neuen Inhaltstyps steckt sowohl in der WHERE-Bedingung als auch im Tabellennamen der INSERT und LEFT OUTER JOIN-Zeilen.

Für jeden alten Inhaltstyp, den du noch brauchst, kommt noch folgendes hinzu (exemplarisch für Inhaltstyp 'foo':

DELETE c.*
FROM content_type_foo AS c
LEFT OUTER JOIN node AS n
WHERE n.type = 'baz'

--
XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 1 Woche 5 Tagen
  • Hey danke
    vor 1 Woche 6 Tagen
  • Update: jetzt gibt's ein
    vor 1 Woche 6 Tagen
  • Hallo, im Prinzip habe ich
    vor 2 Wochen 4 Tagen
  • Da scheint die Terminologie
    vor 2 Wochen 4 Tagen
  • Kannst doch auch alles direkt
    vor 3 Wochen 1 Tag
  • In der entsprechenden View
    vor 3 Wochen 1 Tag
  • Dazu müsstest Du vermutlich
    vor 3 Wochen 1 Tag
  • gelöst
    vor 5 Wochen 5 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 5 Wochen 6 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20451

Neue User:

  • ByteScrapers
  • Mroppoofpaync
  • 4aficiona2

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 20 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association