osCommerce Knowledge Base

Boxen Style

Zuletzt aktualisiert: 22nd November, 2005
Beitrag ID: 272



Allgemeines

Boxen können einen anderen Style haben als andere Boxen durch hinzufügen eines neuen Styles.

Hersteller Box

Ein Beispiel anhand der Hersteller Box.

Erstellen einer neuen "box class" in catalog/includes/classes/boxes.php zb.:

class plainBox extends tableBox {
function plainBox($contents) {
$this->table_data_parameters = 'class="plainBox"';
$this->tableBox($contents, true);
}
}



Jetzt in Stylesheet.css die neue classe "plainBox" definieren und gewünschte Styles hinzufügen für die Hersteller Box.

In catalog/includes/boxes/manufacturers.php folgende änderung vornehmen:

new infoBox($info_box_contents);
?>
</td>
</tr>
< !-- manufacturers_eof //-->



Ändern in:

new plainBox($info_box_contents);
?>
</td>
</tr>
< !-- manufacturers_eof //-->



Um die Hersteller Box neu zu Positionieren ohne die Box sollten die <tr><td> </td></tr> Tags entfernt werden.

<!-- manufacturers //-->
< ?php
/* $info_box_contents = array();
$info_box_contents[] = array('text' => BOX_HEADING_MANUFACTURERS);

new infoBoxHeading($info_box_contents, false, false); */

$manufacturers_query = tep_db_query("select manufacturers_id, manufacturers_name from " . TABLE_MANUFACTURERS . " order by manufacturers_name");
if (tep_db_num_rows($manufacturers_query) <= MAX_DISPLAY_MANUFACTURERS_IN_A_LIST) {
// Display a list
$manufacturers_list = '';
while ($manufacturers = tep_db_fetch_array($manufacturers_query)) {
$manufacturers_name = ((strlen($manufacturers['manufacturers_name']) > MAX_DISPLAY_MANUFACTURER_NAME_LEN) ? substr($manufacturers['manufacturers_name'], 0, MAX_DISPLAY_MANUFACTURER_NAME_LEN) . '..' : $manufacturers['manufacturers_name']);
if (isset($HTTP_GET_VARS['manufacturers_id']) && ($HTTP_GET_VARS['manufacturers_id'] == $manufacturers['manufacturers_id'])) $manufacturers_name = '<b>' . $manufacturers_name .'</b>';
$manufacturers_list .= '<a href="' . tep_href_link(FILENAME_DEFAULT, 'manufacturers_id=' . $manufacturers['manufacturers_id']) . '">' . $manufacturers_name . '</a><br>';
}

$info_box_contents = array();
$info_box_contents[] = array('text' => substr($manufacturers_list, 0, -4));
} else {
// Display a drop-down
$manufacturers_array = array();
if (MAX_MANUFACTURERS_LIST < 2) {
$manufacturers_array[] = array('id' => '', 'text' => PULL_DOWN_DEFAULT);
}

while ($manufacturers = tep_db_fetch_array($manufacturers_query)) {
$manufacturers_name = ((strlen($manufacturers['manufacturers_name']) > MAX_DISPLAY_MANUFACTURER_NAME_LEN) ? substr($manufacturers['manufacturers_name'], 0, MAX_DISPLAY_MANUFACTURER_NAME_LEN) . '..' : $manufacturers['manufacturers_name']);
$manufacturers_array[] = array('id' => $manufacturers['manufacturers_id'],
'text' => $manufacturers_name);
}

$info_box_contents = array();
$info_box_contents[] = array('form' => tep_draw_form('manufacturers', tep_href_link(FILENAME_DEFAULT, '', 'NONSSL', false), 'get'),
'text' => tep_draw_pull_down_menu('manufacturers_id', $manufacturers_array, $HTTP_GET_VARS['manufacturers_id'], 'onChange="this.form.submit();" size="' . MAX_MANUFACTURERS_LIST . '" style="width: 100%"') . tep_hide_session_id());
}

new plainBox($info_box_contents);
?>
< !-- manufacturers_eof //-->



Die Grösse kann hier angepasst werden:

'onChange="this.form.submit();" size="' . MAX_MANUFACTURERS_LIST . '" style="width: 100%"') .


Die Pixel zahl kann auch frei bestimmt werden zb.

'onChange="this.form.submit();" size="' . MAX_MANUFACTURERS_LIST . '" style="width: 150"') .



Um den Header der Box zu entfernen folgen zeihlen ändern
in catalog/includes/boxes/manufacturers.php folgende änderung vornehmen:

/* $info_box_contents = array();
$info_box_contents[] = array('align' => 'left',
'text' => BOX_HEADING_MANUFACTURERS);
new infoBoxHeading($info_box_contents, false, false); */



Suchen Box

Die Suchen Box kann überall auf der Seite hinzugefügt werden durch diesen Code:

< form name="quick_find" method="get" action="http://www.webdomain.de/advanced_search_result.php">
< input type="text" name="keywords" size="10" maxlength="30" value="" style="width: 95px"> <input type="submit" value="go"><br>
< a href="http://www.webdomain.de/advanced_search.php"><b style="font-size:8pt;">Erweiterte Suche</b></a>
< /form>



Um die Box zu entfernen <tr><td> am anfang löschen und </tr></td> am ende der Datei catalog/includes/boxes/search.php.

Um den Header der Box zu entfernen folgen zeihlen ändern
in catalog/includes/search.php folgende änderung vornehmen:

/*$info_box_contents = array();
$info_box_contents[] = array('align' => 'left',
'text' => BOX_HEADING_SEARCH
);
new infoBoxHeading($info_box_contents, false, false); */

 

Wie hilfreich ist dieser Beitrag?