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

Regel für Aktion "bei Aktualisierung von Inhalt" wird auch bei "Erzeugen von neuen Inhalt" angewandt

Eingetragen von ThuleNB (371)
am 17.02.2015 - 11:52 Uhr in
  • Module
  • Drupal 7.x oder neuer

Hallo zusammen,

ich habe eine Regel mit dem Modul "Rules" erstellt:

Zitat:

Ereignis: Nach dem Aktualisieren bestehenden Inhalts of Typ Produkt
Aktion: Seiten-Weiterleitung

Die Regel funktioniert gut bis auf die Tatsache, dass sie auch für das Ereignis "Nach Erstellen von neuem Inhalt of Typ Produkt angewandt wird.

Die Google-Suche brachte mich nur auf dieses ähnliche Problem und den darin verlinkten Post.

Man kann da vielleicht was mit PHP machen, oder? Leider kenne ich mich damit nicht aus. Kann mir bitte jemand helfen?

Grüße
Thomas

‹ [gelöst] Colorbox Ordnerstruktur - auf verschiedene Verzeichnisse zugreifen? URL in mehreren Sprachen erreichbar? ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

In Deinem Link ist doch eine

Eingetragen von Stefan.Korn (286)
am 17.02.2015 - 12:05 Uhr

In Deinem Link ist doch eine Lösung angegeben. Hast Du das versucht? Gibt es dabei Probleme?

Hinweis: Um "Execute custom PHP code" in Rules Condition verfügbar zu haben, musst Du PHP Filter aktivieren (Core-Modul).

Falls Du bei Deiner Seite verschiedene Benutzer mit unterschiedlichen Rollen hast, solltest Du darauf achten dass Du mit PHP-Filter keine Sicherheitslücken öffnest.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich habe diesen Code

Eingetragen von ThuleNB (371)
am 17.02.2015 - 12:25 Uhr

Ich habe diesen Code ausprobiert:

<?php
if($node->changed) {
   return
true;
} else {
   return
false;
}
?>

Also, dass die Regel nur dann angewandt werden soll, wenn der Inhalt geändert wurde. Ich wollte es dann testen und einen neuen Inhalt "Produkt" hinzufügen. Dann kommt aber eine Meldung "Zugriff verweigert". Mein Fall ist auch nicht genau gleich wie in dem Link, denn dort hat der Poster zwei Regeln und beide werden angewandt. Ich habe nur eine Regel mit einem Ereignis, welche aber auch auf ein nicht definiertes Ereignis reagiert.

Danke für die Hilfe.

EDIT: "Zugriff verweigert" konnte ich beheben. Das lag an etwas anderem.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hm, in dem Thread wird davon

Eingetragen von Stefan.Korn (286)
am 17.02.2015 - 12:34 Uhr

Hm, in dem Thread wird davon gesprochen $node->changed und $node->created zu vergleichen um herauszufinden ob der Node neu ist.

Also sollte es vermutlich lauten:

if ($node->created == $node->changed) {
return false;
}
else
{
return true;
}

und soll man nicht die php-delimiters weg lassen bei Execute Custom Code in Rules?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Lösungsansatz ohne php

Eingetragen von marco.b (643)
am 18.02.2015 - 12:37 Uhr

Das Problem scheint nur bei mehreren getriggerten Rules zu entstehen, normal ist das Verhalten nicht.
Zur Analyse: Unter admin/config/workflow/rules/settings kannst du bei "Show debug information" immer einstellen, dann sieht du, welche Rules getriggert werden. Ich vermute, dass eine weitere Rule getriggert wird, die du sinnvoll einschränken kannst. Auf jeden Fall ist es gut, evtl. Kettenreaktionen zu erkennen.

Falls das nicht hilft, wäre ein Lösungsansatz ohne php, dass du in deiner Rule eine condition setzt "Datenwert ist leer" z.B für das Body Field (node-unchanged:body), das ist allerdings ungetestet, ich kann das Problem ja nicht nachvollziehen.

Beste Grüße
Marco

– Grüße aus Franken –

"Eine Entscheidung ist dann eine gute Entscheidung, wenn Sie zu mehr Möglichkeiten führt.”
Heinz von Foerster (Kybernetiker)

www.bienlein-kommunikation.de

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Schriftgröße standard einstellen
  • PHP 8.1 - Deprecated function: rtrim()
  • Drupal Website gestalten
  • MariaDB 10.6
  • Entity Reference - Title Felder werden als Link angezeigt
  • Tokens werden in Viev als Link angezeigt
  • [bug entdeckt & workaround gefunden] benutzerdefinierte Felder vom Userprofil tauchen ungefragt auch in den Forumtopics auf...
  • [gelöst] Mass contact Empfängerliste nach Taxonomy Term statt Rolle
  • Update V. 9.3.12 auf V. 9.4 mit Fehler: Modul mySQL fehlt. Bitte Hilfe.
  • Sprachpfad, in Drupal Korrekt einstellen, auch bei den Meta-Tags
  • Update von Drupal 9.3 auf 9.4 oder bei 9.3 bleiben
  • Terminverwaltung
Weiter

Neue Kommentare

  • core_version_requirement: ^8
    vor 4 Stunden 18 Minuten
  • core_version_requirement: ^8
    vor 4 Stunden 21 Minuten
  • ok. Wenn ich das mache
    vor 4 Stunden 27 Minuten
  • Bei gleichem Namen hat das
    vor 5 Stunden 7 Sekunden
  • Sorry, dass ich mich hier
    vor 5 Stunden 11 Minuten
  • Habe Patch versucht
    vor 12 Stunden 9 Minuten
  • Hier wird ein Patsch
    vor 13 Stunden 59 Minuten
  • Mit Drupal geht das um 150
    vor 1 Tag 1 Stunde
  • Ah, ok. Wenn es ein Paragraph
    vor 2 Tagen 1 Stunde
  • Also kleiner Nachtrag noch:
    vor 2 Tagen 2 Stunden

Statistik

Beiträge im Forum: 247863
Registrierte User: 19588

Neue User:

  • Tkakah
  • JeraldFub
  • andycrestodina

» Alle User anzeigen

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