Dobrý den,
takovou úpravu provedete změnou v .tpl souborech šablony, konkrétně v souborech headet.tpl a footer.tpl. Předpokládám, že chcete odstranit postranní panely (identifikátory right_column a left_column v CSS), ale hlavičku a patičku stránky chcete zachovat. Pokud ne, napište, bude nutné provést více úprav v šabloně.
Díky tomu, že používáte jednostránkovou verzi objednávkového formuláře, tak samotný košík i objednávkový formulář se nachází na jedné stránce - a je generován jedním PHP souborem: order-opc.php. Dále jsou v objednávkovém procesu podle zvolených modulů přítomny soubory payment.php, validation.php, order-confirmation.php a případně další.
Důležité je, že každá stránka má na základě názvu tohoto souboru své ID, jako je například u order-opc.php:
Kód:
<body id="order-opc">
Pokud známe tyto ID všech stránek v objednávkovém procesu, můžeme vytvořit pravidlo, na základě kterého se na stránkách s tímto ID nebudou postranní sloupce zobrazovat a naopak na těcto stránkách bude navíc speciální sada kaskádových stylů, která upraví vzhled, tedy třeba roztáhne prostřední sloupec přes celou šířku stránky.
Jak na to:
Pomocí
FTP klienta si stáhněte ze složky /themes/prestashop_alt/ soubory header.tpl a footer.tpl na pevný disk Vašeho počítače. Je to totiž možná s podivem, ale v šabloně nazvané
header se vykresluje levý a prostřední sloupec, ale sloupec pravý se vykresluje pomocí šablony
footer.
Otevřete si šablonu header v textovém editoru (Notepadu nebo třeba
PSPadu) a sjeďte do části, která vypisuje zobrazení sloupců, tedy:
Kód:
<div id="columns">
<!-- Left -->
<div id="left_column" class="column">
{$HOOK_LEFT_COLUMN}
</div>
<!-- Center -->
<div id="center_column">
A přidejte tam podmínku, aby se left_column zobrazoval pouze na stránkách, které nebudou v objednávkovém procesu, tedy:
Kód:
$page_name neq 'order-opc' and $page_name neq 'validation' and $page_name neq 'payment' and $page_name neq 'payment' and $page_name neq 'order-confirmation'
V případě, že budete mít více, nebo jiné stránky, jednoduše prostě přidejte další:
Kód:
and $page_name neq 'ID-stranky-u-ktere-nechcete-zobrazovat-postranni-sloupce'
Takže nakonec tam bude:
Kód:
<div id="columns">
{if $page_name neq 'order-opc' and $page_name neq 'validation' and $page_name neq 'payment' and $page_name neq 'order-confirmation'}
<!-- Left -->
<div id="left_column" class="column">
{$HOOK_LEFT_COLUMN}
</div>
{/if}
<!-- Center -->
<div id="center_column">
My ale chcete změnit i zobrazení prostředního sloupce. Takže musíme změnit i CSS direktivy. V header.tpl najděte kód:
Kód:
{if isset($css_files)}
{foreach from=$css_files key=css_uri item=media}
<link href="{$css_uri}" rel="stylesheet" type="text/css" media="{$media}" />
{/foreach}
{/if}
Který se stará o přiložení CSS souborů ke stránce a přidejte další podmínku:
Kód:
$page_name eq 'order-opc' or $page_name eq 'validation' or $page_name eq 'payment' or $page_name eq 'order-confirmation'
Zase, případě nutnosti přidejte kód:
Kód:
or $page_name eq 'ID-stranky-u-ktere-chcete-zmenit-zobrazeni'
Takže nakonec tam bude:
Kód:
{if isset($css_files)}
{foreach from=$css_files key=css_uri item=media}
<link href="{$css_uri}" rel="stylesheet" type="text/css" media="{$media}" />
{/foreach}
{/if}
{if $page_name eq 'order-opc' or $page_name eq 'validation' or $page_name eq 'payment' or $page_name eq 'order-confirmation'}
<style type="text/css">
#center_column {
width: 100%;
}
</style>
{/if}
{if isset($js_files)}
{foreach from=$js_files item=js_uri}
<script type="text/javascript" src="{$js_uri}"></script>
{/foreach}
{/if}
Kvůli pravidlům kaskády je třeba, aby dodatečné CSS bylo až za původním výčtem CSS souborů. Také, do:
Kód:
<style type="text/css">
#center_column {
width: 100%;
}
</style>
Doplňte direktivy podle vlastního uvážení a potřeby. Header.tpl uložte a v textovém editoru otevřete footer.tpl. Udělejte v podstatě to samé, ale ohledně pravého sloupce. Takže místo:
Kód:
{if !$content_only}
</div>
<!-- Right -->
<div id="right_column" class="column">
{$HOOK_RIGHT_COLUMN}
</div>
</div>
Tam bude:
Kód:
{if !$content_only}
</div>
{if $page_name neq 'order-opc' and $page_name neq 'validation' and $page_name neq 'payment' and $page_name neq 'order-confirmation'}
<div id="right_column" class="column">
{$HOOK_RIGHT_COLUMN}
</div>
{/if}
</div>
I tento soubor uložte. A nakonec oba soubory nahrajte pomocí FTP na server zpět do složky /themes/prestashop_alt/ a přehrajte jimi ty původní. Nezapomeňte také v administračním rozhraní v Preferences -> Performace v "Nucená kompilace" dát na chvíli ano, abyste promazal cache obchodu. (Ovšem pouze na chvíli, jinak by došlo k negativnímu poklesu výkonu.)
Napište, prosím, zda Vám návod pomohl.