-
Публікації
2 888 -
З нами
-
Відвідування
Тип публікації
Профілі
Форум
Маркетплейс
Статті
FAQ
Наші новини
Магазин
Блоги
module__dplus_manager
Повідомлення, опубліковані користувачем katilina
-
-
Ошибка в логах Error: RCPT TO not accepted from server! если прописываю
public function getAllCustomers() { $query = $this->db->query("SELECT `firstname`, `email` FROM `".DB_PREFIX."order"); return $query->rows; }
При варианте $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order"); Добавляется ошибка Uninitialized string offset: 0
Почта на сайте через smpt работает, письма о заказе приходят, обратная связь работает. В БД проверила наличие записей в таблице order, имеются такие firstname и email
Вопрос: что такое RCPT TO и почему он не принимается от сервера?
-
Можно изменить ширину блоков: в админке задать размер изображения больший в 2 раза и в файле стилей изменить ширину блока, сейчас она 200px
.product-grid .block{ width:400px;} Для мобильной версии тоже придётся учесть ширину блока, пишите в личку, подскажу
-
Спасибо за наводку, поищу
-
В том-то и дело, что абсолютно все нужны. На сайте отсутствует регистрация, а поле email является обязательным при оформлении заказа
-
-
Информация о покупателях отображается же в панеле управления, статус заказа, детали оплаты, адреса. Разве в БД это не записывается?
Форма оформления заказа есть. Я имею в виду покупателей, которые отказались от регистрации.
-
Появилась необходимость рассылать письма незарегистрированным покупателям. Покопавшись в интернете нашла решение, но не работающее. Обращаюсь за помощью к ассам. Использую ocstore 1.5.5.1.1
1. admin\controller\sale\contact.php
Послеcase 'customer_all': $customer_data = array( 'start' => ($page - 1) * 10, 'limit' => 10 ); $email_total = $this->model_sale_customer->getTotalCustomers($customer_data); $results = $this->model_sale_customer->getCustomers($customer_data); foreach ($results as $result) { $emails[] = $result['email']; } break;
добавить
//////// add all case 'customer_all_all': $results = $this->model_sale_customer->getAllCustomers(); foreach ($results as $result) { $emails[] = $result['email']; } break; ////////
после
$this->data['text_customer_all'] = $this->language->get('text_customer_all');
добавить
/// add all $this->data['text_customer_all_all'] = $this->language->get('text_customer_all_all'); ///
2. admin\model\sale\customer.php
Послеpublic function getCustomerByEmail($email) { $query = $this->db->query("SELECT DISTINCT * FROM " . DB_PREFIX . "customer WHERE email = '" . $this->db->escape($email) . "'"); return $query->row; }
добавить
/////// add all public function getAllCustomers($email) { $query = $this->db->query("SELECT firstname, lastname, email, telephone, fax, payment_company AS company FROM " . DB_PREFIX . "order"); return $query->row; } ///////
3. admin\language\russian\sale\contact.php
После$_['text_customer_all'] = 'Все покупатели';[/code] добавить [code]/// add all $_['text_customer_all_all'] = 'В том числе и незарегистрированные'; ///
4. admin\view\template\sale\contact.tpl
После<option value="customer_all"><?php echo $text_customer_all; ?></option>
добавить
<option value="customer_all_all"><?php echo $text_customer_all_all; ?></option>
- 1
-
Да расслабтесь, из меня программист не выйдет. Зато я неплохой дизайнер.
-
Пожелание.
Перед выводом переменных желательно их либо инициализировать или проверять на существование.-----------------------------------------------
Да, действительно, не учла тот факт, что всех производителей могут удалить. Вы, похоже, первый, кто это сделал.
-
присоединяюсь к вопросу
В шаблоне используется бесплатный, но доработанный мной модуль новостей. Seo не учла, сама с этим пытаюсь разобраться. Тут есть предложение, попробуйте. https://opencartforum.com/topic/19872-news-155-новости-155-v32/page-2
- 1
-
Тема уже обсуждалась. Поменяйте в файле catalog\controller\information\contact.tpl
$mail->setTo($this->config->get('email'));
$mail->setFrom($this->config->get('name'));на
$mail->setTo($this->config->get('config_email'));
$mail->setFrom($this->config->get('config_email')); -
Спасибо огромное, всё работает
-
Добрый день, спасибо за модуль. Подскажите, где формируется письмо, которое приходит покупателю после оформления заказа. Хочу внести свои изменения
-
модуль на главной странице, вышеназванный код находится в цикле foreach ($products as $product_id) {..........Ъ
-
вписываю до $this->data['products'][] = array(
$this->data['reviews'] = array(); $review_total = $this->model_catalog_review->getTotalReviewsByProductId($this->request->get['product_id']); $results = $this->model_catalog_review->getReviewsByProductId($this->request->get['product_id']); foreach ($results as $result) { $this->data['reviews'][] = array( 'author' => $result['author'], 'text' => $result['text'], 'rating' => (int)$result['rating'], 'reviews' => sprintf($this->language->get('text_reviews'), (int)$review_total), 'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])) ); }
Получаю ошибку Undefined index: product_id
Извините, у меня бывает, полное затмение :)
-
заключила всё в function index()
не понятно как сделать
получаем отзывы о товаре по его id - хоть 20
-
Да, в лог смотрю, естественно, ошибка Undefined variable: reviews
при таком раскладе
public function review() { $this->language->load('product/product'); $this->load->model('catalog/review'); $this->data['reviews'] = array(); $review_total = $this->model_catalog_review->getTotalReviewsByProductId($this->request->get['product_id']); $results = $this->model_catalog_review->getReviewsByProductId($this->request->get['product_id']); foreach ($results as $result) { $this->data['reviews'][] = array( 'author' => $result['author'], 'text' => $result['text'], 'rating' => (int)$result['rating'], 'reviews' => sprintf($this->language->get('text_reviews'), (int)$review_total), 'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])) ); } if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/kleosunfeatured.tpl')) { $this->template = $this->config->get('config_template') . '/template/module/kleosunfeatured.tpl'; } else { $this->template = 'default/template/module/kleosunfeatured.tpl'; } $this->response->setOutput($this->render()); }
Но как мы выяснили метод revew() тут не работает . При имеющемся наборе советов я пока никуда не продвинулась...
-
Еще несколько вопросов.
1. В каком файле описаны классы для отображения цены ("price"), кнопки покупки, добавления в закладки и сравнения. Хотелось бы немного подредактировать под себя.
2. Где можно отредактировать элементы, расположенные в верхнем меню и в подвале сайта (хотелось бы убрать ненужные).
3. Можно ли сделать панель быстрого заказа раскрывающейся? (Очень полезная штука, честь Вам и хвала за нее, но слишком много "ест" места на странице товара)
Заранее благодарен!
1. В файле стилей catalog\view\theme\polianna\stylesheet\styleshhet.css Цвет кнопок настраивается через модуль Настройки темы Polianna и стили задаются в этом случае в файле catalog\view\theme\polianna\template\common\header.tpl
2. в файлах catalog\view\theme\polianna\template\common\header.tpl и footer.tpl
3. Перенесите вниз под описание или измените стили для более компактного расположения
- 1
-
Новый модуль написать, по-моему, задача сложнее, чем отредактировать имеющийся. Мне всего-то надо внедрить отзывы в товары, которые я выбираю в модуле.
Из-за нехватки базовых знаний это мне сделать сложно.
Цикл по товарам идёт при определённом наборе id этих товаров.
Т.е надо в цикл загрузить массив отзывов и выбрать по id отзывы конкретного товара. Как это сделать синаксически?
Вот тут ошибочный код, знаю, $page убрала
$review_total = $this->model_catalog_review->getTotalReviewsByProductId($this->request->get['product_id']);
$results = $this->model_catalog_review->getReviewsByProductId($this->request->get['product_id']);
$this->load->model('catalog/review'); $this->data['reviews'] = array(); $review_total = $this->model_catalog_review->getTotalReviewsByProductId($this->request->get['product_id']); $results = $this->model_catalog_review->getReviewsByProductId($this->request->get['product_id']); foreach ($results as $result) { $this->data['reviews'][] = array( 'author' => $result['author'], 'text' => $result['text'], 'rating' => (int)$result['rating'], 'reviews' => sprintf($this->language->get('text_reviews'), (int)$review_total), 'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])) ); }
-
Существует модуль вывода последних/ случайных отзывов http://www.opencart.com/index.php?route=extension/extension/info&extension_id=4971&filter_search=reviews
Мне он показался не очень удобным. Необходимо выводить отзывы у заданных товаров.
-
В идеале
Цикл по товарам{
получаем отзывывыбираем последний отзыв (подключаем модель, где определена функция выборки последнего отзыва)
заполняем массив продуктов ( в массив вносим автора и последний отзыв)
}Но можно реализовать так:
Цикл по товарам{
получаем отзывы
заполняем массив продуктов ( в него массив отзывов)
} -
Вот в этом месте понимать перестала, поэтому и обратилась за помощью. Как перед загрузкой шаблона вызвать метод review() ? Пыталаюсь сделать по аналогии вывода отзывов в карточке товара
-
В итоге не определена переменная reviews. В каком месте надо вызывать метод review() тогда? делаю по аналогии с выводом отзывов в карточке товара. Что-то упустила
-
В контроллер модуля Рекомендуемые вставляю код
public function review() { $this->language->load('product/product'); $this->load->model('catalog/review'); $this->data['reviews'] = array(); $review_total = $this->model_catalog_review->getTotalReviewsByProductId($this->request->get['product_id']); $results = $this->model_catalog_review->getReviewsByProductId($this->request->get['product_id'], ($page - 1) * 5, 5); foreach ($results as $result) { $this->data['reviews'][] = array( 'author' => $result['author'], 'text' => $result['text'], 'rating' => (int)$result['rating'], 'reviews' => sprintf($this->language->get('text_reviews'), (int)$review_total), 'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])) ); } $this->response->setOutput($this->render()); }
в модуле вывожу
<?php if ($reviews) { ?> <?php foreach ($reviews as $review) { ?> <div class="author"><span><?php echo $review['author']; ?></span> <?php echo $text_on; ?> <b><?php echo $review['date_added']; ?></b></div> <div class="text"><?php echo $review['text']; ?></div> <?php } ?> <?php } ?>
Универсальный адаптивный шаблон Polianna [Поддержка]
в Платные шаблоны
Опубліковано:
Ширина 100% при ширине браузера меньше 1170, что логично. На больших разрешениях ширина сайта 1170px. Или Вы что-то другое имеете в виду? Ширину верхнего меню можно сделать фиксированной (1170) в модуле Настройки темы