Override de AdminProductsController

Aujourd’hui je vais vous expliquer comment ajouter un onglet supplémentaire dans la fiche produit du coté administration de votre boutique Prestashop.

Première étape, on créé un override de la classe « AdminProductController ». Pour cela, il suffit de créer le fichier « override/controllers/admin/AdminProductsController.php » et d’y ajouter le code suivant:


<?php

class AdminProductsController extends AdminProductsControllerCore
{
	public function __construct()
	{		
		parent::__construct();
		$this->available_tabs['vueEclatee']=14;
		$this->available_tabs_lang['vueEclatee'] = 'Vue éclatée';
	}
	
	public function initFormVueEclatee($product)
	{
		$data = $this->createTemplate($this->tpl_form);
		$data->assign(
			array(
				'mytext'=>'un texte de démonstration',
				'product' => $product
			)
		);
		$this->tpl_form_vars['custom_form'] = $data->fetch();
	}
}

La fonction __construct() rajoute le nouvel onglet nommé « vue éclatée ».
La fonction initFormVueEclatee permet de charger le contenu de cet onglet.

Il faut ensuite créer le template qui va permettre d’agencer le contenu de l’onglet. Pour cela créez le fichier « override/controllers/admin/templates/products/vueeclatee.tpl ».
Il vous suffit ensuite d’ajouter le code que vous désirez, par exemple:


<p>{$mytext}<p>
Product id={$product->id}

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *