PDA

Zobacz pełną wersję : Guzik "Recommend this product to a friend"



Zyke
14-02-2008, 08:38
Co zrobić aby w Virtuemart na stronie produktu był przycisk poleć znajomemu ten produkt z możliwością wysłania e-mailem linka do produktu prosto ze strony?
Opcja jest w Joomli ale nie znalazłem w virtuemart.

Zyke
15-02-2008, 14:49
czy ktoś może pomóc?

inkos
15-02-2008, 15:01
czy ktoś może pomóc?
Moje propozycje: kontakt z forum virtuemart.net lub też zainstalowanie innego komponentu z serii "poleć znajmomemu" jakie umieszczone są na extensions.joomla.org.

kurtz
15-02-2008, 15:51
[...]

ainow
15-02-2008, 22:19
Skorzystaj z dodatku "Tell a friend" przygotowanego przez Shape5 (http://www.shape5.com/product_details/free_extensions/s5_tell_a_friend.html).

Zyke
16-02-2008, 10:21
Skorzystaj z dodatku "Tell a friend" przygotowanego przez Shape5 (http://www.shape5.com/product_details/free_extensions/s5_tell_a_friend.html).

Dzięki Ainow uruchomiłem sobie "tell a friend" i przerobiłem na polski. Wszystko działa. Ale mam pytanie jak ustawić ten moduł żeby był widzialny tylko w virtuemart. Po prawej stronie w panelu admina wybiera się gdzie ma się pojawić moduł ale nie mam tam pozycji menu, które są komponentami tzn. Virtuemart, Galeria. Problem pojawiał mi się już wielokrotnie przy okazji innych modółów ale nie udało mi sie z tym uporać.
Będę wdzięczny za pomoc w tej kwestii.

ainow
16-02-2008, 11:43
U mnie ten moduł znajduje się w pozycji, która nie występuje w templatce, tak więc nie jest wcale widoczny. :)
Wywołuję go jedynie na karcie produktu za pomocą standardowego bota Joomla "Load Module Position".

Zyke
16-02-2008, 20:54
Nie wiedziałem o istnieniu tego bota, działa sprawnie ale gdy wpiszę do flypage to nie wywołuje modułu tylko wyświetla {mosloadposition user9}. Dlaczego?

ainow
16-02-2008, 22:24
Dlatego, że zapomniałem wspomnieć o koniecznej modyfikacji pliku shop.product_details.php. :)

Na samym końcu pliku musisz wykomentować lub usunąć linię:

/* Finish and Print out the Page */
echo $template;
a następnie pod tą linią dodać:

if ( strpos($template,"{mosloadposition ") === false ) {
echo $template;

} else {

// first get all the module load statements
$pattern = "/{mosloadposition (.*)}/U";
preg_match_all($pattern, $template, $matches);

// now parse each one
$tpl_out = $template;
foreach ( $matches[0] as $key=>$value ) {
$pos = strpos($tpl_out,$value);
$tpl_echo = substr($tpl_out,0,$pos);
$tpl_out = substr($tpl_out,$pos+strlen($value));
echo $tpl_echo;
if ( mosCountModules($matches[1][$key]) > 0 ) {
mosLoadModules($matches[1][$key],-2);
}
}
echo $tpl_out;

Nie pamiętam już gdzie to znalazłem ale najważniejsze, że działa! :)