Добавить вторую категорию поля Prestashop 1.7

Я пытаюсь добавить редактируемое поле для категории в Prestashop 1.7

Я уже делаю это:

Вставьте text_SEO в базу данных

переопределение / классы /category.php

<?php
class Category extends CategoryCore
{

public $text_SEO; // My Custom field

public static $definition = array(
    'table' => 'category',
    'primary' => 'id_category',
    'multilang' => true,
    'multilang_shop' => true,
    'fields' => array(
        'nleft' => array('type' => self::TYPE_INT, 'validate' => 'isUnsignedInt'),
        'nright' => array('type' => self::TYPE_INT, 'validate' => 'isUnsignedInt'),
        'level_depth' => array('type' => self::TYPE_INT, 'validate' => 'isUnsignedInt'),
        'active' => array('type' => self::TYPE_BOOL, 'validate' => 'isBool', 'required' => true),
        'id_parent' => array('type' => self::TYPE_INT, 'validate' => 'isUnsignedInt'),
        'id_shop_default' => array('type' => self::TYPE_INT, 'validate' => 'isUnsignedId'),
        'is_root_category' => array('type' => self::TYPE_BOOL, 'validate' => 'isBool'),
        'position' => array('type' => self::TYPE_INT),
        'date_add' => array('type' => self::TYPE_DATE, 'validate' => 'isDate'),
        'date_upd' => array('type' => self::TYPE_DATE, 'validate' => 'isDate'),

        // Lang fields
        'name' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => 'isCatalogName', 'required' => true, 'size' => 64),
        'link_rewrite' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => 'isLinkRewrite', 'required' => true, 'size' => 64),
        'description' => array('type' => self::TYPE_HTML, 'lang' => true, 'validate' => 'isString'),
        'text_SEO' => array('type' => self::TYPE_HTML, 'lang' => true, 'validate' => 'isString'),
        'meta_title' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => 'isGenericName', 'size' => 128),
        'meta_description' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => 'isGenericName', 'size' => 255),
        'meta_keywords' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => 'isGenericName', 'size' => 255),
    ),
);
}

переопределение / контроллеры / администратор /AdminCategoriesController.php

    class AdminCategoriesController extends AdminCategoriesControllerCore
{
    public function renderForm()
    {
        $this->fields_form_override =array(
            array(
                'type' => 'textarea',
                'label' => $this->l('Text SEO'),
                'name' => 'text_SEO',
                'lang' => true,
                'autoload_rte' => true,
                'hint' => $this->l('Invalid characters:').' <>;=#{}',
            ),
        );
        return parent::renderForm();
    }
}

Как я могу отобразить ареатекст?

Спасибо!:D

1 ответ

Решение

Ваш код правильный. Это должно работать.

Вы добавили text_SEO в вашей базе данных в таблице category_lang и не category?
Вы очистили кэш PrestaShop перед перезагрузкой страницы своей категории? Вы можете сделать это на странице "Дополнительные параметры"> "Производительность".

Другие вопросы по тегам