Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Allgemeines zu Drupal ›

[gelöst] wie finde ich die datenbankpfade heraus ?

Eingetragen von vayacondioz (27)
am 19.12.2009 - 11:57 Uhr in
  • Allgemeines zu Drupal
  • Drupal 6.x

Hi Leute,

Momentan versuche ich eine eigene user_profile.tpl.php zu erstellen. Bei den Profilfeldern an sich gibt es soweit keine Probleme.
Schwierig wirds für mich erst wenn ich dann zum Beispiel die UserPunkte anzeigen lassen möchte.
Da habe ich hier im Forum schon den richtigen schnipsel gefunden, der auch einwandfrei funktioniert.
Jetzt möchte ich allerdings auch das Gästebuch (Guestbook modul) auf der Profilseite anzeigen lassen.
Ich habe mir da mal das modul selber angeschaut, aber da ich nicht besonders gut mit php umgehen kann,werde ich nicht ganz schlau daraus.
Kann mir jemand sagen wie ich das Gästebuch auf die Profilseite anzeigen lassen kann und auch woher man diese codes herbekommt, da ja noch einige andere sachen angezeigt werden soll (Fotoalbum etc).
wenn ich schonmal dabei bin.
Bei dem Geburtstag hab ich noch nen minimales Problem wo ich vielleicht ein falsches Verständniss für habe.
Und zwar kann man sich ja einstellen (birthday modul!?) ob man das Geburtsjahr anzeigen lassen möchte oder nicht. da habe ich folgendes ausprobiert:

if ($account->birthdays_user_hide_year == 0){
print $account->profile_geburtstag[year];
} else {
echo "XXXX";
wie gesagt bin kein pro im php ^^
Danke im vorraus.

‹ Clean URLs + Seite wurde nicht gefunden Multidomain + Multilingual + Domain Access Module ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Re: wie finde ich die datenbankpfade heraus ?

Eingetragen von traxer (1009)
am 19.12.2009 - 15:38 Uhr

Schau dir mal die Datei gestboook.module an. Dort findest du recht am Anfang die Funktion guestbook_menu. Über diese Funktion teilt das Modul dem Drupal-Kern mit, für welche Drupal-Pfade das Modul zuständig ist (guestbook_menu ist eine Implementierung von hook_menu). Unter anderem findest du dort ungefähr folgendes:

<?php
/* 1 */ $items['user/%user/guestbook'] = array(
/* 2 */   'page callback' => 'guestbook_page',
/* 3 */   'page arguments' => array(1),
/* 4 */   'access callback' => 'user_access',
/* 5 */   'access arguments' => array('access user guestbooks'),
);
?>

Das heißt übersetzt folgendes:

  1. Unter dem Drupal-Pfad user/120/guestbook wird eine Seite vom guestbook-Modul bereitgestellt.
  2. Die Seite wird erzeugt indem die Funktion guestbook_page aufgerufen wird.
  3. Die Funktion guestbook_page bekommt einen Parameter übergeben, und zwar den ersten aus dem Drupal-Pfad (n.b. in der Informatik beginnt die Zählung immer bei null). Da an dieser Stelle (%user) eine benannte Wildcard steht, wird allerdings nicht der dortige Wert selbst übergeben (120 im Beispiel), sondern das Ergebnis von user_load(120).
  4. Um zu prüfen ob der aktuelle Benutzer überhaupt die Berechtigung hat, die Seite zu sehen, wird die Funktion user_access aufgerufen.
  5. Die Funktion user_access bekommt die Zeichenkette 'access user guestbooks' als Argument übergeben.

Mit diesen Informationen kannst du das Gästebuch von Benutzern in deine eigene user_profile.tpl.php integrieren:

<?php

// Darf der aktuelle Benutzer das Gästebuch sehen?
if (user_access('access user guestbooks'))
{
 
$gb_uid = arg(1); // ID des Benutzers, dessen Gästebuch angezeigt werden soll.
 
$gb_user = user_load($gb_uid); // Der Benutzer, dessen Gästebuch angezeigt werden soll.
 
print(guestbook_page($gb_user)); // Gästebuch ausgeben.
}
?>

Eine Alternative wäre einen User Override mit dem Panels-Modul. Allerdings weiß ich nicht ob das Gästebuch Panels-Unterstützung mitbringt.

--
XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

Einwandfrei, danke dir, sehr

Eingetragen von vayacondioz (27)
am 21.12.2009 - 07:47 Uhr

Einwandfrei,
danke dir, sehr gut erklärt ^^

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Canvas Palette: Eine fertige Komponentenbibliothek für Drupal Canvas
  • Hilfe zu Updates oder Composer
  • Vergleich Drupal und Contao
  • [geloest] Blocks in Bootstrap nebeneinander darstellen und nicht untereinander
  • DrupalCamp Frankfurt 27-28 November 2026
  • Bitte mein Bentzerkonto löschen
  • 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
Weiter

Neue Kommentare

  • Danke ich werde mir die
    vor 4 Wochen 20 Stunden
  • Vielen Dank für Ihren
    vor 4 Wochen 3 Tagen
  • Composer ist sehr ratsam
    vor 4 Wochen 5 Tagen
  • Vielen Dank für den
    vor 5 Wochen 23 Stunden
  • Die alten CMS Vergleiche von contentmanager.de
    vor 5 Wochen 1 Tag
  • Gut gemacht
    vor 5 Wochen 1 Tag
  • Layout Builder etc. z.B. für Landing Pages
    vor 5 Wochen 1 Tag
  • Links
    vor 5 Wochen 4 Tagen
  • Moin,wow, sehr gutes
    vor 5 Wochen 5 Tagen
  • Dass ist eine spannende
    vor 5 Wochen 5 Tagen

Statistik

Beiträge im Forum: 250316
Registrierte User: 20566

Neue User:

  • Robertspaft
  • drupalthemes
  • rofilm

» 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 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