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

Default Content Type / Inhaltstyp erweitern

Eingetragen von flofi (30)
am 21.01.2013 - 17:20 Uhr in
  • Module
  • Drupal 7.x oder neuer

Hallo zusammen,

auf einer Seite habe ich ein Teaser-Laufband (Carousel). Ein Teaserelement besteht hier aus folgenden Elementen:
1.Teaser-Headline (Text)
2.Teaser-Subline (Text)
3.Teaser-Bild (Bild)
(Teaser-Url (Link zum Inhalt)

Jetzt soll JEDER Inhaltstyp diese Felder standardmäßig erhalten. Am besten wie folgt:
Jeder Inhaltstyp bekommt eine Checkbox "Teaser für diesen Eintrag erstellen" (optional)
Wenn diese Checkbox angehakt wird, erscheinen die 3 neuen Pflicht-Felder, siehe oben.

So kann man für jeden Inhalt bei Bedarf einen Teaser erstellen.

Man könnte diese Felder "händisch" für jeden Inhaltstyp anlegen, wäre aber nicht so schön.
Wenn ich momentan einen neuen Inhaltstyp erstelle, hat dieser ja auch als Standard ein Feld "Body", ein Feld "Title"...

Wie löst man dieses Problem? Ein Modul anlegen? Ein bestehendes verwenden?

Die Frage die dann noch kommt: Wie kann ich mit views diese Felder zusammenfassen? Abfrage: Alle Inhalte, bei denen die obige Checkbox angehakt ist.

Vielen Dank für eure Ideen / Hilfe

Flo

‹ Simple_access Geotagging - automatisches Daten auslesen aus den Bildern und in die Galerie stellen ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Entweder ein eigenes Modul

Eingetragen von wla (9466)
am 21.01.2013 - 17:35 Uhr

Entweder ein eigenes Modul (sieh Dir an, wie das im Node-Modul gelöst ist) oder Du benutzt [do:field_collection]. Damit definierst Du ein Feld als Field-Collection und danach die Felder, aus denen die Field-Collection bestehen soll. Bei einem neuen Datentyp brauchst Du dann nur dieses Field-Collection Feld hinzuzufügen um die gesamte Gruppe in diesen Datentyp benutzen zu können. Im View brauchst Du dann aber zusätzlich eine Beziehung zur Field-Collection um die einzelnen Felder ansprechen zu können.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hi Werner, vielen Dank. Ich

Eingetragen von flofi (30)
am 21.01.2013 - 17:42 Uhr

Hi Werner,

vielen Dank. Ich schau mir die beiden Vorschläge gleich mal an!

gruß
flo

  • Anmelden oder Registrieren um Kommentare zu schreiben

Standard Feld zu einem Node

Eingetragen von flofi (30)
am 21.01.2013 - 19:08 Uhr

Hi,

müsste ich mir dann folgenden Code anschauen, oder gehört da noch mehr dazu?

/**
* Add default body field to a node type.
*
* @param $type
*   A node type object.
* @param $label
*   The label for the body instance.
*
* @return
*   Body field instance.
*/
function node_add_body_field($type, $label = 'Body') {
   // Add or remove the body field, as needed.
  $field = field_info_field('body');
  $instance = field_info_instance('node', 'body', $type->type);
  if (empty($field)) {
    $field = array(
      'field_name' => 'body',
      'type' => 'text_with_summary',
      'entity_types' => array('node'),
    );
    $field = field_create_field($field);
  }
  if (empty($instance)) {
    $instance = array(
      'field_name' => 'body',
      'entity_type' => 'node',
      'bundle' => $type->type,
      'label' => $label,
      'widget' => array('type' => 'text_textarea_with_summary'),
      'settings' => array('display_summary' => TRUE),
      'display' => array(
        'default' => array(
          'label' => 'hidden',
          'type' => 'text_default',
        ),
        'teaser' => array(
          'label' => 'hidden',
          'type' => 'text_summary_or_trimmed',
        ),
      ),
    );
    $instance = field_create_instance($instance);
  }
  return $instance;
}

Wo müsste ich dann die Funktion node_add_XXX_field einfügen? In der template Datei? Per Hook? Bin noch neu in der Materie...

Es sollen eben die oben genannten 3 Felder automatisch in jedem Inhaltstyp zur Verfügung stellen. Das mit der Checkbox wäre dann eben noch ein schönes Feature...

Danke für die Tipps...
Gruß
flo

  • Anmelden oder Registrieren um Kommentare zu schreiben

Du mußt dazu aber die

Eingetragen von wla (9466)
am 21.01.2013 - 20:06 Uhr

Du mußt dazu aber die entsprechenden Felder erst einmal definiert haben. Die von Dir gefundene Funktion setzt die Existenz des Body-Feldes voraus. Nimm lieber die Field-Collection.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Beim Aufruf einiger Inhalte erhalte ich folgende Fehlermeldung
  • Neuinstallation: vermutlich ein rewrite-Problem
  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
  • (gelöst)Drupal 11 installieren
  • Titel ausblenden
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • Rolle erstellen nicht zu finden
  • für drupal11 ein Slider Modul
Weiter

Neue Kommentare

  • Gefunden
    vor 6 Wochen 5 Tagen
  • Vielen Dank für die ausführlichen Hinweise...
    vor 7 Wochen 2 Tagen
  • Mögliche Ursachen und nächste Schritte
    vor 7 Wochen 2 Tagen
  • Was für einen Server benutzt
    vor 9 Wochen 5 Tagen
  • Wenn die Subdomain auf
    vor 10 Wochen 11 Stunden
  • ordnerstruktur
    vor 10 Wochen 22 Stunden
  • Die Subdomain muß auf den
    vor 10 Wochen 3 Tagen
  • Verwende doch das Tag dafür,
    vor 13 Wochen 5 Tagen
  • Guckst du hier: step by step
    vor 13 Wochen 4 Tagen
  • Guckst du hier: step by step
    vor 13 Wochen 4 Tagen

Statistik

Beiträge im Forum: 250294
Registrierte User: 20544

Neue User:

  • Kupit_hiPi
  • Thomasbxh
  • Kupit_qsPi

» Alle User anzeigen

User nach Punkten sortiert:
wla9466
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 18 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