TUTORIAL: Minikošík v Bakery pro Websitebaker

Tutorialy

Pro některé své klienty v případě menších stránek používám volně dostupný redakční systém Websitebaker. Svou jednodchostí vyhovuje mým zákazníkům, ale i mě při tvorbě šablon a různých úpravách kódu.

Nyní se mi naskytla příležitost vyzkoušet jeden z modulů pro tento systém, a to systém malého internetového obchodu Bakery. Pro potřeby mého stávajícího zákazníka je dostatečný a pracuje se s ním velmi jednoduše. Narazila jsem na menší kosmetickou vadu při používání souvisejícího dropletu MiniCart (minikošík).

Ve své původní verzi zobrazuje pouze počet objednaného zboží a celkovou sumu. Není to moc pěkné a moc toho zákazníkovi neříká, proto jsem upravila daný droplet tak, aby zobrazoval název (+ odkaz), počet a cenu jednotlivých položek v úhledné tabulce.

Myslím, že tento problém řeší více uživatelů e-shopu Bakery, proto jsem se rozhodla napsat malý tutorial jak na to.

Následující obrázek ilustruje, jak tento minikošík vypadal před a po mých úpravách.

minicart původní

Najděte řádek 53:

$items[$i][$key] = $value;

Za to přidejte:

if ($key == "item_id") {
$name_query = $database->query("SELECT title, link FROM " .TABLE_PREFIX. 
"mod_bakery_items WHERE item_id = '".$order['item_id']."'");
$name = $name_query->fetchRow();
$items[$i]['name'] = $name[0];
$items[$i]['link'] = WB_URL.PAGES_DIRECTORY.$name[1].PAGE_EXTENSION;        
}

Najděte řádek 81:

// Calculate order total

Před to přidejte:

$item_name = '';

Najděte řádek 86:

$subtotal = $items[$i]['quantity'] * $items[$i]['price'];

Za to vložte:

$item_name .= "<tr><td>";
$item_name .= $items[$i]['quantity']. "x <a href='". $items[$i]['link'] ."'>" 
. $items[$i]['name'] . "</a></td>";
$item_name .= "<td>" . $items[$i]['quantity'] * $items[$i]['price'] . " " 
. $shop_currency . "</td></tr>";

Na řádku 105 najděte:

'ORDER_ID'  =>  $order_id,

Za to přidejte:

'ITEM_NAME' =>  $item_name,

Tímto ještě nekončíme, nyní je nutné upravit samotnou HTML šablonu minikošíku, kterou lze nalézt v modules/bakery/templates/mini_cart/summary.htm

<div id="mod_bakery_mc_div_f">
 <h2 class="mod_bakery_mc_h2_cart_f">{TXT_CART}</h2>
 <!--p class="mod_bakery_mc_p_orderid_f">{TXT_ORDER_ID}: 
 <span class="mod_bakery_mc_orderid_f">{ORDER_ID}</span></p-->
 <table>
  {ITEM_NAME}
  <tr>
    <td><strong>{TXT_SUM}:</strong></td>
    <td><strong>{TOTAL} {SHOP_CURRENCY}</strong></td>
  </tr>
  <tr>
    <td class="mod_bakery_mc_p_excl_f" colspan=2>({TXT_EXCL_SHIPPING})</td>
  </tr>          
  <tr>
    <td><a href="{CONTINUE_URL}?view_cart=yes">{TXT_VIEW_CART}</a></td>
  </tr>
 </table>
</div>

Samozřejmě tuto HTML šablonu si můžete upravit podle svého přání – přidat si vlastní třídy a za pomocí CSS stylů tabulku pěkně naformátovat.

Pokud vám tento tutorial pomohl, budu moc ráda, když mi to napíšete níže do komentářů. :)


Webdesigner Dana Švédová

Jsem webdesigner na volné noze se zálibou ve čtení, psaní a hudbě. Během mého několikaletého působení v tomto oboru jsem se podílela na množství různorodých projektů. Zakládám si na osobní komunikaci s klientem, zodpovědném a pečlivém přístupu k práci.

Přihlašte se k odběru novinek

Máte-li zájem o zasílání novinek, zadejte prosím svůj e-mail níže.

Komentáře

Tento článek zatím nemá komentáře.

Přidejte komentář

← Starší    Novější →