Kopfzeile eines Blocks entfernen
Eingetragen von Robbi (49)
am 05.11.2007 - 00:45 Uhr in
am 05.11.2007 - 00:45 Uhr in
Hallo,
die Blöcke haben ja in der Default-Einstellung Kopfzeilen, in denen Blocknamen und Grafik sehen. Ich möchte bei einem der Blöcke diese Zeile entfernen. Wenn ich das in der block.tpl.php mache, hat das immer Auswirkungen auf sämtliche Blöcke. Gibt es eine Möglichkeit, das nur bei einem einzigen Block auszublenden oder zu löschen?
Oder andere Möglichkeit: Kann ich eine zusätzliche Datei anlegen wie block2.tpl.php? Wenn ja, wie weise ich die dann zu?
Tschüss
Robbi
- Anmelden oder Registrieren um Kommentare zu schreiben
Meinst du denn den Titel? 1.
am 05.11.2007 - 00:56 Uhr
Meinst du denn den Titel?
1. Startseite › Verwalten › Strukturierung › Blöcke
2. Den Block konfigurieren
3. "Den Standardtitel des Blocks ändern. Mit wird kein Titel angezeigt, wenn das Feld leer ist, wird der Standardtitel verwendet."
Ich meine schon den Titel,
am 05.11.2007 - 01:21 Uhr
Ich meine schon den Titel, aber nicht so. Auf meiner Startseite (www.ojmel.de) habe ich in der Mitte über dem Content einen Block ohne Titel angelegt, der wird auch korrekt dargestellt. Aber die Grafik, die bei allen anderen Blöcken auch vorhanden ist, möchte ich an dieser Stelle nicht haben.
daher meine Frage,
1. ob man die entweder irgendwie in einem bestimmten Block ausblenden kann oder
2. ob man einen zusätzlichen Block erstellen kann, wie block2.tpl.php, in dem das ausgeblendet ist.
Tschau
Robbi
Du könntest in der
am 05.11.2007 - 01:39 Uhr
Du könntest in der block.tpl.php Datei eine if Abfrage einbauen
und überprüfen ob es sich um den Content Block handelt.
Wenn nein kann er das Bild anzeigen, wenn ja dann nicht.
Dein Vorschlag ehrt mich -
am 05.11.2007 - 01:43 Uhr
Dein Vorschlag ehrt mich - aber ich bin froh, dass ich mit meinen HTML- und CSS-Kenntnisse soweit bin, das Erscheinungsbild der Website im Griff zu haben. PHP und damit IF-Abfragen sind für mich noch weit weg.
Aber ich werde morgen mal versuchen, mich schlauer zu machen. Danke aber für die Aufzeigung des Wegs!
Tschüss und gute Nacht!
Robbi
Lösungsvorschlag
am 05.11.2007 - 02:03 Uhr
Das würde dann so aussehen:
<?php
if ( $block->module != "block" ) {
// Hier kommt das Bild rein...
}
?>
Error
am 05.11.2007 - 03:44 Uhr
Hallo,
das klappt leider nicht,
BISHER:
<div class="<?php print "block block-$block->module" ?>" id="<?php print "block-$block->module-$block->delta"; ?>">
<div class="title"><h3><?php print $block->subject ?></h3></div>
<div class="content"><?php print $block->content ?></div>
</div>
GEÄNDERT:
<?php
if ( $block->module != "block" ) {
<div class="<?php print "block block-$block->module" ?>" id="<?php print "block-$block->module-$block->delta"; ?>">
}
?>
<div class="title"><h3><?php print $block->subject ?></h3></div>
<div class="content"><?php print $block->content ?></div>
</div>
Das gibt aber einen Syntax-Error in der Zeile
<div class="<?php print "block block-$block->module" ?>" id="<?php print "block-$block->module-$block->delta"; ?>">
Oder hab ich da was falsch verstanden?
Tschau
Robbi
@Robbi,wenn Du Code posten
am 05.11.2007 - 10:12 Uhr
@Robbi,
wenn Du Code posten moechtest gibs es 2 Moeglichkeiten. Den Code mit <code> </code> umfassen oder zwischen die PHP Tags
<?php ?>
setzen.Bei PHP-Code hift manchmal nur <code> </code>.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Robbi wrote:
am 05.11.2007 - 13:30 Uhr
Das gibt aber einen Syntax-Error in der Zeile
Oder hab ich da was falsch verstanden?
Tschau
Robbi
Wie lautet denn die Fehlermeldung und in welcher Zeile?
Habe mal die code-Tags bei
am 05.11.2007 - 13:36 Uhr
Habe mal die code-Tags bei Ihm eingefügt.
Du solltest den Code so anpassen:
<?php
if ( $block->module != "block" ) {
print '<div class="block block-'.$block->module.'" id="block-'.$block->module.'-'.$block->delta.'">';
}
?>
gruß pebosi
Sorry, egal wie ich die
am 05.11.2007 - 15:58 Uhr
Sorry, egal wie ich die verschieden geposteten Codeschnipsel einfüge, es gibt immer nur Fehlermeldungen wie diese:
Parse error: syntax error, unexpected '}' in /home/www/web10/html/themes/pushbutton/block.tpl.php on line 4
Im Moment sieht der Code wieder so aus:
<?php
print "block block-$block->module"
?>
<?php
print "block-$block->module-$block->delta";
?>
<?php
print $block->subject
?>
<?php
print $block->content
?>
Die Titelleiste wird also wieder angezeigt :-(
Leider reichen meine PHP-Kenntnisse nicht so weit, dass ich den Dreh alleine rauskriege.
Ich weiß z.B. auch nicht, wo genau ich < code > und < /code > einfügen sollte, aber wie gesagt: Alle möglichen Varianten sind schiefgelaufen.
Bin im Moment ziemlich ratlos.
Tschau
Robbi
Probier nochmal den Code von
am 05.11.2007 - 16:07 Uhr
Probier nochmal den Code von mir oben, musste den korrigieren...
gruß pebosi
Also wenn ich den Code vor
am 05.11.2007 - 16:21 Uhr
Also wenn ich den Code vor dem jetzigen einfüge, ändert sich gar nichts.
Wenn ich den jetzigen Code ersetze, verschwindet zwar die Zeile, aber leider auch die gesamte Seitennavigation...
Hab mir nochmal deinen
am 05.11.2007 - 16:25 Uhr
Hab mir nochmal deinen ersten Post hier angesehen und denke das du mit http://www.drupalcenter.de/handbuch/4291 alle Infos hast die du brauchst. Ohne PHP.
gruß pebosi
<none> als Titel eintragen
am 05.11.2007 - 19:37 Uhr
@Robbi,
hast Du in der Administration -> Block konfigurieren als Titel schon mal den Eintrag
<none>
getestet. Damit wird der h3 Tag ausgeblendet, sprich nicht angezeigt. Und dieser Tag stellt nicht nur den Titel dar sondern hat bei Deinem Theme auch das nicht gewollte Image als Background. Damit ist Dein Problem geklaert. Ohne irgendwelches Coden oder Templates.
Override the default title for the block. Use <none> to display no title, or leave blank to use the default block title.
Fuer die PHP-Coder. Datei block.module in der function block_list($region) , hier passsiert es:
if ($block->title) {
// Check plain here to allow module generated titles to keep any markup.
$block->subject = $block->title == '<none>' ? '' : check_plain($block->title);
}
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Würde versuchen es
am 05.11.2007 - 21:43 Uhr
Würde versuchen es mit:
Erstelle eine neue Datei und nenne diese
block-block-1.tpl.php, dann ab damit ins Templateverzeichnis
der Inhalt der Datei ist dann
<div class="block block-block" id="block-block-1">
<div class="content">
<table class="table-rand" border="0" cellpadding="5" cellspacing="0">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<div align="center"><b><?php print $block->content ?></b></div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
wobei der Inhalt des Blockes hier steckt:
<?php print $block->content ?>
oder Du kannst es mit einer anderen Zuweisung des CSS Styles für den Block block-block-1 probieren (über ID ansprechen).
Gruß Andreas
P.s.: Klappt das?
http://www.drupalcenter.de/ha
am 05.11.2007 - 21:51 Uhr
http://www.drupalcenter.de/handbuch/4291
http://www.drupalcenter.de/handbuch/4288
Damit solltest Du für die Blöcke, abhängig von der Region ein Template erstellen können.
block-[region].tpl.php
KEIN Template erforderlich
am 05.11.2007 - 22:24 Uhr
He Leute, wenn Ihr es ueberlesen haben solltet: Um eine Blockueberschrift zu entfernen ist KEIN Template erforderlich.
<none>
getestet. Damit wird der h3 Tag ausgeblendet, sprich nicht angezeigt. Und dieser Tag stellt nicht nur den Titel dar sondern hat bei Deinem Theme auch das nicht gewollte Image als Background. Damit ist Dein Problem geklaert. Ohne irgendwelches Coden oder Templates.
Override the default title for the block. Use <none> to display no title, or leave blank to use the default block title.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Hab mal auf seine Seite
am 05.11.2007 - 22:39 Uhr
Hab mal auf seine Seite geschaut und da ist oben die Grafik:
http://www.ojmel.de/themes/pushbutton/icon-block.gif
welche über CSS zugewiesen wurde:
.block .title h3
in seinem Quelltext steht:
<div class="block block-block" id="block-block-1">
<div class="title"><h3></h3></div>
<div class="content">
<table class="table-rand" border="0" cellpadding="5" cellspacing="0">
<tbody><tr>
<td bgcolor="#ffffcc">
<div align="center"><b>OJMEL ist online! Bisher aber nur testweise. Erst am 1. Januar 2008 wird das neue Online-Jugendmagazin offiziell "eingeweiht". Du kannst zwar schon reinschauen, bis dahin ist es aber noch in der <acronym title="Unfertige Version, die noch nicht offiziell veröffentlicht ist und Fehler beinhalten kann.">Beta-Version</acronym>.</b></div>
</td>
</tr>
</tbody></table>
</div>
</div>
.. also schon ein leerer Titel?
<div class="title"><h3></h3></div>
Doch Templateänderungen oder hab ich hier was falsch gelesen/verstanden?
Gruß Andreas
Tabelle zwischen die Div's?
am 05.11.2007 - 22:56 Uhr
@ CyberCore,
warum quetscht Du in Deinem Templatevorschlag eine Tabelle zwischen die Div's?
Man kann ueber Tabellen und Div's geteilter Meinung sein. Aber in einem Navigationsblock macht eine Tabelle absolut keinen Sinn. Was ich damit meine?
Hast Du Dir schon mal Websites, deren Inhalt hauptsaechlich auf Tabellen basiert, auf Handheldscreens angesehen. Hast Du schon mal versucht, hauptsaechlich Tabellenbasierte Websites mit CSS fuer Handhelds zu formatieren?
Wer zukunftsorientiert Seiten erstellen will sollte also die Sache mit den Div's und Tabellen bedenken. Es gibt noch einen Aspekt: Ein Browser kann beim Rendern des HTML Divbasierte Seiten schneller aufbauen.
@Robbi,
Gleiches auch an Dich. Gerade wenn Du eine Portalseite aufbaust. Bei der Zielgruppe ist in sehr naher Zukunft Handheld ein Thema - das Google-Handy wirft seine Schatten voraus.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
öhm, das Beispiel kam
am 05.11.2007 - 22:58 Uhr
@quiptime:
öhm, das Beispiel kam direkt von seiner Seite und gleicht nicht meinen Vorstellungen eines Seitenaufbaus mit validem Code.
Wollte Ihm zeigen, was er abändern könnte (wenn es denn klappen sollte) und nicht erst noch Verwirrung stiften wenn ich n neuen Aufbau mit reinwerfe :-D
Aber mit Deiner Aussage hast Du recht, Tabellen sind ... für Layoutzwecke nicht mehr zeitgemäß....
Dazu gibt es eine sehr, sehr nette Seite: http://seybold.jan-andresen.de/
Gruß Andreas
Alles klar CyberCore, habe
am 05.11.2007 - 23:43 Uhr
Alles klar CyberCore, habe seine Seite auch gesehen. Beziehe es also biite nicht direkt auf Dich. Ich wollte das mit den Div's und Tabellen auch mehr als Gemeinposition verstanden wissen.
Das ist ein Thema welches bei manchen Leuten voellig vorbei geht - und sie sind stolz auf ihre Drupalsite. Hatte erst Gestern hier im Forum eine diesbezueglichhe Auseinandersetzung. Am Ende wurde mir angeboten, ich koenne am A... lecken.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
quiptime wrote: hast Du in
am 06.11.2007 - 02:22 Uhr
hast Du in der Administration -> Block konfigurieren als Titel schon mal den Eintrag <none> getestet. Damit wird der h3 Tag ausgeblendet, sprich nicht angezeigt. Und dieser Tag stellt nicht nur den Titel dar sondern hat bei Deinem Theme auch das nicht gewollte Image als Background.
Ja, aber das klappt auch nicht, tatsächlich verschwindet nur der Titel.
Danke!
Robbi
CyberCore wrote: Würde
am 06.11.2007 - 02:38 Uhr
Würde versuchen es mit:
Erstelle eine neue Datei und nenne diese
block-block-1.tpl.php, dann ab damit ins Templateverzeichnis
der Inhalt der Datei ist dann
<div class="block block-block" id="block-block-1">
<div class="content">
...
oder Du kannst es mit einer anderen Zuweisung des CSS Styles für den Block block-block-1 probieren (über ID ansprechen). P.s.: Klappt das?
Hallo Andreas,
jepp, das hat jetzt geklappt :-)
Allerdings habe ich nur die beiden Zeilen Code in der Datei:
<?php
print $block->subject
?>
<?php
print $block->content
?>
Vielen Dank!
Tschüss
Robbi
Danke an alle
am 06.11.2007 - 02:47 Uhr
Danke an alle, die mir hier geholfen haben! Es war eine schwere Geburt für ein echt kleines Kind. Aber ich will es auch verstehen, um es richtig nachvollziehen zu können. PHP ist ein weiters Feld...
Was die Nutzung von Tabellen fürs Layout betrifft, das sehe ich eigentlich genauso. Ich mache es seit zehn Jahren so, da gehts natürlich ganz einfach von der Hand. Zwar habe ich jetzt eine andere kleine Seite nur mit CSS-Layout gebaut, aber da muss ich einfach noch weiter in die Materie rein, v.a. was die Browser-Kompatibilität betrifft. Längerfristig will ich aber auch dieses neue Projekt hier auf reines CSS-Layout umstellen. Das bietet einfach mehr Möglichkeiten. Diesmal hab ich ein vorhandenes Template genommen (pushbutton) und baue es entsprechend um.
Tschüss + danke
Robbi