Перейти к содержанию
Официальный форум поддержки Simpla

Рекомендуемые сообщения

Что делает: дает возможность выводить отзывы о магазине из группы/публичной страницы ВК

Что умеет: выводить сначала новые и наоборот, постраничная навигация, вывод фото, имени автора комментария и самого комментария.

 

1. Добавляем в api/Simpla.php

,'vkreviews'  => 'VKReviews' 

2. Раскидываем файлы по папкам все из архива

 

3. Добавляем в корневой .htaccess перед #Блог

# Отзывы ВК
RewriteRule ^reviews/?$	index.php?module=VKReviewsView [L,QSA]

4. Создаем в админке страницу Отзывы с адресом

reviews

5. Добавляем в simpla/SettingsAdmin.php

$this->settings->vk_group = $this->request->post('vk_group');	
$this->settings->vk_posts = $this->request->post('vk_posts'); 

6. Добавляем в simpla/disign/html/settings.tpl

<div class="block layer">
	<h2>Комментарии ВК</h2>
	<ul>
		<li><label class=property>ID группы ВК</label><input name="vk_group" class="simpla_inp" type="text" value="{$settings->vk_group|escape}" /></li>
		<li><label class=property>ID поста в группе</label><input name="vk_posts" class="simpla_inp" type="text" value="{$settings->vk_posts|escape}" /></li>
	</ul>
</div>

7. Для того чтобы вывести на главной странице последние 5 отзывов нужно добавить в view/View.php ПОСЛЕ

$this->design->smarty->registerPlugin("function", "get_posts", array($this, 'get_posts_plugin'));

следующий код

$this->design->smarty->registerPlugin("function", "get_last_reviews", array($this, 'get_last_reviews_plugin'));

в этом же файле ДО

public function get_posts_plugin($params, &$smarty)

вставить

public function get_last_reviews_plugin($params, &$smarty)
{
	if(!empty($params['var']))
		$smarty->assign($params['var'], $this->vkreviews->get_reviews($params));
}

и дальше в шаблоне сайта (например main.tpl) выводить так

{get_last_reviews var=last_reviews limit=2}
{if $last_reviews}
<div id="blog_menu">
	<h2>Новые <a href="reviews">отзывы</a></h2>
	{foreach $last_reviews as $review}
	<ul>
		<li>
			<h3>{$review->name|escape} ({$review->date|date})</h3>
			{$review->text}
		</li>
	</ul>
	{/foreach}
</div>
{/if}

 

 

Скрины:

https://yadi.sk/i/_xb7YNbimTUoS

https://yadi.sk/i/DWifH3ngmTW6U

 

Где использовать?: просто выводить отзывы из ВК. также можно совместить отзывы из вк с отзывами на сайте, сортируя их по дате, но недостатком является то, что придется выбирать каждый раз все отзывы из сайта и из вк и сортировать их все по дате.

 

UPD 04.03.2016: переписан из-за изменений в апи+добавлена поддержка аттачментов(фото, стикеры, документы, музыка).

UPD 30.03.2016: добавлен виджет вывода последних отзывов на главной (смотри пункт 7).

vk_reviews.zip

Изменено пользователем mishanya
Ссылка на сообщение
Поделиться на другие сайты

отзыв на самом сайте написать можно?

нет, я бы написал об этом выше в возможностях. можно конечно сделать чтобы оставляя отзыв на, он постился в ВК, но тогда надо уже использовать авторизацию ВК. чтобы идентифицировать пользователя

Изменено пользователем mishanya
Ссылка на сообщение
Поделиться на другие сайты

нет, я бы написал об этом выше в возможностях. можно конечно сделать чтобы оставляя отзыв на, он постился в ВК, но тогда надо уже использовать авторизацию ВК. чтобы идентифицировать пользователя

Мне вот просто нужны отзывы на сайте, даже без вк можно ) если появится возможность писать отзыв с сайта воспользуюсь с радостью )

Ссылка на сообщение
Поделиться на другие сайты

Мне вот просто нужны отзывы на сайте, даже без вк можно ) если появится возможность писать отзыв с сайта воспользуюсь с радостью )

 

просто отзывы уже есть на форуме в бесплатном виде и немного сырые. но по инструкции должны работать. возможно в свободное время напишу свой модуль

Изменено пользователем mishanya
Ссылка на сообщение
Поделиться на другие сайты

недостатком является то, что придется выбирать каждый раз все отзывы из сайта и из вк и сортировать их все по дате.[/font][/color]

Мишаня я бы посоветовал при получении отзывов через API, записывать их в БД, тогда все записи будут в одном месте и при удалении комментария с группы он все-равно останется в магазине.

P.S. Кто-то поборол загрузку картинок через этот API? Я раз 10 пробовал и в техподдержку писал, результата 0.

Ссылка на сообщение
Поделиться на другие сайты

Мишаня я бы посоветовал при получении отзывов через API, записывать их в БД, тогда все записи будут в одном месте и при удалении комментария с группы он все-равно останется в магазине.

P.S. Кто-то поборол загрузку картинок через этот API? Я раз 10 пробовал и в техподдержку писал, результата 0.

 

смысл был в том чтобы в риалтайме выбирать комменты с вк. конечно можно писать в базу, нет проблем. но тогда например если модератор удалил какой-то коммент из вк, нужно кроном делать обновление в базе. 

 

насчет загрузки картинок куда? в посты вк? есть задание такое о фотках, завтра буду пробовать грузить в вк фото с помощью апи

Ссылка на сообщение
Поделиться на другие сайты

смысл был в том чтобы в риалтайме выбирать комменты с вк. конечно можно писать в базу, нет проблем. но тогда например если модератор удалил какой-то коммент из вк, нужно кроном делать обновление в базе.

Не обязательно использовать крон, API много чего позволяет, дам наводку: если нет совпадения по какому то ключу комментария из БД и из ВК то не отображаем.

насчет загрузки картинок куда? в посты вк? есть задание такое о фотках, завтра буду пробовать грузить в вк фото с помощью апи

Да просто в записи группы, вот как столкнешься с этой проблемой - пиши.

В сети очень много возмущений на то что средствами API по не известной нам (и разработчикам) причине, загрузка фоток на серверы ВК не работает.

Ссылка на сообщение
Поделиться на другие сайты
  • 4 недели спустя...

у меня есть вкусняшка попроще только на php 

https://yadi.sk/d/7wdZKIS1neb3D

посмотреть можно тут 

http://www.tigon-shop.ru/otzyvy

 

и чем проще? вообще-то это решение тоже на пхп. это раз. во-вторых теги пхп уже не поддерживаются в новых вериях симпла. в третьих у вас нет пагинации а выбирает только 40 отзывов. дальше не смотрел и не пробовал работает ли. 

Изменено пользователем mishanya
Ссылка на сообщение
Поделиться на другие сайты
  • 1 месяц спустя...

у меня есть вкусняшка попроще только на php 

https://yadi.sk/d/7wdZKIS1neb3D

посмотреть можно тут 

http://www.tigon-shop.ru/otzyvy

 

подскажите как данный модуль постовить на сайт ?

Ссылка на сообщение
Поделиться на другие сайты

подскажите как данный модуль постовить на сайт ?

 

я бы не советовал, посмотрите выше что я написал о недостатках. + автор неадеквад и пытался всунуть непонятно что под фильтром цен. поугорать можно тут

Ссылка на сообщение
Поделиться на другие сайты

я бы не советовал, посмотрите выше что я написал о недостатках. + автор неадеквад и пытался всунуть непонятно что под фильтром цен. поугорать можно тут

 

спасибо за ответ!

Но этоти отзывы странно отображаются, у меня у одного так ? http://prnt.sc/a9b6ou

Ссылка на сообщение
Поделиться на другие сайты

спасибо за ответ!

Но этоти отзывы странно отображаются, у меня у одного так ? http://prnt.sc/a9b6ou

 

а в чем странность? вам нужно свои стили для них добавить. 

Ссылка на сообщение
Поделиться на другие сайты

а в чем странность? вам нужно свои стили для них добавить. 

Странность в том что 1й пост администратора - отображается всегда сверху на сайте, и вместо текста администрации "оставляйте свои отзывы....", последний комент (отзыв) пользователя.

Ссылка на сообщение
Поделиться на другие сайты

Странность в том что 1й пост администратора - отображается всегда сверху на сайте, и вместо текста администрации "оставляйте свои отзывы....", последний комент (отзыв) пользователя.

а, скиньте ссылку на пост, посмотрю

Ссылка на сообщение
Поделиться на другие сайты

Ретябята кто поможет, скрипт не верно отображает отзывы

Изменено пользователем Axotn1k
Ссылка на сообщение
Поделиться на другие сайты

UPD 04.03.2016: переписан из-за изменений в апи+добавлена поддержка аттачментов(фото, стикеры, документы, музыка).

Ссылка на сообщение
Поделиться на другие сайты

Вот дизайн немного изменил, подправил стили, заменить файл vkreviews.tpl

 

{* Шаблон текстовой страницы *}

{* Канонический адрес страницы *}
{$canonical="/{$page->url}" scope=parent}

<!-- Заголовок страницы -->
<h1 data-page="{$page->id}">{$page->header|escape}</h1>

<!-- Тело страницы -->
{$page->body}

{* Список записей блога *}

{* Канонический адрес страницы *}
{$canonical="/reviews" scope=parent}



{include file='pagination.tpl'}

<!-- Отзывы /-->



<ul id="reviews">
	{foreach $reviews as $review}
	<li style="clear:both; margin-left: 60px; list-style-type:none;  list-style-image: url(ваш путь к картинке/files/uploads/ico/_like.png);">
		<h3>{$review->name|escape} ({$review->date|date})</h3>
		<p>
			<img src="{$review->imgs}" vertical-align: middle; style="float:left; margin:0px 15px 0px 0px">
			<h4>{$review->text}</h4>

			{if $review->attachments}
				{foreach $review->attachments as $a}
					{if $a->type=='doc'}    <a href="{$a->doc->url}" target="_blank">{$a->doc->title}</a>{/if}
					{if $a->type=='photo'}  <img src="{$a->photo->src_big}">{/if}
					{if $a->type=='sticker'}<img src="{$a->sticker->photo_512}">{/if}

					{if $a->type=='audio'}<audio controls><source src="{$a->audio->url}" type="audio/mpeg"></audio>{/if}
				{/foreach}
			{/if}
		</p>
	</li>
	{/foreach}
</ul>
<br>
<br>
<br>
<br>
<!-- Отзывы #End /-->    

{include file='pagination.tpl'}
Изменено пользователем Axotn1k
Ссылка на сообщение
Поделиться на другие сайты

 

Вот дизайн немного изменил, подправил стили, заменить файл vkreviews.tpl

 

{* Шаблон текстовой страницы *}

{* Канонический адрес страницы *}
{$canonical="/{$page->url}" scope=parent}

<!-- Заголовок страницы -->
<h1 data-page="{$page->id}">{$page->header|escape}</h1>

<!-- Тело страницы -->
{$page->body}

{* Список записей блога *}

{* Канонический адрес страницы *}
{$canonical="/reviews" scope=parent}



{include file='pagination.tpl'}

<!-- Отзывы /-->



<ul id="reviews">
	{foreach $reviews as $review}
	<li style="clear:both; margin-left: 60px; list-style-type:none;  list-style-image: url(ваш путь к картинке/files/uploads/ico/_like.png);">
		<h3>{$review->name|escape} ({$review->date|date})</h3>
		<p>
			<img src="{$review->imgs}" vertical-align: middle; style="float:left; margin:0px 15px 0px 0px">
			<h4>{$review->text}</h4>

			{if $review->attachments}
				{foreach $review->attachments as $a}
					{if $a->type=='doc'}    <a href="{$a->doc->url}" target="_blank">{$a->doc->title}</a>{/if}
					{if $a->type=='photo'}  <img src="{$a->photo->src_big}">{/if}
					{if $a->type=='sticker'}<img src="{$a->sticker->photo_512}">{/if}

					{if $a->type=='audio'}<audio controls><source src="{$a->audio->url}" type="audio/mpeg"></audio>{/if}
				{/foreach}
			{/if}
		</p>
	</li>
	{/foreach}
</ul>
<br>
<br>
<br>
<br>
<!-- Отзывы #End /-->    

{include file='pagination.tpl'}

можно скрин пожалуйста?

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...