ご質問がわかりません。
は、ショップウェアサイトに新しいパス(例:/ブランド)を追加します。
あなたがあなた自身のページに新しいパスを追加したい場合は、あなたは新しいコントローラを作成する必要があります。
public function install() {
$this->registerController('Frontend', 'Example');
}
コントローラがOurPluginRoot/Controllers/Frontend/Example.php
class Shopware_Controllers_Frontend_Example extends Enlight_Controller_Action
{
public function indexAction()
{
$this->view->assign('variable', 'value');
}
}
に配置する必要があります。そして、我々はのためのテンプレートを追加しますindexアクション新しいコントローラOurPluginRoot/View/example/index.tpl
{extends file='frontend/index/index.tpl'}
{block name="frontend_index_content"}
<div class="container">
My own controller view
</div>
{/block}
バックエンド経由で存在できるコントローラへのパスを設定します。
既存のテンプレートを拡張する必要がある場合は、このための簡単なプラグインを作成する必要があります。
class Shopware_Plugins_Frontend_ExtendQuickCart_Bootstrap extends Shopware_Components_Plugin_Bootstrap {
/**
* Returns the version of plugin as string.
*
* @return string
*/
public function getVersion() {
return '0.0.1';
}
/**
* Returns the plugin name for backend
*
* @return string
*/
public function getLabel() {
return 'Extend Quick Cart View';
}
/**
* Standard plugin install method to register all required components.
* @return array
*/
public function install() {
$this->subscribeEvent();
}
/**
* @return Shopware_Plugins_Frontend_ExtendQuickCart_Bootstrap
*/
private function subscribeEvents(){
//Frontend_Checkout -> Frontend/Backend, Checkout mean controller checkout
$this->subscribeEvent(
'Enlight_Controller_Action_PostDispatch_Frontend_Checkout', 'onPostDispatchCheckout'
);
return $this;
}
/**
* @param Enlight_Controller_ActionEventArgs $arguments
*/
public function onPostDispatchCheckout(Enlight_Controller_ActionEventArgs $arguments){
/**@var $controller Shopware_Controllers_Frontend_Checkout */
$controller = $arguments->getSubject();
$request = $controller->Request();
$response = $controller->Response();
$action = $request->getActionName();
$view = $controller->View();
// Extend only ajaxCart Action, all other actions - don't do anything
if ( $action !== 'ajaxCart' || !$request->isDispatched()
|| $response->isException() || !$view->hasTemplate()
) {
return;
}
$view->addTemplateDir($this->Path() . 'Views/');
}
}
は、その後、あなたが勉強できるテストプラグインでアーカイブを見つけることができるテンプレートOurPluginRoot/View/checkout/ajax_cart.tpl
{extends file='parent:frontend/checkout/ajax_cart.tpl'}
{block name='frontend_checkout_ajax_cart_prices_container_inner'}
<div class="prices--articles">
<span class="prices--articles-text">{s name="AjaxCartTotalAmount"}{/s}</span>
<span class="prices--articles-amount">{$sBasket.Amount|currency}</span>
</div>
<div class="prices--articles">
<span class="prices--articles-text">{s name="AjaxSomething"}Something{/s}</span>
<span class="prices--articles-amount">{$sBasket.Amount}</span>
</div>
<div class="prices--articles">
<span class="prices--articles-text">{s name="AjaxSomething1"}Something ssecond{/s}</span>
<span class="prices--articles-amount">@@@@@@@@@@@@@@@@@</span>
</div>
{/block}
Thereを作成し、これはあなたのために役立つことを願っています。