Was ist der Unterschied zwischen user_is_anonymous () und user_is_logged_in ()?

drupal.stackexchange https://drupal.stackexchange.com/questions/291

  •  16-10-2019
  •  | 
  •  

Frage

Was ist der Unterschied zwischen den beiden Funktionen? Wann sollte einer anstelle des anderen verwendet werden?

War es hilfreich?

Lösung

Die Funktionen sind im Wesentlichen Gegensätze.

Der einzige wirkliche Unterschied ist, dass die Funktion user_is_anonymous () eine zusätzliche Überprüfung für $ global ['mseu_admin'] hat, damit Menü -Administratoren in der Lage sein können, Menülinks zu verwalten, die nur für anonyme Benutzer sichtbar sind.

Es wird von verwendet von Drupal_valid_path () ebenso wie Menü_overview_form () Funktion:

function drupal_valid_path($path, $dynamic_allowed = FALSE) {
  global $menu_admin;
  // We indicate that a menu administrator is running the menu access check.
  $menu_admin = TRUE;
  if ($path == '<front>' || url_is_external($path)) {
    $item = array('access' => TRUE);
  }
  elseif ($dynamic_allowed && preg_match('/\/\%/', $path)) {
    // Path is dynamic (ie 'user/%'), so check directly against menu_router table.
    if ($item = db_query("SELECT * FROM {menu_router} where path = :path", array(':path' => $path))->fetchAssoc()) {
      $item['link_path']  = $form_item['link_path'];
      $item['link_title'] = $form_item['link_title'];
      $item['external']   = FALSE;
      $item['options'] = '';
      _menu_link_translate($item);
    }
  }
  else {
    $item = menu_get_item($path);
  }
  $menu_admin = FALSE;
  return $item && $item['access'];
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit drupal.stackexchange
scroll top