Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

mario512

Users
  • Posts

    355
  • Joined

  • Last visited

Everything posted by mario512

  1. Подскажите, а почему используетсяя шаблонизатор твиг в 3.0? В чем преимущества?
  2. Симплы нет. Модулей не много. Думаю со временем обновить дизайн сайта. Хотелось бы его максимально облегчить.
  3. Добрый день. Подскажите, существуют шаблоны на oc 2.3.0.2 без bootstrap?
  4. Добрый день. Хотелось бы узнать о влиянии на лояльность поисковиков к сайтам, у которых динамический title? И в каких случаях их использовать?
  5. Переделал. Google пишет, что сайтмап пустой. З.Ы. Если отключить SeoPro, то сайтмап открывается. OCStore 2.3.0.2
  6. Открывается, модуль включен. Попробую подправить htaccess. Спасибо, за то что отозвались.
  7. Сделал. По адресу: sitename/sitemap.xml пустая страница. Вываливаю .htaccess. В чём я не прав?
  8. @Vetroff @TeslaFeo @auditor Огромное спасибо! Благодаря вашим советам, разобрался! Тема закрыта!
  9. Да, видел. Хотелось бы реализовать задуманное на стороне сервера, посредством php. Насколько я понял, массив формируется в контроллере product.php Там есть процедура. Как мне их получить из контроллера?
  10. Добрый вечер. Пытаюсь разметить отзывы (ld+json) в карточке товара. Накидал такой набор символов в product.tpl (в php только начинаю вникать): <?php if(!empty($rating)){?> <?php echo '"review":[</br>'; $i = 0; foreach ($reviews as $review) { $i++; echo '{"@type":"Review",</br> "author":"'.$review['author'].'",</br> "datePublished":"'.$review['date_added'].'",</br> "description":"'.$review['text'].'",</br> "reviewRating":{</br> "@type":"Rating",</br> "bestRating":"'.$rating.'",</br> "ratingValue":'.preg_replace('/.*(\d+).*/s', '$1', $reviews).',</br> "worstRating":"0"}</br> }';if(count($reviews)<>$i){echo ",";}; echo "</br>"; }; echo '],'; ?> "aggregateRating":{ "ratingValue":"<?php echo $rating ?>", "reviewCount":"<?php echo preg_replace('/.*(\d+).*/s', '$1', $reviews); ?>", "@type":"AggregateRating" }, <?php } ?> Вываливает: "review":[</br><b>Warning</b>: Invalid argument supplied for foreach() in <b>/home/caseroom/caseroom.in.ua/www/system/storage/modification/catalog/view/theme/default/template/product/product.tpl</b> on line <b>705</b>], Я так понимаю, что массив reviews не доступен? Как его получить?
  11. Да это все присутствует в контроллере по дефолту. public function review() { $this->load->language('product/product'); $this->load->model('catalog/review'); $data['text_no_reviews'] = $this->language->get('text_no_reviews'); if (isset($this->request->get['page'])) { $page = $this->request->get['page']; } else { $page = 1; } $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) { $data['reviews'][] = array( 'author' => $result['author'], 'text' => nl2br($result['text']), 'rating' => (int)$result['rating'], 'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])) ); } $pagination = new Pagination(); $pagination->total = $review_total; $pagination->page = $page; $pagination->limit = 5; $pagination->url = $this->url->link('product/product/review', 'product_id=' . $this->request->get['product_id'] . '&page={page}'); $data['pagination'] = $pagination->render(); $data['results'] = sprintf($this->language->get('text_pagination'), ($review_total) ? (($page - 1) * 5) + 1 : 0, ((($page - 1) * 5) > ($review_total - 5)) ? $review_total : ((($page - 1) * 5) + 5), $review_total, ceil($review_total / 5)); $this->response->setOutput($this->load->view('product/review', $data)); } Спасибо, буду пробовать.
  12. Да это все присутствует в контроллере по дефолту. public function review() { $this->load->language('product/product'); $this->load->model('catalog/review'); $data['text_no_reviews'] = $this->language->get('text_no_reviews'); if (isset($this->request->get['page'])) { $page = $this->request->get['page']; } else { $page = 1; } $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) { $data['reviews'][] = array( 'author' => $result['author'], 'text' => nl2br($result['text']), 'rating' => (int)$result['rating'], 'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])) ); } $pagination = new Pagination(); $pagination->total = $review_total; $pagination->page = $page; $pagination->limit = 5; $pagination->url = $this->url->link('product/product/review', 'product_id=' . $this->request->get['product_id'] . '&page={page}'); $data['pagination'] = $pagination->render(); $data['results'] = sprintf($this->language->get('text_pagination'), ($review_total) ? (($page - 1) * 5) + 1 : 0, ((($page - 1) * 5) > ($review_total - 5)) ? $review_total : ((($page - 1) * 5) + 5), $review_total, ceil($review_total / 5)); $this->response->setOutput($this->load->view('product/review', $data)); }
  13. Я так понял, что сюда залетают отзывы: $results = $this->model_catalog_review->getReviewsByProductId($this->request->get['product_id'], ($page - 1) * 5, 5); foreach ($results as $result) { $data['reviews'][] = array( 'author' => $result['author'], 'text' => nl2br($result['text']), 'rating' => (int)$result['rating'], 'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])) ); } Как их передать в product.tpl?
  14. @anboza <?php echo $review['author']; ?> и еще несколько...
×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.