Jump to content

Powiązane produkty


tomala89

Recommended Posts

Katalog separator_breadcrumb.png Produkty separator_breadcrumb.png Edycja

 

Witam, mam problem z powiązanymi produktami.

Presta ładnie dodaje mi je ale nie wyświetla.

Są produkty w których się one wyświetlają ale są też i takie w których nie.

 

proszę o pomoc...

 

pozdrawiam

Tomasz

Edited by tomala89 (see edit history)
Link to comment
Share on other sites

  • 3 weeks later...

Dołączę sie do pytania - u mnie również produkty powiązane się nei wyświetlają. Na stronach produktów powiązanych pojawia się zakłądka "Zobacz też" ale jest pusto. Po usunięciu powiązania zakładka znika.

 

Tutaj przykład dwóch powiązanych produktów - jak widać zakłądka "Zobacz też" sie pojawiła.

 

http://prestashop.su...troller=product

http://prestashop.su...troller=product

 

Tutaj powinno być widoczne powiązanie - nie robiłem większych zmian w plikach tpl, zresztą po wrzuceniu oryginalnych katalogów katalogu modules oraz themes z paczki instalacyjnej w dalszym ciągu jest tak samo.

 

Być może coś źle robię? W edycji produktu klikam w opcję "Powiązania", wybieram docelową kategorię produktu, na dole wpisuję nazwe powiązanego produktu i klikam "Zapisz".

 

Po odinstalowaniu moduły dodającego zakładkę "Produkty powiązane" jest tak samo (zresztą przed jego instalacją też tak było). Czy ewentualnie istnieje jakiś moduł umożliwiający powiązanie produktu omijając ten niedziałający u mnie mechanizm Presty?

 

Bardzo prosze o pomoc

Link to comment
Share on other sites

  • 1 month later...

Niestety mam ten sam problem w 1.5.4.1 .

Przy okazji pytanie ;

Jak można zmienić nazwę zakładki "Opis" z cechami na inną nazwę ?

 

Pozdrawiam

Grzegorz

 

opis z cechami? O ile odbrze identyfikuję element to zrobisz to w lokalizacja > tłumaczenia

następnie wybierasz tłumaczenia front office, klikasz w polski język

i odnajdujesz to pole na liście dostępnych tłumaczeń

 

Chyba, że korzystasz z jakiegoś niestandardowego modułu który tworzy tę zakładkę.

 

witamy na forum, przy okazji proponuję następnym razem założyć osobny temat ;)

Link to comment
Share on other sites

  • 5 months later...

Witam i od razu przepraszam za odkopanie tematu ale może ktoś będzie szukać odpowiedzi. Jeśli nie wyświetlają Ci się powiązane produkty w zakładce "Zobacz też" to prawdopodobnie produktu nie można kupić. Sprawdź czy ilość tego produktu nie wynosi zero przypadkiem (lub czy można ten produkt kupić w ogóle). Jeśli chciałby ktoś, aby mimo braku towaru na stanie lub z innego powodu wyświetlały się wszystkie powiązane produkty to wystarczy usunąć z pętli accessories_list tego if'a:

{if ($accessory.allow_oosp || $accessory.quantity_all_versions > 0 || $accessory.quantity > 0) AND $accessory.available_for_order AND !isset($restricted_country_mode)}

  <!-- zawartość pozostawiamy -->

{/if}
Link to comment
Share on other sites

  • 1 month later...
  • 1 month later...

witam,

 

fakt znalazłem:

themes/TWOJ_SZABLON/product.tpl 

 

ale jak zmodyfikować style które tam są?

Obecnie mam czarne przyciski  zakładce "ZOBACZ TAKŻE", na których nie widać tekstu:

http://dosprawdzenia.pl/index.php?id_product=94913&controller=product#idTab4

 

Dodaj do styli (np. global.css lub do jakiegoś innego, który jest wczytywany na karcie produktów):

 

li.product_accessories_description .clearfix a {
  color: #fff;
}
Edited by msmw23 (see edit history)
Link to comment
Share on other sites

Mam jeszcze pytanie dotyczące smaego ułożenia towarów w "Zobacz też"

 

np. tutaj http://dosprawdzenia.pl/index.php?id_product=94943&controller=product#/rodzaj-zestaw_nici_ariadna_35_motków

 

śmiało można je ułozyć po 2 a nawet 3 w jednym wierszu.

 

Jak zedytować kod bo jak na niego patrzę to zaczynam powątpiewać czy znam php :)

 

Widzę tam listę w pętli....

<ul>
                    {foreach from=$accessories item=accessory name=accessories_list}
                        {if ($accessory.allow_oosp || $accessory.quantity_all_versions > 0 || $accessory.quantity > 0) AND $accessory.available_for_order AND !isset($restricted_country_mode)}
                            {assign var='accessoryLink' value=$link->getProductLink($accessory.id_product, $accessory.link_rewrite, $accessory.category)}
                            <li class="ajax_block_product{if $smarty.foreach.accessories_list.first} first_item{elseif $smarty.foreach.accessories_list.last} last_item{else} item{/if} product_accessories_description">
                                <p class="s_title_block">
                                    <a href="{$accessoryLink|escape:'htmlall':'UTF-8'}">{$accessory.name|escape:'htmlall':'UTF-8'}</a>
                                    {if $accessory.show_price AND !isset($restricted_country_mode) AND !$PS_CATALOG_MODE} - <span class="price">{if $priceDisplay != 1}{displayWtPrice p=$accessory.price}{else}{displayWtPrice p=$accessory.price_tax_exc}{/if}</span>{/if}
                                </p>
                                <div class="product_desc">
                                    <a href="{$accessoryLink|escape:'htmlall':'UTF-8'}" title="{$accessory.legend|escape:'htmlall':'UTF-8'}" class="product_image"><img src="{$link->getImageLink($accessory.link_rewrite, $accessory.id_image, 'medium_default')}" alt="{$accessory.legend|escape:'htmlall':'UTF-8'}" width="{$mediumSize.width}" height="{$mediumSize.height}" /></a>
                                    <div class="block_description">
                                        <a href="{$accessoryLink|escape:'htmlall':'UTF-8'}" title="{l s='More'}" class="product_description">{$accessory.description_short|strip_tags|truncate:400:'...'}</a>
                                    </div>
                                    <div class="clear_product_desc"> </div>
                                </div>
                                
                                <p class="clearfix" style="margin-top:5px">
                                    <a class="button_large" href="{$accessoryLink|escape:'htmlall':'UTF-8'}" title="{l s='View'}">{l s='View'}</a>
                                    {if !$PS_CATALOG_MODE && ($accessory.allow_oosp || $accessory.quantity > 0)}
                                    <a class="exclusive button ajax_add_to_cart_button" href="{$link->getPageLink('cart', true, NULL, "qty=1&id_product={$accessory.id_product|intval}&token={$static_token}&add")}" rel="ajax_id_product_{$accessory.id_product|intval}" title="{l s='Add to cart'}">{l s='Add to cart'}</a>
                                    {/if}
                                </p>
                                
                            </li>
                        {/if}
                    {/foreach}
</ul>
Link to comment
Share on other sites

 

Mam jeszcze pytanie dotyczące smaego ułożenia towarów w "Zobacz też"

 

np. tutaj http://dosprawdzenia.pl/index.php?id_product=94943&controller=product#/rodzaj-zestaw_nici_ariadna_35_motków

 

śmiało można je ułozyć po 2 a nawet 3 w jednym wierszu.

 

Jak zedytować kod bo jak na niego patrzę to zaczynam powątpiewać czy znam php :)

 

Widzę tam listę w pętli....

<ul>
                    {foreach from=$accessories item=accessory name=accessories_list}
                        {if ($accessory.allow_oosp || $accessory.quantity_all_versions > 0 || $accessory.quantity > 0) AND $accessory.available_for_order AND !isset($restricted_country_mode)}
                            {assign var='accessoryLink' value=$link->getProductLink($accessory.id_product, $accessory.link_rewrite, $accessory.category)}
                            <li class="ajax_block_product{if $smarty.foreach.accessories_list.first} first_item{elseif $smarty.foreach.accessories_list.last} last_item{else} item{/if} product_accessories_description">
                                <p class="s_title_block">
                                    <a href="{$accessoryLink|escape:'htmlall':'UTF-8'}">{$accessory.name|escape:'htmlall':'UTF-8'}</a>
                                    {if $accessory.show_price AND !isset($restricted_country_mode) AND !$PS_CATALOG_MODE} - <span class="price">{if $priceDisplay != 1}{displayWtPrice p=$accessory.price}{else}{displayWtPrice p=$accessory.price_tax_exc}{/if}</span>{/if}
                                </p>
                                <div class="product_desc">
                                    <a href="{$accessoryLink|escape:'htmlall':'UTF-8'}" title="{$accessory.legend|escape:'htmlall':'UTF-8'}" class="product_image"><img src="{$link->getImageLink($accessory.link_rewrite, $accessory.id_image, 'medium_default')}" alt="{$accessory.legend|escape:'htmlall':'UTF-8'}" width="{$mediumSize.width}" height="{$mediumSize.height}" /></a>
                                    <div class="block_description">
                                        <a href="{$accessoryLink|escape:'htmlall':'UTF-8'}" title="{l s='More'}" class="product_description">{$accessory.description_short|strip_tags|truncate:400:'...'}</a>
                                    </div>
                                    <div class="clear_product_desc"> </div>
                                </div>
                                
                                <p class="clearfix" style="margin-top:5px">
                                    <a class="button_large" href="{$accessoryLink|escape:'htmlall':'UTF-8'}" title="{l s='View'}">{l s='View'}</a>
                                    {if !$PS_CATALOG_MODE && ($accessory.allow_oosp || $accessory.quantity > 0)}
                                    <a class="exclusive button ajax_add_to_cart_button" href="{$link->getPageLink('cart', true, NULL, "qty=1&id_product={$accessory.id_product|intval}&token={$static_token}&add")}" rel="ajax_id_product_{$accessory.id_product|intval}" title="{l s='Add to cart'}">{l s='Add to cart'}</a>
                                    {/if}
                                </p>
                                
                            </li>
                        {/if}
                    {/foreach}
</ul>

 

To można ustawić w stylach css. Dodaj np. do pliku global.css


li.product_accessories_description {
  width: 350px; /* 350px - dwie kolumny, 240px - trzy kolumny */
}
Link to comment
Share on other sites

Dziękuję za ostatnie wskazówki dot. styli, które układają produkty w kolumnach.

 

Kolejne moje pytanie :)

 

Jak na ostatniej stronie podczas składania zamówienia ("Potwierdzenie zamówienie" - krok 5 u mnie -"Płatność")

 

Obok tekstów:

Twoje zamównie Gobelinek.com.pl zostało przyjęte
Wybrałeś płatność przy dostawie
Twoje zamówienie będzie wysłane wkrótce
W razie jakichkolwiek pytań prosimy o kontakt....

 

Wpisać nr zamówienia?

Który plik edytować?

Link to comment
Share on other sites

jeszcze mam pytanie o plik

/modules/mailalerts.php

 

Mianowicie w chwili składania zamówienia przez klienta chcę mu wysłać sms z informacjami.

 

W funkcji:

public function hookActionValidateOrder($params)

wstawiłem sobie kod php:

$this->fetchURL('http://api.promosms.pl/send.php?login=LOGIN&haslo=PASS&msg=Gobelinek.com.pl - zamowienie nr ID'.$order->id.' - '.$order->total_paid .'zl&to=123456789');

i dodałem w pliku funkcję:

public function fetchURL( $url ) {
	    $url_parsed = str_replace(' ','%20',parse_url($url));
	    $host = $url_parsed["host"];
	    $port = $url_parsed["port"];
	    if ($port==0)
	        $port = 80;
	    $path = $url_parsed["path"];
	    if ($url_parsed["query"] != "")
	        $path .= "?".$url_parsed["query"];

	    $out = "GET $path HTTP/1.0\r\nHost: $host\r\n\r\n";

	    $fp = fsockopen($host, $port, $errno, $errstr, 30);

	    fwrite($fp, $out);
	    $body = false;
	    while (!feof($fp)) {
	        $s = fgets($fp, 1024);
	        if ( $body )
	            $in .= $s;
	        if ( $s == "\r\n" )
	            $body = true;
	    }
	   
	    fclose($fp);
	   
	    return $in;
	}

W innym sklepie moim sklepie sms z tego się wysyła :)

 

W tym sklepie niestety nie. Dlaczego ?

 

Błędów i warningów nie ma.

Edited by gobelinek (see edit history)
Link to comment
Share on other sites

Witam,

potrzebuje pomocy... nie mogę znaleźć miejsca w którym mam poprzestawiać moje Powiązane produkty.

http://sklep.meblezrattanu.com.pl/krzesla-fotele-sofy/12-fotel-papasan-2301.html

 

Jest ich 6, chciałbym żeby były 2 wiersze po 3 produkty.

Chciałbym też dodać przycisk DO KOSZYKA.

 

Chodzi mi o te "górne" produkty, bo w dolnych nie mogę zrobić żęby sie same losowały, chyba że łatwiej będzie przerobić dolne...

 

Dzięki za podpowiedź.

Link to comment
Share on other sites

najpierw trzeba wyłączyć slider, chyba, że ma być włączony?

z plików php modułu usuń kod

		$this->context->controller->addJS($this->_path.'productscategory.js');
		$this->context->controller->addJqueryPlugin(array('scrollTo', 'serialScroll'));

(z funkcji: public function hookHeader($params))

Link to comment
Share on other sites

najpierw trzeba wyłączyć slider, chyba, że ma być włączony?

z plików php modułu usuń kod

		$this->context->controller->addJS($this->_path.'productscategory.js');
		$this->context->controller->addJqueryPlugin(array('scrollTo', 'serialScroll'));

(z funkcji: public function hookHeader($params))

usunąłem, niestety nie działą.

Link to comment
Share on other sites

usunąłem, niestety nie działą.

bo to nie wszystko, od tego trzeba zacząć ;)

teraz troche mi się "zamotało" w głowie,

 

zobacz, na Twoje jstronie są dwie sekcje: "pasujące lub podobne meble"

 

o którą chodzi? tą na samym dole, czy tą pierwszą zaraz pod opisem produktu?

Link to comment
Share on other sites

bo to nie wszystko, od tego trzeba zacząć ;)

teraz troche mi się "zamotało" w głowie,

 

zobacz, na Twoje jstronie są dwie sekcje: "pasujące lub podobne meble"

 

o którą chodzi? tą na samym dole, czy tą pierwszą zaraz pod opisem produktu?

I tu jest pies pogrzebany....

ta brzydka na górze losuje sama produkty i to jest bardzo dobre. Więc generalnie spełnia swoją funkcje, ale nie mogę zlokalizować styli od niej, żeby ją upiększyć.

 

ta ładna na dole nie losuje produktów, przy dodawaniu trzeba je dokładać ręcznie. Sklep na ten moment ma 400 produktów, planuje sie koło 3000 więc bedzie problem. Czyli jest piękna, ale nie spełnia swojej funkcji.

 

I teraz gdyby dało się "mieszanie" produktów dać do tej na dole to super ekstra.

Jeśli nie to musze wywalić tą ładną i w stylach przerobić tą brzydką.

Link to comment
Share on other sites

Witam,

czy możliwe jest wyświetlanie produktów według ich cech?

CZyli np.

Kupuje fotel oliwkowy, wykonany z rattanu i w stylu, chciałbym żeby z tej kategorii wyświetliły się tylko produkty które są w tym kolorze, stylu i wykonaniu?

 

Dzięki za podpowiedź

Link to comment
Share on other sites

  • 3 months later...

Witam

Mam problem z powiązanymi produktami. Problem polega na tym że co jakiś czas powstaje pusty prostokąt bez powiązanego produktu. Nie używam dodatkowego modułu tylko to co jest PS. Moja presta to 1.5.6.2 Jakieś sugestie?

 

pow.jpg

 

Link to comment
Share on other sites

  • 2 months later...

Tak to już działa, dziś pogrzebałem w plikach tpl.

 

Ale pojawił się kolejny . Produkt jest na stanie a pisze by podac email i powiadomienie. Podmiana modułu nic nie pomaga, aktualizacja także. To powiadomienie powinno pojawiać się przy produkcje którego stan jest 0 a nie na wszystkich.

 

screan.jpg

Link to comment
Share on other sites

Niestety Twoja podpowiedz nie zadziałała. Dalej to samo. Albo ja czegoś nie rozumiem.

Przeciez moduł mailalerts jest oryginalny od presty . Jak dla mnie brakuje jakiejs pętli if , ale jakiej ?

 

Jak mozesz podeslij działający czy poprawiony moduł sprawdzę. Czy ja nie mam racji czy ty ?

Link to comment
Share on other sites

  • 7 months later...

Witam, PrestaShop 1.5.6.1, W panelu administracyjnym próbuję dodać powiązania, w momencie wpisywania pierwszych liter pojawia się produkt, po kliknięciu na niego, pojawia się poniżej, że jest wybrany, jest też przy nim ikona kosza, ale po zapisie produktu powiązanie znika.

 

Ktoś może zna przyczynę? Miał ten problem?

Link to comment
Share on other sites

a masz wlaczony blok powiazanych? moze inaczej, czy masz w szablonie produktu w ogolr taba z powiazanymi?

 

produkty tej samej kateogrii to calkiem inna bajka, to calkiem inny modul (to ogolnie jest modul, a powiazane sa umeizsczone "na stale" w szalbonie karty produktu jako tab)

Link to comment
Share on other sites

Sklep był przenoszony do nowszej wersji. W starej to działało, teraz nie. W adminie wygląda, że wszystko jest ok., ustalam sobie te powiązane ale ich nigdzie na karcie danego produktu nie widzę. Na dodatek mam jakieś AKCESORIA, których ni jak nie mogę wykorzystać.

link do przykładowego artykułu. 

http://kasztanowa.com/pl/terapie-komplementarne/1054-ukryte-terapie-jerzy-zieba.html?search_query=ukryte&results=30

W powiązanych mam wybrane suplementy diety a na karcie wyświetlają się inne książki z tej samej kategorii.

Edited by niauoli (see edit history)
Link to comment
Share on other sites

a gdzie masz te "akcesoria"? bo to wlasnie sa produkty powiazane {$accessories}

 

patrzac pio linku wyglada to tak, jakby w szablonie brakowalo albo byl zakomendowany tab id="idTab4"  odpowaidajacy wlasnie za te akcesoria/powiazane produkty sprawdz sobie plik product.tpl szablonu co tam sie z tym tabem dzieje

Edited by design4VIP (see edit history)
Link to comment
Share on other sites

  • 2 weeks later...

Witam, PrestaShop 1.5.6.1, W panelu administracyjnym próbuję dodać powiązania, w momencie wpisywania pierwszych liter pojawia się produkt, po kliknięciu na niego, pojawia się poniżej, że jest wybrany, jest też przy nim ikona kosza, ale po zapisie produktu powiązanie znika.

 

Ktoś może zna przyczynę? Miał ten problem?

Niestety nadal z tym walcze, może ktoś napisać w jakiej tabeli są zapisywane te powiązania? Ewentualnie który plik odpowiada za zapis tych powiązań wpanelu administracyjnym?

 

e: #_accessory

 

ale jest pusta, ktoś może pomóc dlaczego nie zapisuje powiązanych?

 

e2: Sprawa rozwiązana

w pliku: classes/Product.php na oko w linii 3145, zapytanie:

$sql = 'SELECT p.`id_product`, p.`reference`, pl.`name`
				FROM `'._DB_PREFIX_.'accessory`
				LEFT JOIN `'._DB_PREFIX_.'product` p ON (p.`id_product`= `id_product_2`)
				'.Shop::addSqlAssociation('product', 'p').'
				LEFT JOIN `'._DB_PREFIX_.'product_lang` pl ON (
					p.`id_product` = pl.`id_product`
					AND pl.`id_lang` = '.(int)$id_lang.Shop::addSqlRestrictionOnLang('pl').'
				)
				WHERE `id_product_1` = '.(int)$id_product;

Trzeba dopisać do `id_product_2` nazwę tabely PREFIX_accessory, gdyż bez tego jest błąd sql id_product_2 jest dwuznaczny, czyli:

$sql = 'SELECT p.`id_product`, p.`reference`, pl.`name`
				FROM `'._DB_PREFIX_.'accessory`
				LEFT JOIN `'._DB_PREFIX_.'product` p ON (p.`id_product`= ps_accessory.`id_product_2`)
				'.Shop::addSqlAssociation('product', 'p').'
				LEFT JOIN `'._DB_PREFIX_.'product_lang` pl ON (
					p.`id_product` = pl.`id_product`
					AND pl.`id_lang` = '.(int)$id_lang.Shop::addSqlRestrictionOnLang('pl').'
				)
				WHERE `id_product_1` = '.(int)$id_product;
Edited by mudol (see edit history)
Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...