Русская поддержка интернет-магазина PrestaShop
русская поддержка PrestaShop.
Регистрация
Забыли пароль?
Главная
Возможности
Демо
Скачать
Каталог магазинов
Форум
Модули и шаблоны
Администрирование
Реклама и маркетинг
Аналитика и статистика
Оплата и платежные системы
Управление контентом
Экспорт
Фронт-офис
Локализация
Торговые площадки
Управление товарами
Средства миграции
Оформление заказа
Поиск и фильтры
Доставка и логистика
Слайд-шоу
Социальные сети
Модификаторы
Шаблоны PrestaShop
Работа
Главная
Форум
Общие форумы (prestashop v1.6.x)
Песочница
Как добавить meta title второго сайта?
Всего: 2
1
2
>
Как добавить meta title второго сайта?
vasko
Новичок
Сообщений: 10
Регистрация: 20-01-2018
# 1
20-01-2018 20:31
К prestashop присоединен дополнительный модуль tecdoc переработан. В корне создана папка auto… в ней есть админ панель итд., Свой автономный сайт база итд товар.Он может работать и без prestashop. Когда интегрировал его в prestashop все работает. Корзина заказы итд.
Проблемка следующая при просмотре страницы в вкладке название страницы выдает — название магазина (текст который указан: админ / настройка / Контакты магазина / Название магазина.
Когда включаю в админ Дружественный URL тогда в кладке Ошибка 404- название магазина. Когда в амин панели текдок отключаю привязку к prestashop то в вкладке пишеть текст нужной страницы.
Это нужно присоединить
<!DOCTYPE html>
<head>
<meta charset="UTF-8" />
<title><?=TDM_TITLE?></title>
<meta name="keywords" content="<?=TDM_KEYWORDS?>" />
<meta name="description" content="<?=TDM_DEscriptION?>" />
</head>
<body>
Алекс
Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009
# 2
21-01-2018 17:23
Кода стороннего модуля нет и посмотреть каким образом генерируются название / описание - невозможно.
В prestashop мета данные собираются в методе
getMetaTags
(файл:
/classes/Meta.php
).
Добавьте доп. информацию: коды и более подробное описание доработок.
Оказываю услуги по администрированию интернет-магазина на CMS PrestaShop, написание модулей для PrestaShop. Большой опыт работы с CMS PrestaShop.
vasko
Новичок
Сообщений: 10
Регистрация: 20-01-2018
# 3
23-01-2018 00:41
В нете есть схема для Open Cart Вносим изменения в файл home.tpl (/catalog/view/theme/default/template/common/home.tpl)
Код:
<?php echo $header; ?><?php echo $column_left; ?><?php echo $column_right; ?>
<div id="content">
<?if(!defined("TECDOC_HEADER_INC")){?>
<?php echo $content_top; ?>
<h1 style="display: none;"><?php echo $heading_title; ?></h1>
<?php echo $content_bottom; ?>
</div>
<?php echo $footer; ?>
<?}else{?>
<?php global $OpenCartFooter;?>
<?php $OpenCartFooter = $footer;?>
<?}?>
vasko
Новичок
Сообщений: 10
Регистрация: 20-01-2018
# 4
23-01-2018 00:44
Как переделать для Presta Shop? Файл интеграции в самом модуле для Presta Shop:
<?if(!defined("TDM_PROLOG_INCLUDED") || TDM_PROLOG_INCLUDED!==true)die();
require($_SERVER["DOCUMENT_ROOT"].'/config/config.inc.php');
//$sql = 'SELECT * FROM `ps_1product` WHERE `id_product` = 10 ';
//$arRes = Db::getInstance()->executeS($sql);
//echo '<br><pre>';print_r($arRes);echo '</pre>';
if(!TDM_ISADMIN){
global $TDMCore;
$arPGID = $TDMCore->arPriceGID;
global $USER;
$arGroups = array((int)Group::getCurrent()->id);
$isAuthorisedGroup = false;
foreach($arPGID as $TDM_GID=>$CMS_GID){
if(in_array($CMS_GID,$arGroups)){
$isAuthorisedGroup = true;
if($_SESSION['TDM_USER_GROUP']!=$TDM_GID){
$_SESSION['TDM_USER_GROUP']=$TDM_GID;
header('Location: '.$_SERVER['REQUEST_URI']);
}
break;
}
}
if (!$isAuthorisedGroup) {
unset($_SESSION['TDM_USER_GROUP']);
}
}
//Add to cart
if(defined('TDM_ADD_TO_CART') AND TDM_ADD_TO_CART){
global $arCartPrice;
if(is_array($arCartPrice)){
if($arCartPrice['OPTIONS']['MINIMUM']>1){$QUANTITY=$arCartPrice['OPTIONS']['MINIMUM'];}else{$QUANTITY=1;}
$DefaultCategory = 12;
$DefaultTaxGroup = 0;
$Price = $arCartPrice['PRICE_CONVERTED'];
$Reference = $arCartPrice['ARTICLE'].' / '.$arCartPrice['BRAND'];
//Presta init
global $context;
if(!$context){$context = Context::getContext();}
$logged = $context->cookie->__get('logged');
$id_cart = $context->cookie->__get('id_cart');
$id_lang = $context->cookie->__get('id_lang');
$id_guest = $context->cookie->__get('id_guest');
$id_currency = $context->cookie->__get('id_currency');
// Add cart if no cart found
if (!$id_cart){
$context->cart = new Cart();
$context->cart->id_customer = $context->customer->id;
$context->cart->id_currency = $id_currency;
$context->cart->add();
if($context->cart->id){
$context->cookie->id_cart = (int)$context->cart->id;
}
$id_cart = (int)$context->cart->id;
}
$doAdd="Y";
//if(!$logged>0){$doAdd="N"; $TCore->arErrorMessages[] = 'You must be <a href="/index.html?controller=my-account">logged in</a> to buy products';}
//if(trim($Reference)=='' OR !$Price>0 OR !$QUANTITY>0){$doAdd="N"; $TCore->arErrorMessages[] = 'Add to cart data is missing!';}
if(!$id_cart>0){$doAdd="N"; ErAdd("Your cookie <b>id_cart</b> is wrong!",1);}
if(!$id_lang>0){$doAdd="N"; ErAdd("Your cookie <b>id_lang</b> is wrong!",1);}
if($doAdd!="N"){
//Check avail. tecdoc item in Presta
$sql = 'SELECT p.`id_product`, pl.`name` FROM `'._DB_PREFIX_.'product` p
LEFT JOIN `'._DB_PREFIX_.'product_lang` pl ON (p.`id_product` = pl.`id_product`)
WHERE pl.`id_lang` = '.$id_lang.' AND
p.`price` = '.$Price.' AND
p.`reference` = "'.$Reference.'"
';
$arRes = Db::getInstance()->executeS($sql);
if(count($arRes)>0){
$NewTID = $arRes[0]['id_product'];
}else{
//Supplier data (for 1C integration)
$supplierName = $arCartPrice['SUPPLIER_STOCK'];
$supplierId = $suppliers = (Supplier::getIdByName($supplierName));
if (!$supplierId) {
$supplier = new Supplier();
$supplier->name = $supplierName;
$supplier->active = 1;
$supplier->add();
$supplierId = $supplier->id;
}
$obProduct = new Product(false,false,$id_lang);
$obProduct->id_category_default = $DefaultCategory;
$obProduct->unity = $arCartPrice['ADD_URL'];
$obProduct->name = substr($arCartPrice['NAME'],0,400);
$obProduct->description = '. ';
$obProduct->description_short = $arCartPrice['SUPPLIER_STOCK'].' ['.$arCartPrice['DAY'].' days]';
$obProduct->price = $Price;
$obProduct->wholesale_price = $arCartPrice['PRICE'];
$obProduct->reference = $Reference;
$obProduct->link_rewrite = $arCartPrice['CPID'];
$obProduct->available_for_order = 1; //true
$obProduct->visibility = 'none';
$obProduct->is_virtual = 0;
if($arCartPrice['OPTIONS']['WEIGHT']>0){$obProduct->weight = round($arCartPrice['OPTIONS']['WEIGHT']/1000,2);}
if($arCartPrice['OPTIONS']['MINIMUM']>0){$obProduct->minimal_quantity = $arCartPrice['OPTIONS']['MINIMUM']; $QUANTITY=$arCartPrice['OPTIONS']['MINIMUM'];}
if($arCartPrice['OPTIONS']['USED']>0){$obProduct->condition = 'used';}
if($arCartPrice['OPTIONS']['RESTORED']>0){$obProduct->condition = 'refurbished';}
//supplier
$obProduct->supplier_name = $supplierName;
$obProduct->id_supplier = $supplierId;
$obProduct->id_tax_rules_group = $DefaultTaxGroup;
//echo '<br><pre>';print_r($obProduct);echo '</pre>';die();
$obProduct->add();
if($obProduct->id>0){
$NewTID = $obProduct->id;
$obProduct->setWsCategories(Array(Array("id"=>$DefaultCategory)));
//Add image
if($arCartPrice['IMG_SRC']!='' AND $NewTID>0){
$shops = Shop::getShops(true, null, true);
$image = new Image();
$image->id_product = $NewTID;
$image->position = Image::getHighestPosition($NewTID)+1;
$image->cover = true; // or false;
if(($image->validateFields(false, true)) === true && ($image->validateFieldsLang(false, true)) === true && $image->add()){
$image->associateTo($shops);
$tmpfile = tempnam(_PS_TMP_IMG_DIR_, 'ps_import');
if(Tools::copy($arCartPrice['IMG_SRC'], $tmpfile)){
$path = $image->getPathForCreation();
ImageManager::resize($tmpfile, $path.'.jpg');
}
unlink($tmpfile);
}
}
}else{
ErAdd("Prestashop new Item ID is false",1);
}
unset($obProduct);
}
if($NewTID>0){
if($arCartPrice['AVAILABLE']>0){StockAvailable::setQuantity($NewTID, false, $arCartPrice['AVAILABLE']);}
$obCart = new Cart($id_cart);
$obCart->id_lang = $id_lang;
$obCart->id_currency = $id_currency;
if($obCart->updateQty($QUANTITY,$NewTID)){
Header('Location: http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']); die();
}else{
ErAdd("Prestashop Add to Cart is false. NewTID=".$NewTID,1);
}
}
}
}
}
require($_SERVER["DOCUMENT_ROOT"]."/header.php");
ErShow();
echo $TDMContent;
require($_SERVER["DOCUMENT_ROOT"]."/footer.php");
?>
vasko
Новичок
Сообщений: 10
Регистрация: 20-01-2018
# 5
23-01-2018 01:45
Presta Shop V 1.6
Алекс
Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009
# 6
23-01-2018 15:12
Цитата:( vasko @ 23-01-2018 01:44
Смотреть сообщение
)
Как переделать для Presta Shop? Файл интеграции в самом модуле для Presta Shop
...
Данный код (из 4ого сообщения) где располагается (уточните место подключения)?
Что за метод
ErShow()
и где собираются данные для:
Код:
echo $TDMContent;
Не выкладывайте более код в сообщении (можно выбрать файл и приложить его к сообщению).
Оказываю услуги по администрированию интернет-магазина на CMS PrestaShop, написание модулей для PrestaShop. Большой опыт работы с CMS PrestaShop.
vasko
Новичок
Сообщений: 10
Регистрация: 20-01-2018
# 7
24-01-2018 00:33
Путь к файлу папка в корны сайта autoparts\tocms\PrestaShop.php
vasko
Новичок
Сообщений: 10
Регистрация: 20-01-2018
# 8
24-01-2018 00:50
Файл index.html в корне папки autoparts i NoCMS.php в папке autoparts \ tocms \
Вложения:
index.html
( Размер файла: 6.2KB Скачиваний: 544 )
NoCMS.php
( Размер файла: 525Bytes Скачиваний: 76 )
vasko
Новичок
Сообщений: 10
Регистрация: 20-01-2018
# 9
24-01-2018 01:08
В админке модуля можно выбрать cms: prestashop, opencart, nocms итд. Когда выбираю nocms тогда title, description, keywords генерируются автоматически от страницы и все ок. Когда подключаете prestashop тогда title Ошибка 404 -...... Причем страница отображается нормально текст товар отображается итд ...
Алекс
Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009
# 10
24-01-2018 15:43
Приложенный код модуля невнятен, понять как подключается данные мне так и не удалось
.
Пробуйте данный вариант: откройте файл
/classes/Meta.php
и до:
Код:
if ($page_name == 'product' && ($id_product = Tools::getValue('id_product')))
return Meta::getProductMetas($id_product, $id_lang, $page_name);
добавьте подобный код:
Код:
if (defined('TDM_TITLE'))
return ['meta_title' => TDM_TITLE, 'meta_description' => (defined('TDM_DEscriptION') ? TDM_DEscriptION : ''), 'meta_keywords' => (defined('TDM_KEYWORDS') ? TDM_KEYWORDS : '')];
Оказываю услуги по администрированию интернет-магазина на CMS PrestaShop, написание модулей для PrestaShop. Большой опыт работы с CMS PrestaShop.
Всего: 2
1
2
>
На Главную форума
Найти
FaQ
Панель управления
Кто он-лайн
Общие форумы (prestashop v1.7.x)
-- Общий форум
-- Установка, Настройка, Обновление
-- Модули, плагины
-- Дизайн, шаблоны
-- Песочница
Общие форумы (prestashop v1.6.x)
-- Общий форум
-- Установка, Настройка, Обновление
-- Модули, плагины
-- Дизайн, шаблоны
-- Песочница
Общие форумы (prestashop v1.5.x)
-- Общий форум
Общие форумы (prestashop v1.4.x)
-- Новости и объявления
-- Общий форум
-- Установка, Настройка, Обновление
-- Дизайн, шаблоны
-- Модули, плагины
-- Песочница
-- Прочее
Общие форумы (prestashop v1.3.x)
-- Общий форум
-- Установка, Настройка, Обновление
-- Дизайн, шаблоны
-- Модули, плагины
---- Платные модули и хаки
-- Песочница
Другое
-- Корзина
---- Хостинг
---- Каталог магазинов
---- Общий форум
---- Прием багов