Views mit Theme Wizard anpassen
Eingetragen von azathoth@drupal.org (46)
am 31.01.2008 - 14:49 Uhr in
am 31.01.2008 - 14:49 Uhr in
Hallo Zusammen,
hab einen View mit Theme Wizard und CSS ein Layout verpasst. Die Variablen hab ich dabei in einen Table gepackt. Damit der Theme Wizard funktioniert muss der View ja auf einfache Listenansicht gestellt sein, dabei werden aber unschöne Punkte je Eintrag ausgegeben.
Wie können denn diese Listenpunkte entfernt werden?
- Anmelden oder Registrieren um Kommentare zu schreiben
Re: Views mit Theme Wizard anpassen
am 31.01.2008 - 15:52 Uhr
Damit der Theme Wizard funktioniert muss der View ja auf einfache Listenansicht gestellt sein ...
Ist mir neu. Wo hast du das gelesen?
Wie können denn diese Listenpunkte entfernt werden?
list-style-type
--
Danke für Link, ist mir
am 01.02.2008 - 08:40 Uhr
Danke für Link, ist mir klar. Den ul Tag erzeugt Drupal für den View aber automatisch und ich weiß nicht wo ich das abstellen kann ???
Damit richtiger PHP-Code erstellt wird muss Listenansicht eingestellt sein, steht beim Theme Wizard als Erklärung:
At this time this code assumes your view is a list type view! It may not generate effective code for other types of views. Future versions of this program will be smarter, and give more options, but this wizard is still a huge start.
Ich denke eigentlich auch,
am 01.02.2008 - 09:26 Uhr
Ich denke eigentlich auch, dass es nur mit Listenansicht geht - habe aber anderes noch nicht probiert. Den Look der ul und li kriege ich für den view per css weg. Dafür verwende ich die css Datei, die vom Theme Wizard erstellt wird und ergänze sie. Mit Firebug kannst du sehen, welche Klasse dein View bekommen hat. Bei mir ist es bei einem View mit Namen "News" die Klasse ".view-content-News". Daraus habe ich in der css Datei ("views-list-News.css") folgendes gemacht, um die Listenansicht zu verbergen:
.view-content-News .item-list ul li{
list-style-image:none;
padding:0;
margin:0;
}
#content .view-content-News ul{margin-left:0;}
Eventuell nicht ganz sauber, aber funktioniert.
undpaul
Longevity Insights from Top Health Podcasts
Jawohl danke, bin kein
am 01.02.2008 - 10:38 Uhr
Jawohl danke, bin kein CSS-Profi. Bei mir sind die Aufzählungszeichen nur mit tag list-style-type weggegangen.
Wenn der Viewtyp auf Tabelle usw. steht funktioniert der ausgegebene Code von Theme Wizard nicht, hab es probiert :-)
aschiwi@drupal.org
am 17.09.2008 - 03:40 Uhr
[...]Eventuell nicht ganz sauber, aber funktioniert.
Ahoi,
bei mir funktioniert das leider nicht. Zwar hat er padding und margin angewand aber die Listenpunkte sind immer noch da. Weis da jemand Rat?
Wenn dein Pferd tot ist, steig ab.
Hallo, ersetze mal diese
am 17.09.2008 - 06:46 Uhr
Hallo,
du hast ja eine Funktion für den View in deiner Template.php. Ersetze mal diese Zeile
return theme('item_list', $items);
mit
return implode('', $items);
dann ist das keine Liste mehr. Aber du solltest dann auch im Theme zB. ein < div > um die einzelnen Elemente des View setzen oder zB. return '
';
---
Viele Grüße,
Kars-T
Arbeit: comm-press
Hobbies: Tower Defense HQ, plamo.de, Blog
Viele Grüße,
Kars-T
huhu, hat leider nicht
am 17.09.2008 - 19:57 Uhr
huhu,
hat leider nicht funktioniert, die Listenpunkte sind immer noch zu sehen.
Wenn dein Pferd tot ist, steig ab.
Wenn du das im Source
am 17.09.2008 - 20:11 Uhr
Wenn du das im Source änderst? O_o
Cache ausschalten? Views Cache leeren?
Sicher, das deine Theming Funktion greift?
Was steht denn dann im HTML Quellcode?
---
Viele Grüße,
Kars-T
Arbeit: comm-press
Hobbies: Tower Defense HQ, plamo.de, Blog
Viele Grüße,
Kars-T
<div class="block
am 17.09.2008 - 20:19 Uhr
<div class="block block-views" id="block-views-video">
<h2 class="title"></h2>
<div class="content"><div class='view view-video'><div class='view-content view-content-video'><div class="item-list"><ul><li><div align="center" style="overflow:hidden;list-style:none;float:left;width:124px;margin-left:20px;"><div style="overflow:hidden;padding:1px;border: 1px #B9B9B9 solid;"><a href="/video/atlantica-online-trailer_3"><img src="http://img.youtube.com/vi/8oMh7As_dkE/1.jpg" width="120" height="90" alt="See Video" title="See Video" /></a></div><a href="/video/atlantica-online-trailer_3">Atlantica ONLINE Trailer</a></div>
</li><li><div align="center" style="overflow:hidden;list-style:none;float:left;width:124px;margin-left:20px;"><div style="overflow:hidden;padding:1px;border: 1px #B9B9B9 solid;"><a href="/video/asda-story-trailer_3"><img src="http://img.youtube.com/vi/gFAadsqs1cg/1.jpg" width="120" height="90" alt="See Video" title="See Video" /></a></div><a href="/video/asda-story-trailer_3">Asda Story Trailer</a></div>
Ja wenn ich das im Source ändere, bleibt eigentlich alles gleich!
Wenn dein Pferd tot ist, steig ab.
Greifen denn die Änderungen
am 17.09.2008 - 20:26 Uhr
Greifen denn die Änderungen im Template?
Es kann halt nicht sein, wenn es raus nimmst, das das array der items als Liste gebaut wird, das du eine Liste bekommst. Über Implode tut der nichts anderes als aus dem Array einen String zu machen und den gibt die Funktion per return an eine andere weiter.
Von daher würde ich vermuten, das du entweder dich in der Funktion vertippt hast oder die Funktion einfach gar nicht greift und damit auch nicht die template.tpl.php für den View?
Sonst poste mal bitte die Funktion, wie sie in deiner template.php steht.
---
Viele Grüße,
Kars-T
Arbeit: comm-press
Hobbies: Tower Defense HQ, plamo.de, Blog
Viele Grüße,
Kars-T
<?php/** * views template to
am 17.09.2008 - 20:34 Uhr
<?php
/**
* views template to output a view.
* This code was generated by the views theming wizard
* Date: 17. September 2008 - 3:56
* View: video
*
* This function goes in your template.php file
*/
function phptemplate_views_view_list_video($view, $nodes, $type) {
$fields = _views_get_fields();
$taken = array();
// Set up the fields in nicely named chunks.
foreach ($view->field as $id => $field) {
$field_name = $field['field'];
if (isset($taken[$field_name])) {
$field_name = $field['queryname'];
}
$taken[$field_name] = true;
$field_names[$id] = $field_name;
}
// Set up some variables that won't change.
$base_vars = array(
'view' => $view,
'view_type' => $type,
);
foreach ($nodes as $i => $node) {
$vars = $base_vars;
$vars['node'] = $node;
$vars['count'] = $i;
$vars['stripe'] = $i % 2 ? 'even' : 'odd';
foreach ($view->field as $id => $field) {
$name = $field_names[$id];
$vars[$name] = views_theme_field('views_handle_field', $field['queryname'], $fields, $field, $node, $view);
if (isset($field['label'])) {
$vars[$name . '_label'] = $field['label'];
}
}
$items[] = _phptemplate_callback('views-list-video', $vars);
}
if ($items) {
return implode('', $items);
}
}
?>
EDIT: SORRRY TUT MIR LEID ES GEHT ES GEHT ^^ HAB MICH NUR VERTIPPT *G*! DANKE DIR FÜR DEINE HILFE!!!!
Wenn dein Pferd tot ist, steig ab.
SaschaCap schrieb EDIT:
am 17.09.2008 - 20:46 Uhr
EDIT: SORRRY TUT MIR LEID ES GEHT ES GEHT ^^ HAB MICH NUR VERTIPPT *G*! DANKE DIR FÜR DEINE HILFE!!!!
Da bin ich froh ;)
---
Viele Grüße,
Kars-T
Arbeit: comm-press
Hobbies: Tower Defense HQ, plamo.de, Blog
Viele Grüße,
Kars-T