Come copiare il tipo di contenuto?


Risposte:


13

Se intendi esportare in duplicato, usa il modulo Caratteristiche .

Il modulo funzionalità consente l'acquisizione e la gestione di funzionalità in Drupal. Una caratteristica è una raccolta di entità Drupal che nel loro insieme soddisfano un determinato caso d'uso.

Features fornisce un'interfaccia utente e un'API per prendere diversi componenti di costruzione del sito da moduli con esportabili e raggrupparli in un singolo modulo di funzionalità. Un modulo caratteristica è come qualsiasi altro modulo Drupal tranne per il fatto che dichiara i suoi componenti (ad es. Viste, contesti, campi CCK, ecc.) Nel suo file .info in modo che possa essere controllato, aggiornato o ripristinato a livello di programmazione.


1
Questo sembra essere il metodo migliore al momento. Sfortunatamente non esiste un modulo (ancora?) Come Content Copy in Drupal 6.
marcvangend

Devo esportare quindi importare vuoi dire?
Raptor,

2
Le funzionalità sono eccessive per la copia di un tipo di contenuto. Ha lo scopo di raggruppare varie entità / moduli / altro insieme per scopi altamente personalizzati. Se si desidera una semplice copia di un tipo di contenuto, vedere @ user3936 di seguito.
doub1ejack

Ho trovato il modulo Bundles Inherit più semplice; vedi la mia risposta qui sotto .
Matt Browne,

19

Forse troppo tardi puoi usare il modulo Bundle Copy :

La copia del pacchetto è un sostituto del modulo Copia contenuto che risiede nel progetto CCK per Drupal 6. Dispone del supporto di esportazione / importazione per: tipi di nodo, tassonomia, utente, campi API campo, gruppi di campi

AGGIORNARE le note 7.x-2.x-dev

Sono state aggiunte le seguenti funzionalità:

  • Esportazione / importazione di raccolta campi
  • Clonazione di tipi di contenuto
  • Esportazione / importazione di pacchetti entità commerciale

Drupal 8: Bundle Copy si trova in Drupal 8 Core CMI.


1
Bundle Copy non è adatto per la clonazione di un tipo di contenuto su un altro tipo di contenuto nello stesso sito. E, fare una ricerca / sostituzione non è semplice. Esistono array di nodi che fanno riferimento ad altri tipi di contenuto. Non l'ho ancora capito, ma l'ho chiesto febbrilmente. Se sapessi cosa è sicuro e non è sicuro cambiarlo, sarebbe utile. Solo un avvertimento. (Un utente che ha risposto a questa stessa richiesta ha notato di avere errori di corruzione del database durante la ricerca / sostituzione di tutte le istanze del nome della macchina del tipo di contenuto originale.

@ user7558 Copia pacchetto non è adatto per la clonazione di un tipo di contenuto su un altro tipo di contenuto nello stesso sito. Sì, hai solo bisogno del minimo intervento manuale
Clive

Il loro è un problema per "Clonare i tipi di contenuto sullo stesso sito?" drupal.org/node/1589118
gagarine

1
7.x-2.x-dev supporta la clonazione di un tipo di contenuto sullo stesso sito tramite l'interfaccia utente.
mpdonadio

Penso che Bundle Copy sia l'opzione preferita in quanto l'utilizzo dell'approccio Caratteristiche implicherebbe la modifica manuale del codice generato dalla macchina per cercare / sostituire / rinominare il codice del tipo di contenuto generato dalla funzione. A meno che uno non conosca bene il codice del modulo Feature e su come genera questo codice, potrebbero esserci incognite / ipotesi fatte sulla codifica manuale in questo modo e risultati sfortunati. Aggiornato 1 ottobre 14 commento 1 di 2
therobyouknow

14

Ho usato il modulo Strumenti di campo e ha funzionato perfettamente.

Tutto quello che ho fatto è stato creare il mio secondo tipo di contenuto, utilizzare questa funzionalità del modulo per clonare tutti i campi nel nuovo tipo di contenuto, quindi disinstallare il modulo. La copia in bundle e le caratteristiche sembrano modi ridicoli per duplicare un tipo di contenuto, questo è stato super semplice ed esattamente quello che volevo.


Se tutto ciò che vuoi fare è duplicare un tipo di contenuto personalizzato complesso, questa è la strada da percorrere. Le funzionalità comportano un sovraccarico non necessario e il tipo di contenuto è legato a un modulo generato. Bleh. Usa questo. Installa / abilita, vai al tipo di contenuto che desideri clonare, cerca una Clone Fieldsscheda in alto, seleziona i campi da copiare, il nodo in cui copiarli e il gioco è fatto.
doub1ejack,

1
Penso che Field Tools sia il modo più rapido e semplice. Grazie!
Roger,

Creare un nuovo tipo di contenuto vuoto, Toolsscheda, Clone fields to this bundleselezionare i campi di un tipo di contenuto nodo esistente, Add field instances.
Hugo

4

Ho trovato il (relativamente nuovo) modulo Bundle Inherit un modo molto semplice per farlo. Assicurati di abilitare il modulo "Bundle Inheritance Node" (bundle_inherit_node) oltre al modulo bundle_inherit, quindi otterrai una nuova scheda "Ereditarietà" quando crei nuovi tipi di contenuto.

(Ti dà anche la possibilità di scegliere tra "eredità morbida" e "eredità rigorosa" ... per quanto ne so, "eredità morbida" esegue semplicemente una copia singola dei campi mentre "eredità rigorosa" tiene traccia del gerarchia ereditaria).


4

Il modo più semplice è usare Bundle Copy - la versione 7.2 che è in sviluppo ma ha funzionato perfettamente per me.

Dopo aver installato il modulo, vai alla pagina "tipi di contenuto" e fai clic sulla nuova scheda "clone".

In "Pacchetto sorgente", seleziona il tipo di contenuto che desideri clonare.

In "Nuovo nome pacchetto", inserisci il nome del nuovo tipo di contenuto che desideri creare. Fai clic su "clona" e ora vedrai quel nuovo tipo di contenuto nel tuo elenco.

Anche gli strumenti sul campo fanno il lavoro, ma non è così semplice.



Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.