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

Node erstellen, wenn vorhanden, editieren

Eingetragen von Antares (31)
am 20.03.2012 - 20:37 Uhr in
  • Module
  • Drupal 6.x

Hallo!

Wieder eine Frage für die Drupal-Profis. :)

Ich habe einen Inhaltstypen "Inhaltstyp1", der pro Benutzer nur einmal angelegt werden darf / soll.
Diese Einschränkung lässt sich m.E. über das Modul Node Limit erreichen.

Nun habe ich in meinem Benutzermenü einen Eintrag "Inhaltstyp1 erstellen", der auf die Seite zum Erstellen verweist. Am liebsten wäre mir nun, dass sich der Link verändert in "Inhaltstyp1 ändern", sobald der Benutzer einen Inhaltstyp1 angelegt hat. Dieser Link sollte idealerweise auch gleich auf die Bearbeitenseite des angelegten Nodes verweisen. Die Nodes sind alle von der URL her gleich aufgebaut: Inhaltstyp1/[user_id]

Kann man das irgendwie bewerkstelligen?

Alternativlösung wäre folgendermaßen:
Beim Registrieren wird automatisch ein Inhaltstyp1 für den Nutzer angelegt. Das Menü verweit dann dynamisch auf den Inhaltstypen des jeweiligen Benutzers. Geht das umzusetzen?

Vielen Dank schonmal!

Viele Grüße
Heiko

‹ inactive user - Für bestimmte Benutzergruppen Twittern, automatisch ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Rules oder Profile2

Eingetragen von Achim Wagenknecht (39)
am 21.03.2012 - 09:36 Uhr

Hi,

mir scheint, die beste Lösung dafür wäre Profile2
http://drupal.org/project/profile2

Falls dir das nicht zusagt, was mit Rules bauen.

Viel Erfolg!
Achim

Web und Text mit Hand und Fuß

  • Anmelden oder Registrieren um Kommentare zu schreiben

Zitat:Beim Registrieren wird

Eingetragen von Exterior (2903)
am 21.03.2012 - 10:00 Uhr
Zitat:

Beim Registrieren wird automatisch ein Inhaltstyp1 für den Nutzer angelegt. Das Menü verweit dann dynamisch auf den Inhaltstypen des jeweiligen Benutzers. Geht das umzusetzen?

Ja, das geht z. B. mit Content Profile und Me Aliases.

Ansonsten könntest du auch über Theme-Funktionen den Link überschreiben, wenn bereits ein Node von dem Typ + User erstellt wurde.

Edit:
@Achim
Profile2 in Drupal 6 wird erstmal ziemlich schwierig ;-) Das gibt's nur für D7

  • Anmelden oder Registrieren um Kommentare zu schreiben

subpath_alias und

Eingetragen von Kirreth (35)
am 21.03.2012 - 16:37 Uhr

subpath_alias und url_alter

Damit kann man wunderbar den edit Link auf den entsprechenden Alias setzen. Dazu haben wir dann auch noch menu_token mit eingebunden, womit man dann dynamische Links in den Menüs verwenden kann. Sehr vorteilhaft, wenn man direkt zur Bearbeitenseite eines ganz bestimmten Nodes spingen will und dabei /node/%/edit nicht in der URL anzeigen lassen möchte.

Damit haben wir das gelöst und sind super zufrieden.

Edit: Dein Node kannst du mit Rules erstellen lassen. Wir haben es bei uns so, dass unsere User automatisch bei Login eine Galerie bekommen, sofern keine vorhanden ist. Den Link "Galerie erstellen" haben wir entfernt und wenn keiner weiß, wie man der Link aufgebaut ist, gibt es auch keine weiteren Galerien oder eben andere Inhalte. Mittels der oberen Module kannst du dir dann auch einen dynamischen Link basteln, welcher im Menü erscheint (sofern erwünscht) und direkt auf die Bearbeiten-Seite des Nodes verweist.

Gruß,
Kirreth

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo! Danke für die vielen

Eingetragen von Antares (31)
am 21.03.2012 - 20:54 Uhr

Hallo!

Danke für die vielen Antworten.

Die Lösung mit ContentProfile ging doch nicht, da er dann ja standardmäßig den Inhaltstypen für jeden Benutzer erstellt und wir doch nur gerne Inhaltstypen mit Inhalt haben würden.

Daher habe ich es jetzt folgendermaßen gelöst:

<?php
    

        $items
['myedit/Inhaltstyp1'] = array(
          
'title' => 'Inhaltstyp1 &auml;ndern',
       
'page callback' => 'mymodule_page_editInhaltstyp1',
       
'access arguments' => array('access content'),
       
'type' => MENU_CALLBACK
   
);
   

function
mymodule_page_editInhaltstyp1() {
    global
$user;
   
$query = "SELECT n.nid AS nid FROM {node} n WHERE n.type = 'Inhaltstyp1' AND n.uid = %d ";
   
//if (module_exists('translation') && translation_supported_type($node->type))
    //{
        //$query .= "AND n.language = '%s'";
    //}

   
$row = db_fetch_object(db_result(db_query($query, $user->uid)));   
   
    if(
$result != NULL)
    {
       
drupal_goto('node/' . $result . '/edit');
    }
    else
drupal_goto('node/add/Inhaltstyp1');
}
?>

Gruß
Heiko

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • All Casino Gambling Tips
  • migrate: legacy-db-key in settings.php, wie?
  • Webform - kleiner Einleitungstext vor dem Formular.
  • Konto löschen, wie? (Drupalorg/Drupalcenter)
  • Wie 'saubere' Dateinamen bei Upload erzwingen?
  • Modul lässt Website anstürzen
  • Showroom
  • rename admin paths - Probleme mit Modul - Alterantive?
  • Probleme mit Installation voa COMPOSER
  • Drupal- Vor- und Nachteile
  • Text Editor verschwunden
  • Wie URL Alias für Entity in Drupal 9 erstellen?
Weiter

Neue Kommentare

  • Das findet man in diesem
    vor 1 Tag 18 Stunden
  • Hallo, bitte löscht meinen
    vor 3 Tagen 17 Stunden
  • Schau mal hier
    vor 3 Tagen 22 Stunden
  • Das Modul ist ja ganz schön,
    vor 6 Tagen 21 Stunden
  • Modul Purge
    vor 1 Woche 16 Stunden
  • Nö
    vor 1 Woche 1 Tag
  • Manuell aus der Datenbank löschen
    vor 1 Woche 1 Tag
  • Bots ... auf Abstand
    vor 1 Woche 1 Tag
  • Cache vs Browser
    vor 1 Woche 1 Tag
  • h2b2 schrieb Nach einigen
    vor 1 Woche 4 Tagen

Statistik

Beiträge im Forum: 247806
Registrierte User: 19538

Neue User:

  • ArthurCluby
  • Chrisvek
  • RebeccaBeils

» Alle User anzeigen

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