Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/238.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何创建自定义页面Prestashop 1.7_Php_Prestashop_Smarty_Prestashop 1.7 - Fatal编程技术网

Php 如何创建自定义页面Prestashop 1.7

Php 如何创建自定义页面Prestashop 1.7,php,prestashop,smarty,prestashop-1.7,Php,Prestashop,Smarty,Prestashop 1.7,我将与您分享如何在Prestashop 1.7中创建自定义页面PHP 在本例中,我将显示品牌,但您可以显示其他sql查询,等等 1°创建控制器BrandsJatController.php到/override/controllers/front/ <?php /** * @package Class BrandsJatController * @author Jatniel Guzmán * @copyright 2020 Jatniel Guzmán * @

我将与您分享如何在Prestashop 1.7中创建自定义页面PHP

在本例中,我将显示品牌,但您可以显示其他sql查询,等等

1°创建控制器BrandsJatController.php到/override/controllers/front/

<?php
/**
 * @package     Class BrandsJatController
 * @author      Jatniel Guzmán
 * @copyright   2020 Jatniel Guzmán
 * @license     MIT License
 * @link        https://jatnielguzman.com
 * @link        https://twitter.com/jatnielguzman
 */

class BrandsJatController extends FrontController
{

    public $php_self = 'brands';

    public function init()
    {
        parent::init();
    }

    public function initContent()
    {

        $brands = $this->getBrands();
        
        $this->context->smarty->assign('lorem', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque quis lacinia massa. 
        Fusce ante purus, aliquet eget porttitor ut, sodales in risus. Nunc gravida ipsum id gravida pretium.');
        
        $this->context->smarty->assign('dev', 'Jatniel Guzmán');
        
        $this->context->smarty->assign($brands);

        parent::initContent();

        // themes/mytheme/templates/brandsjat.tpl
        $this->setTemplate('brandsjat.tpl'); 
    }

    public function getBrands(){

        $brands = Manufacturer::getManufacturers(false, (int)Context::getContext()->language->id);

        foreach ($brands as &$brand) {

            $brand['image'] = $this->context->language->iso_code.'-default';

            $brand['link'] = $this->context->link->getManufacturerLink($brand['id_manufacturer']);

            $fileExist = file_exists(
                _PS_MANU_IMG_DIR_ . $brand['id_manufacturer'] . '-' .
                ImageType::getFormattedName('medium').'.jpg'
            );

            if ($fileExist) {
                $brand['image'] = $brand['id_manufacturer'];
            }
        }

        return  array(
            'brands' => $brands,
            'page_link' => $this->context->link->getPageLink('manufacturer'),
            'text_list_nb' => Configuration::get('BRAND_DISPLAY_TEXT_NB'),
            'brand_display_type' => Configuration::get('BRAND_DISPLAY_TYPE'),
            'display_link_brand' => Configuration::get('PS_DISPLAY_SUPPLIERS'),
        );
    }

}

问题是什么?没有问题,只需分享如何在prestashop中创建自定义页面问题是什么?没有问题,只需分享如何在prestashop中创建自定义页面
{**
 * Custom Page Brands Prestashop 1.7
 *
 * @package     Class BrandsJatController
 * @author      Jatniel Guzmán
 * @copyright   2020 Jatniel Guzmán
 * @license     MIT License
 * @link        https://jatnielguzman.com
 * @link        https://twitter.com/jatnielguzman
*}

{extends file='page.tpl'}

{block name='page_header_container'}{/block}

{block name='page_title'}
<span class="sitemap-title">{l s='Nos Marques' d='Shop.Theme'}</span>
{/block}

{block name='page_content'}
<div class="container">
    <div class="row">
        <div class="col-md-12">
            <h1 class="text-center">NOS MARQUES</h1>
            <p class="h4">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque quis lacinia massa. Fusce ante
                purus, aliquet eget porttitor ut, sodales in risus. Nunc gravida ipsum id gravida pretium. Praesent
                sodales viverra velit, interdum laoreet ex tempus a. In lacus est, lacinia ac vehicula in, posuere
                ac sapien. Morbi vel luctus purus, in lobortis erat.</p>
            <div class="row">

                {foreach from=$brands item=brand}

                {* BOX BRAND *}

                <div class="col-md-5 mt-md-5 border border-dark mx-auto l-3">

                    <div class="float-left w-50">
                        <img src="{$urls.img_manu_url}{$brand.image}.jpg" class="img-fluid w-75 my-5">
                    </div>
                    
                    <div class="float-right w-50">
                        <h2 class="text-break text-lg-center">{$brand.name}</h2>
                        <p> 
                            {if !empty($brand.short_description)}
                                {$brand.short_description|strip_tags:'UTF-8'|truncate:266:'...'}
                            {else}
                                {$lorem}
                            {/if}
                        </p>
                        <a href="{$brand.link}" class="">Voir tous les produits</a>
                    </div>

                </div>

                {* END BOX BRAND *}

                {/foreach}

            </div>

        </div>
    </div>
</div>
{/block}