Od początku mojej przygody z VirtueMart strasznie irytowała mnie wyświetlana przy produkcie nazwa producenta, po klieknięciu której wyskakuje okno z opisem rzeczonego wytwórcy sprzedawanego przedmiotu. W takiej sytuacji jedyną rozsądną opcją wydawało mi się usunięcie z szablonu kłopotliwego linka.
Rozwiązanie to jednak nie przekonało mnie do końca, bowiem nie chciałem rezygnować z samego wyświetlania nazwy producenta produktu. Wypadało więc nadać mu inną funkcję.
Po namyśle i przyjrzeniu się rozmaitym sklepom internetowym postanowiłem, ze po kliknięciu link, o którym mowa pojawi nam się strona z wszystkimi produktami przypisanymi do danego producenta. Poniżej pokażę sposób w jaki to osiągnąłem.
Zaczynamy od otwarcia pliku shop.product_details.php znajdującego się w katalogu /administrator/components/com_virtuemart/html. Następnie szukamy następującego kodu w okolicach linii 262 otwartego pliku.
// LINK TO MANUFACTURER POP-UP
$manufacturer_id = $ps_product->get_manufacturer_id($product_id);
$manufacturer_name = $ps_product->get_mf_name($product_id);
$manufacturer_link = "";
if( $manufacturer_id && !empty($manufacturer_name) ) {
$link = "$mosConfig_live_site/index2.php?page=shop.manufacturer_page&manufacturer_id=$manufacturer_id&output=lite&option=com_virtuemart&Itemid=".$Itemid;
$text = '( '.$manufacturer_name.' )';
$manufacturer_link .= vmPopupLink( $link, $text );
Zamieniamy go na następujący:
// LINK TO MANUFACTURER POP-UP
$manufacturer_id = $ps_product->get_manufacturer_id($product_id);
$manufacturer_name = $ps_product->get_mf_name($product_id);
$manufacturer_link = "";
if( $manufacturer_id && !empty($manufacturer_name) ) {
$link = "$mosConfig_live_site/index.php?option=com_virtuemart&page=shop.browse&manufacturer_id=$manufacturer_id&Itemid==".$Itemid;
$text = $manufacturer_name;
$manufacturer_link .= "<a href=\"$link\" title=\"$text\" >$text</a >";
Domo możecie zobaczyć na stronie: www.bramynapedy.eu
Super. Na pewno się przyda. Wielkie dzięki :-)
Super sprawa, na pewno skorzystam z tej opcji :). Martwi mnie jedno jeszcze tylko że po kliknięciu w link „zapytaj o produkt” nie wypełnia się samoistnie pole jak to bywało w starszych wersjach Virtu- jest na to jakiś sposób.
Pozdr Maciek
Maciek >> przyjrzę się temu problemowi i postaram się znaleźć rozwiązanie
Pozdrawiam
Solucja bardzo dobra, ale mam pytanie o zamianę linka tekstowego na graficzne logo. średnio u mnie z programowaniem ale myślę że będzie to wyglądało jeszcze lepiej. Da się coś takiego zrobić?
Super rozwiązanie – wielkie dzięki :)
Super sprawa Dawid. A możesz mi podpowiedzieć, jak zrobić, żeby po wyświetleniu listy produktów danego producenta pokazała mi się odpowiednia ilość produktów w wierszu (bo widzę na Twojej stronie demo, że to Ci się udało). W sklepie mam ustawione wyświetlanie trzech pozycji w wierszu a jak kliknę w producentów, i na końcu mam np. dwie pozycje, to wtedy kontenery mam rozciągnięte. Byłbym wdzięczny za podpowiedź.
Znalazłem rozwiązanie, tylko nie wiem, czemu tak się dzieje – jak mam w konfiguracji wybraną opcję na tabelach (produkty) to jak w pierwszym wierszu mam mniej niż 3 produkty, to się rozciągają równomiernie po połowie na szerokość strony (czego bym właśnie nie chciał), natomiast jak mam na divach wtedy nawet jak mam tylko dwa produkty w pierwszym wierszu mają prawidłową szerokość.
Witam,
myślę o stworzeniu strony dla księgarni internetowej. I chiałbym aby było tak że sa 2 rodzaje tych producentów. 1 to wydawcy a 2 to autorzy. Jak wkomponować coś takiego w VM ? Tzn. potrzebuję tak jakby 2 razy producentów :)
Hej, wiesz może jak to zrobić w VM 2? Dzięki
Dla VM2 jest sposób na to taki:
Szukasz pliku default.php w 'template/html/com_virtuemart/productdetails’ oszukujesz kod:
product->virtuemart_manufacturer_id . '&tmpl=component’, FALSE);
zamieniamy go na:
$link = JRoute::_(’index.php?option=com_virtuemart&view=category&virtuemart_manufacturer_id=’ . $this->product->virtuemart_manufacturer_id . ”, FALSE);
Potem odszukujemy:
u mnie Linia 160. Obok mamy link w postaci:
<a class="modal" rel="{handler: 'iframe', size: {x: 700, y: 550}}" href="”>
zmieniamy na:
<a href="”>
I powinno śmigać jak talala :)
Przefiltrowało część kodu, całość ładnie opisaną wrzuciłem na http://sulzycki.com.pl/klikamy-w-nazwe-producenta-vm2/
Witam, mógłby ktoś podać kod dla vm2
niestety nie mam takiej linijki:
product->virtuemart_manufacturer_id . ‚&tmpl=component’, FALSE
przeszukałem wszystkie pliki virtuemart i nigdzie nie występuje taka linijka…
U mnie VM 2.0.26d
Joomla 2.5.22
też niestety nie mam takiego kodu
w ogóle dziwny przypadek po kliknieciu w nazwę producenta wyskakuje pop-up – tam jest odnośnik do „wszystkich produktów producenta” po kliknięciu przenosi do pustej strony ale nie ma błędu, widać wszystko tylko w kontent jest pusty.
Może macie jakieś rozwiązanie? Przypuszczam że jest żle budowany url ale nie wiem jak do tego się zabrać? Jakiś kanoniczny błąd?
Na forach angielsko języcznych też szperałem ale jakby temat słabo rozwiązany tzn. w zasadzie brak rozwiązania.
Ja też mam taki problem, ktoś zna rozwiązanie?