Chciałbym zrecenzować bardzo przydatną wtyczkę od mypresta.eu czyli Related Products Pro oraz wytknąć jej jeden błąd
Wtyczki znajdziecie tutaj https://mypresta.eu/pl/modules/funkcjonalnosci-sklepu/podobne-produkty-pro.html i jej cena jest bardzo dobra w stosunku do tego co oferuje. Ja najbardziej cenie ją sobie za możliwość wyświetlenia dowolnie wybranej ilości losowych produktów z dowolnej kategorii i wyświetlić je w każdym produkcie z wybranej kategorii. Brzmi zagmatwanie ale przykładowo wygląda to tak:
Mam kategorię krzeseł i chcę w każdym krześle wyświetlić np 8 losowych innych krzeseł z tej samej kategorii tak wtyczka pozwala zrobić to niespełna w minutę dla wszystkich krzeseł. Oczywiście da się zrobić własną listę produktów itp. Wszystkie funkcje opisane są na stronie wtyczki. Uważam ją za must-have dla każdego sklepu.
Jest tylko jeden minus który znacznie, ale to znacznie psuje odbiór tej wtyczki. Wtyczka działa świetnie gdy korzysta z list przygotowanych ręcznie, natomiast przy stosowaniu jej właśnie do wyświetlania losowych produktów z kategorii tak wtyczka zwalnia niemiłosiernie i czasy ładowania podstrony z produktem są stanowczo za długie. Wyświetlam tylko 8 produktów losowych, ponieważ zwiększanie ich ilości również odbija się na czasie ładowania podstrony.
Bardzo bym prosił aby twórca coś z tym zrobił, nie wiem - dodał jakieś dobowe cachowanie, nie wiem, cokolwiek. Może ładowanie produktów dopiero gdy znajdą się w viewporcie? Sam próbowałem coś wykombinować, ale prestę poznaję dopiero i średnio mi to idzie. Zgłaszałem problem już ponad miesiąc temu i rozumiem, że Vekia ma na prawdę dużo pracy, ale nie otrzymałem żadnej odpowiedzi. Źle to wpływa na SEO mojego sklepu. Wtyczki dodatkowo nie da się używać z żadnym z systemów cache'owania typu system plików itp - czas ładowania wtedy wynosi ponad 40 sekund i ze strony po prostu nie da się korzystać.
Tutaj screen prezentujący jak źle to wpływa na czasy ładowania poprzez tryb debugowania
+ ułatwia dodawanie podobnych lub powiązanych produktów
+ oszczędza czas pracowników
+ pozwala tworzyć mnóstwo różnych kombinacji
+ da się utworzyć kilka list które mają się wyświetlić na stronie produktów
+ cena
+ łatwość konfiguracji
+ ogrom funkcji dodatkowych
- czas działania funkcji losowego wyświetlania produktów
- brak cache
Ogólna ocena: 8 / 10
----------------------------------------
EDIT: po dosyć długim studiowaniu tego jak wtyczka działa sam poprawiłem sobie jej wydajność i mam nadzieję, że i Wam to pomoże:
zmieńcie funkcję getAllBlocksByPosition w modules\ppb\models\block.php na tą którą podałem tutaj i sprawdźcie czy wszystko śmiga u was dobrze.Ilość Queries spadła z 16 000 do 2000. Czas wykonywania skryptu z 8000 ms do 1000ms. Napisałem to autorowi i może to wprowadzi do swojej wersji. Uwaga - ja wykorzystuję wtyczkę tylko do wyświetlania podobnych produktów jeśli produkt znajduje się w danej kategorii.
public static function getAllBlocksByPosition($position) {
$context = new Context;
$context = $context->getContext();
$whereshop = '';
if (Configuration::get('PS_MULTISHOP_FEATURE_ACTIVE') == 1) {
$whereshop = 'AND shop="'.$context->shop->id.'"';
}
$id_lang = context::getContext()->cookie->id_lang;
$query = Db::getInstance()->ExecuteS('SELECT * FROM `'._DB_PREFIX_.'ppbp_block` WHERE block_position='.(string)$position.' AND active=1 AND (product ="'.(int)Tools::getValue('id_product').'" OR global_cat=1 OR global_man=1 OR global_prod=1 OR global_features=1) '.(string)$whereshop.' ORDER BY position');
$blocks = array();
foreach ($query as $key) {
if (in_array( $key['categories'], Product::getProductCategories((int)Tools::getValue('id_product')) )) {
$blocks[$key['id']] = new PpbBlock($key['id']);
$blocks[$key['id']]->name = $blocks[$key['id']]->name["$id_lang"];
$blocks[$key['id']]->custom_before = $blocks[$key['id']]->custom_before["$id_lang"];
}
}
return $blocks;
}
Question
hakeryk2
Witam,
Chciałbym zrecenzować bardzo przydatną wtyczkę od mypresta.eu czyli Related Products Pro oraz wytknąć jej jeden błąd
Wtyczki znajdziecie tutaj https://mypresta.eu/pl/modules/funkcjonalnosci-sklepu/podobne-produkty-pro.html i jej cena jest bardzo dobra w stosunku do tego co oferuje. Ja najbardziej cenie ją sobie za możliwość wyświetlenia dowolnie wybranej ilości losowych produktów z dowolnej kategorii i wyświetlić je w każdym produkcie z wybranej kategorii. Brzmi zagmatwanie ale przykładowo wygląda to tak:
Mam kategorię krzeseł i chcę w każdym krześle wyświetlić np 8 losowych innych krzeseł z tej samej kategorii tak wtyczka pozwala zrobić to niespełna w minutę dla wszystkich krzeseł. Oczywiście da się zrobić własną listę produktów itp. Wszystkie funkcje opisane są na stronie wtyczki. Uważam ją za must-have dla każdego sklepu.
Jest tylko jeden minus który znacznie, ale to znacznie psuje odbiór tej wtyczki. Wtyczka działa świetnie gdy korzysta z list przygotowanych ręcznie, natomiast przy stosowaniu jej właśnie do wyświetlania losowych produktów z kategorii tak wtyczka zwalnia niemiłosiernie i czasy ładowania podstrony z produktem są stanowczo za długie. Wyświetlam tylko 8 produktów losowych, ponieważ zwiększanie ich ilości również odbija się na czasie ładowania podstrony.
Bardzo bym prosił aby twórca coś z tym zrobił, nie wiem - dodał jakieś dobowe cachowanie, nie wiem, cokolwiek. Może ładowanie produktów dopiero gdy znajdą się w viewporcie? Sam próbowałem coś wykombinować, ale prestę poznaję dopiero i średnio mi to idzie. Zgłaszałem problem już ponad miesiąc temu i rozumiem, że Vekia ma na prawdę dużo pracy, ale nie otrzymałem żadnej odpowiedzi. Źle to wpływa na SEO mojego sklepu. Wtyczki dodatkowo nie da się używać z żadnym z systemów cache'owania typu system plików itp - czas ładowania wtedy wynosi ponad 40 sekund i ze strony po prostu nie da się korzystać.
Tutaj screen prezentujący jak źle to wpływa na czasy ładowania poprzez tryb debugowania
Przyśpieszyłem prawie dwukrotnie działanie wtyczki (redukcja z 8000ms na 4000ms) poprzez zastosowanie zmiany tego jak presta generuje losowość https://www.prestashop.com/forums/topic/515046-order-by-rand-in-categoryphp-is-pure-evil-way-to-optimize-rand-queries/
Podsumowując:
+ ułatwia dodawanie podobnych lub powiązanych produktów
+ oszczędza czas pracowników
+ pozwala tworzyć mnóstwo różnych kombinacji
+ da się utworzyć kilka list które mają się wyświetlić na stronie produktów
+ cena
+ łatwość konfiguracji
+ ogrom funkcji dodatkowych
- czas działania funkcji losowego wyświetlania produktów
- brak cache
Ogólna ocena: 8 / 10
----------------------------------------
EDIT: po dosyć długim studiowaniu tego jak wtyczka działa sam poprawiłem sobie jej wydajność i mam nadzieję, że i Wam to pomoże:
zmieńcie funkcję getAllBlocksByPosition w modules\ppb\models\block.php na tą którą podałem tutaj i sprawdźcie czy wszystko śmiga u was dobrze.Ilość Queries spadła z 16 000 do 2000. Czas wykonywania skryptu z 8000 ms do 1000ms. Napisałem to autorowi i może to wprowadzi do swojej wersji. Uwaga - ja wykorzystuję wtyczkę tylko do wyświetlania podobnych produktów jeśli produkt znajduje się w danej kategorii.
Edited by hakeryk2 (see edit history)Link to comment
Share on other sites
0 answers to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now