Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 115 Ответов
  • 45386 Просмотров
*

sharp

  • Завсегдатай
  • 1173
  • 97 / 2
VirtueMart 1.1.х JComments + Рейтинг
« : 16.01.2011, 10:20:50 »
Задача: Интегрировать JComments в VirtueMart 1.1.х и добавить систему рейтинга товаров!

Как интегрировать JComments в VirtueMart 1.1.х  есть хорошая статья на  сайте разработчика JComments  и на  нашем форуме

Рейтинг мы будем реализовывать испоьзуя плагин Extravote.

Итак:
ЧАСТЬ ПЕРВАЯ Extravote 1.4 Идея взята отсюда отсюда


1.1. устанавливаем Extravote, включаем его, отключаем стандартный плагин рейтинга.
1.2. В настройках VirtueMart разрешаем использовать мамботов / плагинов( “Компоненты->virtuemart“,  “Настройки“,  “Общие настройки“, ставим галочку “Разрешить использование мамботов / плагинов в описании товара и категории?”).
1.3. Открываем файл  plugins/content/extravote.php Найдите функцию “onPrepareContent” и после её открытием вставьте  код:

Код
 if(!isset($article->id))
{
 $regex = "#{extravote\s*([0-9]+)}#s";
 $article->id = preg_replace_callback( $regex, array($this,'plgGetProductId'), $article->text );
 }

вконце файла добавте еще одну функцию

Код
function plgGetProductId(&$matches)
{
 $id = (int)$matches[1];
 return $id;
}

1.4. Откройте файл administrator/components/com_virtuemart/html/shop.browse.php
находим строку
Код
$product_rating = ps_reviews::allvotes( $db_browse->f('product_id') );

и заменяем ее на
Код
$product_rating = JHTML::_('content.prepare', '{extravote '.$db_browse->f("product_id").'}');


готовый extravote.php во вложении.

1.5 В шаблоне товара Flypage* втавляем код на место, где вы хотите сделать вывод рейтинга:
Код
<?php
$product_rating = JHTML::_('content.prepare', '{extravote '.$product_id.'}');
echo $product_rating;
?>

ЧАСТЬ ВТОРАЯ VirtueMart 1.1.х    JComments

2.1 Откройте файл /administrator/components/com_virtuemart/html/shop.product_details.php
Найдите строки:
 
Код
 /*** Show all reviews available ***/
  $product_reviews = ps_reviews::product_reviews( $product_id );
  /*** Show a form for writing a review ***/
  $product_reviewform = ps_reviews::reviewform( $product_id );
и замените их на:
Код
  $comments = $mosConfig_absolute_path . '/components/com_jcomments/jcomments.php';
  if (file_exists($comments)) {
    require_once($comments);
    $product_reviews = JComments::showComments($product_id, 'com_virtuemart', $product_name);
    $product_reviewform = "";
  }
2.2 Откройте файл /administrator/components/com_virtuemart/html/shop.browse.php
Найдите и удалите или закомментируйте следующую строку:
Код
  $product_rating = $VM_LANG->_PHPSHOP_CUSTOMER_RATING .": <br />";



[вложение удалено Администратором]
« Последнее редактирование: 31.03.2011, 16:45:54 от sharp »
Хочешь знать правду!? читай таблицу умножения.
Поисковое продвижение или раскрутка сайта!
*

sharp

  • Завсегдатай
  • 1173
  • 97 / 2
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #1 : 16.01.2011, 10:25:17 »
МОДЕРАТОРЫ, это всетаки в большей степени относиться к ветке  VirtueMart :)
Хочешь знать правду!? читай таблицу умножения.
Поисковое продвижение или раскрутка сайта!
*

kunev

  • Захожу иногда
  • 118
  • 0 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #2 : 16.01.2011, 12:53:08 »
extravote к JComments никакого отношения не имеет. он сам по себе. к тому же на сайте косяк

<!-- ����������� JComments
Добавить комментарий
« Последнее редактирование: 16.01.2011, 12:57:42 от kunev »
*

sharp

  • Завсегдатай
  • 1173
  • 97 / 2
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #3 : 16.01.2011, 13:17:41 »
все работает.
а никто и не говорил что extravote имеет какое то отношение к  JComments
« Последнее редактирование: 16.01.2011, 23:18:37 от sharp »
Хочешь знать правду!? читай таблицу умножения.
Поисковое продвижение или раскрутка сайта!
*

kunev

  • Захожу иногда
  • 118
  • 0 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #4 : 16.01.2011, 18:59:08 »
это ваш сайт? в дополнительных картинках очередные косяки
*

step09

  • Захожу иногда
  • 65
  • 0 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #5 : 20.01.2011, 04:42:21 »
Все отлично получилось, спасибо, полезно!

Есть вопрос: возможно ли данный рейтинг вставлять в отображение товаров в категории? (таблица товаров)
« Последнее редактирование: 20.01.2011, 06:50:18 от step09 »
*

sharp

  • Завсегдатай
  • 1173
  • 97 / 2
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #6 : 20.01.2011, 08:38:50 »
да, конечно!
Код
<?php
$product_rating = JHTML::_('content.prepare', '{extravote '.$product_id.'}');
echo $product_rating;
?>
необходимо дабавить в шаблон который отвечает за  отображение товаров в категории
Хочешь знать правду!? читай таблицу умножения.
Поисковое продвижение или раскрутка сайта!
*

step09

  • Захожу иногда
  • 65
  • 0 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #7 : 20.01.2011, 15:43:56 »
Дело в том, что у меня отображение в виде таблицы. За это как я понимаю отвечает файл browse_listtable.tpl.php. А там все устроено немного не так как в browse1.php. Не могу сообразить куда вставить ваш кусок кода.

Код browse_listtable.tpl.php:

Код
<?php if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
mm_showMyFileName(__FILE__); ?>

<?php echo $buttons_header // The PDF, Email and Print buttons ?>
<?php echo $browsepage_header // The heading, the category description ?>
<?php echo $parameter_form // The Parameter search form ?>
<?php echo $orderby_form // The sort-by, order-by form PLUS top page navigation ?>

<?php
$data =array(); // Holds the rows of products
$i = 1; $row = 0; // Counters

// Table header
$tableheader[] = $VM_LANG->_('PHPSHOP_CART_NAME');
if( _SHOW_PRICES && $auth['show_prices'] ) {
$tableheader[] = $VM_LANG->_('PHPSHOP_CART_PRICE');
}
$tableheader[] = $VM_LANG->_('PHPSHOP_PRODUCT_FORM_THUMB_IMAGE');
$tableheader[] = $VM_LANG->_('PHPSHOP_PRODUCT_DESC_TITLE');
//if( _SHOW_PRICES && $auth['show_prices'] && USE_AS_CATALOGUE != '1' ) {
// $tableheader[] = $VM_LANG->_('PHPSHOP_CART_ACTION');
//}

// Creates a new HTML_Table object that will help us
// to build a table holding all the products
$table = new HTML_Table('width="100%"');

$table->addRow( $tableheader, 'class="sectiontableheader"', 'th', true );

foreach( $products as $product ) {

foreach( $product as $attr => $val ) {
// Using this we make all the variables available in the template
// translated example: $this->set( 'product_name', $product_name );
$this->set( $attr, $val );
}

$data[$row][] = '<a href="'.$product['product_flypage'].'" title="'.$product['product_name'].'">'.$product['product_name'].'</a><h3 class="browseProductTitle"><a title="<?php echo $product_name ?>" href="<?php echo $product_flypage ?>">';

if( _SHOW_PRICES && $auth['show_prices'] ) {
$data[$row][] = '<div style="width:150px">'.$product['product_price'].'</span></div>';
}
$img_cell = "<div style='position: relative; '>";
$img_cell .= '<a href="'.$product['product_flypage'].'" title="'.$product['product_name'].'">'
. ps_product::image_tag( $product['product_thumb_image'] )
. '</a>';
$img_cell .= "<div style='position: absolute; left: 0; top: 0;'>".$product['new_img']."</div><div style='position: absolute; right: 0; bottom: 0;'>".$product['leader_img']."</div></div>";
$data[$row][] = $img_cell;
$data[$row][] = '<div style="width:220px">'.$product['product_s_desc'].'</div>';
//if( $product['has_addtocart'] ) {
// $data[$row][] = $product['form_addtocart'];
//}
//else {
// $data[$row][] = '<a href="'.$product['product_flypage'].'" title="'.$product['product_name'].'">'
// . $product['product_details']
// . '</a>';
//}

$row++;

}


// Loop through each row and build the table
foreach($data as $key => $value) {

$table->addRow( $data[$key], 'class="sectiontableentry'.$i.'"', 'td', true );
$i = $i == 1 ? 2 : 1;
}
// Display the table
echo $table->toHtml();
?>
<br class="clr" /><br />
<?php echo $browsepage_footer ?>
<?php
// Show Featured Products
//if( $this->get_cfg( 'showFeatured', 1 )) {
    /* featuredproducts(random, no_of_products,category_based) no_of_products 0 = all else numeric amount
    edit featuredproduct.tpl.php to edit layout */
//    echo $ps_product->featuredProducts(true,10,true);
//} ?>
<?php echo $recent_products ?>
*

sharp

  • Завсегдатай
  • 1173
  • 97 / 2
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #8 : 20.01.2011, 22:54:37 »
а вот так ?
Код
<?php echo $product_rating; ?>
Хочешь знать правду!? читай таблицу умножения.
Поисковое продвижение или раскрутка сайта!
*

Pashtetdiz

  • Захожу иногда
  • 175
  • 4 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #9 : 02.02.2011, 19:41:02 »
Спасибо за решение, но у меня звезды появились и не работают, может версия extravote не такая, выложите какой пользовались  !
*

sharp

  • Завсегдатай
  • 1173
  • 97 / 2
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #10 : 02.02.2011, 20:01:37 »
extravote, тут не причем проверте все ли правильно сделали!?
Хочешь знать правду!? читай таблицу умножения.
Поисковое продвижение или раскрутка сайта!
*

Pashtetdiz

  • Захожу иногда
  • 175
  • 4 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #11 : 02.02.2011, 20:36:04 »
extravote, тут не причем проверте все ли правильно сделали!?
Вы правы, нашел и исправил. Все работает на УРА, спасибо за решение давно искал
*

-TroY-

  • Новичок
  • 2
  • 0 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #12 : 04.02.2011, 19:43:01 »
Pashtetdiz, в чем была у тебя проблема, подскажи, может меня на мысль каку наведет. Тоже самое - звезды появились, но не работают ... перепроверил уже раз 10, не могу понять в чем дело.
*

Pashtetdiz

  • Захожу иногда
  • 175
  • 4 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #13 : 04.02.2011, 19:57:25 »
Pashtetdiz, в чем была у тебя проблема, подскажи, может меня на мысль каку наведет. Тоже самое - звезды появились, но не работают ... перепроверил уже раз 10, не могу понять в чем дело.
После установки плагина скачай файл из темы и им замени свой в папке твой сайт\plugins\content\extrovote.php
*

-TroY-

  • Новичок
  • 2
  • 0 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #14 : 05.02.2011, 12:02:03 »
Все заработало после того как скачал версию плагина extravote с сайта http://joomla.vargas.co.cr/index.php?option=com_docman&task=cat_view&gid=23&Itemid=17. Все-таки от версии зависит. В любом случае, sharp, огромное тебе спасибо, что нашел такое решение и поделился с людьми.
*

sharp

  • Завсегдатай
  • 1173
  • 97 / 2
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #15 : 05.02.2011, 20:35:16 »
Пользуйтесь на здоровье!
Хочешь знать правду!? читай таблицу умножения.
Поисковое продвижение или раскрутка сайта!
*

htline

  • Новичок
  • 2
  • 0 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #16 : 15.03.2011, 09:05:31 »
Помогите пожалуйста, у меня вместо звёзд выводится {extravote 50157} где 50157 - id товара  :( , 100 раз проверил, куда копать не пойму
*

htline

  • Новичок
  • 2
  • 0 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #17 : 15.03.2011, 10:10:05 »
Так, вощем починил, касяк был с правами на хостинге, т.е. файлики не перезаписывались, говорит что перезаписывается, а на самом деле нет, удалил вручную всё из папки плагина и записал заново, так же делал и с карточкой вывода, т.е. старый файл удалил, новый записал, НЕ ПЕРЕЗАПИСЫВАЛ! и всё заработало пример: ___expert-cm.ru
*

vano3d

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #18 : 30.03.2011, 14:03:46 »
Спасибо автору за тему - все заработало.

Разместил нужный код в нужном месте Flypage - работает нормально.

Но оценку товара нужно видеть не только в карточке товара, а и в списке товаров в категории.
Разместил этот же код в browse_X.php - звездочки отображаются работают, но живут своей жизнью!  :o То есть, проголосовав за товар в категории, этот рейтинг не учитывается в самом товаре, в карточке товара и наоборот.
При этом вылазит еще баг: если проголосовать за товар в категории, то после обновления страницы такой же рейтинг проставляется всем товарам в данной категории!

Сталкивался кто-нибудь с такой проблемой? Как жить дальше?

Делал все по инструкции, Joomla 1.5.22 + VM 1.1.5
« Последнее редактирование: 30.03.2011, 14:09:50 от vano3d »
*

Infosakh

  • Завсегдатай
  • 1257
  • 67 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #19 : 30.03.2011, 14:10:13 »
кто нибудь киньте ссылку что получилось поглядеть  ^-^
*

Stim_ka

  • Осваиваюсь на форуме
  • 29
  • 10 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #20 : 30.03.2011, 17:17:18 »
Здравствуйте.
На локалке все работает на ура!
А вот на хостинге, все выглядит нормально, но при попытке оценить товар - ничего не происходит.
т.е. бегунок крутится, но в итоге оценка не запоминается.
В чем может быть проблема?

Помогите, пожалуйста!
« Последнее редактирование: 30.03.2011, 19:21:48 от Stim_ka »
*

Stim_ka

  • Осваиваюсь на форуме
  • 29
  • 10 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #21 : 30.03.2011, 17:18:23 »
для
Спасибо автору за тему - все заработало.

Разместил нужный код в нужном месте Flypage - работает нормально.

Но оценку товара нужно видеть не только в карточке товара, а и в списке товаров в категории.
Разместил этот же код в browse_X.php - звездочки отображаются работают, но живут своей жизнью!  :o То есть, проголосовав за товар в категории, этот рейтинг не учитывается в самом товаре, в карточке товара и наоборот.
При этом вылазит еще баг: если проголосовать за товар в категории, то после обновления страницы такой же рейтинг проставляется всем товарам в данной категории!

Сталкивался кто-нибудь с такой проблемой? Как жить дальше?

Делал все по инструкции, Joomla 1.5.22 + VM 1.1.5


в файле shop.browse надо добавить в переменные шаблона значение product_id
*

Stim_ka

  • Осваиваюсь на форуме
  • 29
  • 10 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #22 : 30.03.2011, 18:02:01 »
Снимаю свой вопрос!
Причина была в том, что в базе почему-то не создалась таблица плагина. Добавила ее вручную и все заработало!
Спасибо огромное за описанный метод!
+1
*

Infosakh

  • Завсегдатай
  • 1257
  • 67 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #23 : 31.03.2011, 02:39:26 »
ну так что, кто нибудь кинет ссылку у кого что получилось? В шапке топа есть ДЕМО но там я не вижу никакого рейтинга  ;D
*

sharp

  • Завсегдатай
  • 1173
  • 97 / 2
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #24 : 31.03.2011, 07:46:29 »
ну так что, кто нибудь кинет ссылку у кого что получилось? В шапке топа есть ДЕМО но там я не вижу никакого рейтинга  ;D
на том сайте рейтинг отключил, по просьбе заказчика.
Хочешь знать правду!? читай таблицу умножения.
Поисковое продвижение или раскрутка сайта!
*

Infosakh

  • Завсегдатай
  • 1257
  • 67 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #25 : 31.03.2011, 08:03:18 »
просто я давно уже говорил в теме про рейтинги на счет компонента jlvotes, хорошо было бы его прикрутить к VM, но так и нет еще интеграции, вот решил поглядеть что даст extrovote, но хотелось бы увидеть результат, я то знаю чего я хочу, хочется сравнить с моими ожиданиями  ^-^
*

sharp

  • Завсегдатай
  • 1173
  • 97 / 2
Хочешь знать правду!? читай таблицу умножения.
Поисковое продвижение или раскрутка сайта!
*

vano3d

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #27 : 31.03.2011, 09:18:32 »
для
в файле shop.browse надо добавить в переменные шаблона значение product_id
А точнее? как это сделать?
*

Infosakh

  • Завсегдатай
  • 1257
  • 67 / 0
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #28 : 31.03.2011, 09:56:10 »
Пожалуйста :)
http://vashkaprise.ru/component/virtuemart/category/11-kosmetika-dlya-mugchin.html
эээ, а в чём принципиальная разница рейтинга родного VMовского и вот этого? ))
*

sharp

  • Завсегдатай
  • 1173
  • 97 / 2
Re: VirtueMart 1.1.х JComments + Рейтинг
« Ответ #29 : 31.03.2011, 10:18:25 »
если тебя устраивает родной, зачем тогда пытался что то другое прикрутить?))
Хочешь знать правду!? читай таблицу умножения.
Поисковое продвижение или раскрутка сайта!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Jcomments на странице категории?

Автор romagromov

Ответов: 5
Просмотров: 2586
Последний ответ 12.12.2022, 17:01:38
от sivers
Отображение аватаров из JomSocial в JComments

Автор smart

Ответов: 33
Просмотров: 16539
Последний ответ 20.07.2020, 21:31:50
от darkknight
jComments + AlptaUserPoints Добавить текст в Подробности

Автор Nabla

Ответов: 3
Просмотров: 5150
Последний ответ 22.06.2020, 14:14:08
от Nabla
Интеграция JComments с SP Page Builder

Автор Proaqua

Ответов: 5
Просмотров: 4072
Последний ответ 14.06.2020, 11:53:38
от xpank
Jcomments vs. SP Page Builder

Автор angry_ded_mazay

Ответов: 25
Просмотров: 9773
Последний ответ 14.06.2020, 09:25:28
от faritk