Как сделать новую запись в таблице SQL и вывести её в шаблон на сайт

Как сделать новую динамическую запись на сайте. Инструкция для Prestashop.

Иногда нам нужно добавить для товаров какую либо переменную. Чаще всего текстовую. То есть для  определённого товара добавить, определённую запись. К примеру, у меня на сайте нужно было прописать к цене товара предлог «ОТ». На определённые товары, которые выполняются на заказ нет фиксированной цены. А на какие, то есть. Вот и нужно нам создать ещё один столбец данных в карточке товаров и вывести её на страницу.

Я создал ещё один столбец в базе данных своего магазина, в таблице ps_product_lang. Столбец назвал prise_ot.

Подключение к базе данных

Для работы с базой данными я пользуюсь программой HeidiSQL. Скачать её можно здесь.

Сначало на своём хостинге предоставляем удалённое подключение к своё базе данных. Управление MySQL Создание удалённого подключенияБлаго, что я использую хостинг beget и у меня это всё занимает считанные секунды. Если хотите, чтоб сайт летал и простую административную панель по управлению сайтом — рекомендую только BEGET.

 

Подключение MySQL со всех IP адресов

Можно настроить подключение только с определённого ip адреса, но я просто делаю пароль посложнее и ставлю » подключение со всех IP адресов», так как работаю не только на работе и дома и не только.

Теперь можно подключиться к базе данных через программу HeidiSQL.

Создаём новое подключение HeidiSQL к нашей базе данных

Настройка подключение через HeidiSQLНажимаем кнопку создать и прописываем путь к нашему хостингу. Пользователь в нашем случае — это название базы данных.

Пароль который мы придумали. Выглядит вот так:

После можно найти свою таблицу, она называется ps_product_lang.Набираем в поиске данную запись. Открываем вкладку «Данные» и видим записи о карточке товара.

Переходим на вкладку «Таблица» и «Добавляем » столбец «price_ot».

Тип данных выбираем » VARCHAR», означает что данные строковые. Длину значения поставили 255 символов, хотя вы можете поставить сколько хотите. Разрешим NULL — нулевое значение. И значение по умолчание тоже NULL.

Добавим столбец в базу данных HeidiSQL 9.5.0.5196.png

Отлично столбец готов. Теперь можно добавить значение к карточке товаров.

Добавили значение в базу данных HeidiSQL 9.5.0.5196

Значение к данному товару под ID = 2 присвоено. Теперь осталось, чтоб оно отображалось на нашей карточке товаров шаблона Prestashop.

Редактирование шаблона карточки товара, прописание глобальной переменной

Заходим в файловый менеджер хостинга. Благо, опять, я вспоминаю что у меня хостинг BEGET и мне не нужно подключиться к файлам моего сайта через FileZilla или тем более через Total Commander.

Путь моего файла лежит через папки: /мой сайт/public_html/themes/lab_bozon_digital2/prooduct.tp

Warehause  — это название Темы (Шаблона) которого я использую для своего сайта.

File Manager - Beget -панель управления файлами

Здесь нужно прописать сам код, чтоб брал содержимое с таблицы ps_product_lang ячейки price_ot

< div class=»price_ot» >{$product->price_ot}</div>

Ставлю его прямо перед ценой.Фаловый менеджер для Хостинга

Возможно Вам будет интересно:  Страницы исключены meta name="robots" content="noindex

В папке /мой сайт/public_html/classes/Product.php добавил выборку ячейки price_ot и делаем переменную глобальной

в: class ProductCore extends ObjectModel
{

Вставляем код:

/** @var string price_ot*/
public $price_ot;

Вставляем код php Prodect tpl

в: public static $definition = array(

Вставляем код:
'price_ot' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => 'isGenericName', 'size' => 255),

File Manager - Beget -панель управления файлами

 

Всё получилось. Возвращаемся на карточку товара и проверяем. Ctrl + F5, чтоб перезагрузить страницу со стёртым кэш. Смотрим.

Отображение на сайте нашей переменной

 

Если в данной статье, я что-то упустил или Вам не понятно. Пишите в комментариях, осязательно подскажу. К Критике отношусь с благодарностью.