Mikołaj222 Posted May 29, 2015 Share Posted May 29, 2015 Jak ustawić opis kategorii tylko na pierwszej stronie? Presta 1.4.4.1 tak wygląda mój plik category.tpl {if isset($category)} {if $category->id AND $category->active} <h1>{strip} {$category->name|escape:'htmlall':'UTF-8'} <span> {if $category->id == 1 OR $nb_products == 0}{l s='There are no products.'} {else} {if $nb_products == 1}{l s='There is'}{else}{l s='There are'}{/if} {$nb_products} {if $nb_products == 1}{l s='product.'}{else}{l s='products.'}{/if} {/if} </span>{/strip} </h1> {if $scenes} <!-- Scenes --> {include file="$tpl_dir./scenes.tpl" scenes=$scenes} {else} <!-- Category image --> {if $category->id_image} <div class="align_center"> <img src="{$link->getCatImageLink($category->link_rewrite, $category->id_image, 'category')}" alt="{$category->name|escape:'htmlall':'UTF-8'}" title="{$category->name|escape:'htmlall':'UTF-8'}" id="categoryImage" width="{$categorySize.width}" height="{$categorySize.height}" /> </div> {/if} {/if} {if $category->description} <!-- <div class="cat_desc">{$category->description}</div> --> {/if} {if isset($subcategories)} <!-- Subcategories --> <div id="subcategories"> <h3>{l s='Subcategories'}</h3> <ul class="inline_list"> {foreach from=$subcategories item=subcategory} <li> <a href="{$link->getCategoryLink($subcategory.id_category, $subcategory.link_rewrite)|escape:'htmlall':'UTF-8'}" title="{$subcategory.name|escape:'htmlall':'UTF-8'}"> {if $subcategory.id_image} <img src="{$link->getCatImageLink($subcategory.link_rewrite, $subcategory.id_image, 'medium')}" alt="" width="{$mediumSize.width}" height="{$mediumSize.height}" /> {else} <img src="{$img_cat_dir}default-medium.jpg" alt="" width="{$mediumSize.width}" height="{$mediumSize.height}" /> {/if} </a><br /> <a href="{$link->getCategoryLink($subcategory.id_category, $subcategory.link_rewrite)|escape:'htmlall':'UTF-8'}">{$subcategory.name|escape:'htmlall':'UTF-8'}</a> </li> {/foreach} </ul> <br class="clear"/> </div> {/if} {if $products} {include file="$tpl_dir./product-compare.tpl"} {include file="$tpl_dir./product-sort.tpl"} {include file="$tpl_dir./product-list.tpl" products=$products} {include file="$tpl_dir./product-compare.tpl"} {include file="$tpl_dir./pagination.tpl"} {elseif !isset($subcategories)} <p class="warning">{l s='There are no products in this category.'}</p> {/if} {elseif $category->id} <p class="warning">{l s='This category is currently unavailable.'}</p> {/if} {/if} Link to comment Share on other sites More sharing options...
0 vekia Posted May 30, 2015 Share Posted May 30, 2015 masz na myśli kategorie które są "głównymi", prawda? dla wszystkich podkategorii tych głównych chcesz ukryć opis? Link to comment Share on other sites More sharing options...
0 Mikołaj222 Posted June 1, 2015 Author Share Posted June 1, 2015 Jako główne mam w panelu pod nazwą produkt, których jest 6 i tam opis jest okej, bo jest tylko jedna podstrona, bez paginacji. Odpowiadając na pytanie to chyba tak, dla wszystkich podkategorii tych głównych chcę ukryć opis tak by się pojawiał tylko na pierwszej stronie paginacji. Jeszcze lepiej jakby mi ktoś pomógł wstawić rel next i prev, chociaż bez tego to już się obędę. Dzięki i pozdrawiam! Link to comment Share on other sites More sharing options...
0 vekia Posted June 2, 2015 Share Posted June 2, 2015 w tym wypadku należy zmodyfikować category.tpl nalezy tam dodać {if} condition, który sprawdzi głębokość kategorii, którą przeglądamy. i tak, kategoria o głębokości 3 jest tą "główną", kategorie z większą głębokością to podkategorie {if $category->level_depth <=3} // kod opisu {/if} w miejsce //kod opisu wstawiamy fragment category.tpl odpowiedzialny za opis Link to comment Share on other sites More sharing options...
0 wielkablaga Posted February 27, 2016 Share Posted February 27, 2016 Jak zmodyfikowac kod prestashop 1.6, aby opis kategorii pojawiał się tylko na pierwszej stronie paginacji? Link to comment Share on other sites More sharing options...
0 endriu107 Posted February 27, 2016 Share Posted February 27, 2016 W defaultowym szablonie podczas zmiany strony produkty są ładowane w locie bez przeładowania strony, więc nawet gdyby była taka możliwość to trzeba by albo wymusić przeładowanie strony albo dopisać coś co by ukryło opis. Link to comment Share on other sites More sharing options...
0 Daresh Posted February 28, 2016 Share Posted February 28, 2016 Takie wymogi spotkać można w audytach SEO Presty, bo dla zwykłych userów ukrywanie tego nie ma większego sensu, gdyż tak jak napisał kolega powyżej i tak jest to przeładowywane dynamicznie. Można zmodyfikować category.tpl, sprawdzić na jakiej stronie jesteśmy: {$currentPage = Tools::getValue('p')} I potem od tego uzależnić wyświetlenie opisu: {if $currentPage < 2} <div class="rte">{$category->description}</div> {/if} Link to comment Share on other sites More sharing options...
0 wielkablaga Posted February 29, 2016 Share Posted February 29, 2016 Właśnie pod względem SEO chciałam wypróbować tą opcję i zobaczyć, jaki będzie efekt. Dziękuję za podpowiedź Wypróbuję. Link to comment Share on other sites More sharing options...
0 quelo Posted July 20, 2016 Share Posted July 20, 2016 Witam. Przedstawione rozwiązanie działało mi w wersji 1.5, po aktualizacji do 1.6.1.6 znów opis kategorii pojawia się na każdej podstronie. Czy zna ktoś rozwiązanie tego problemu? Mój plik category.tpl wygląda tak: {include file="$tpl_dir./errors.tpl"} {if isset($category)} {if $category->id AND $category->active} {if $scenes || $category->description || $category->id_image} <div class="content_scene_cat"> {if $scenes} <div class="content_scene"> <!-- Scenes --> {include file="$tpl_dir./scenes.tpl" scenes=$scenes} {if $category->description} <div class="cat_desc rte"> {if Tools::strlen($category->description) > 2350} <div id="category_description_short">{$description_short}</div> <div id="category_description_full" class="unvisible">{$category->description}</div> <a href="{$link->getCategoryLink($category->id_category, $category->link_rewrite)|escape:'html':'UTF-8'}" class="lnk_more">{l s='More'}</a> {else} <div>{$category->description}</div> {/if} </div> {/if} </div> {else} <!-- Category image --> <div class="content_scene_cat_bg"{if $category->id_image} style="background:url({$link->getCatImageLink($category->link_rewrite, $category->id_image, 'category_default')|escape:'html':'UTF-8'}) right center no-repeat; background-size:cover; min-height:{$categorySize.height}px;"{/if}> {if $category->description} <div class="cat_desc"> <span class="category-name"> {strip} {$category->name|escape:'html':'UTF-8'} {if isset($categoryNameComplement)} {$categoryNameComplement|escape:'html':'UTF-8'} {/if} {/strip} </span> {if Tools::strlen($category->description) > 3350} <div id="category_description_short" class="rte">{$description_short}</div> <div id="category_description_full" class="unvisible rte">{$category->description}</div> <a href="{$link->getCategoryLink($category->id_category, $category->link_rewrite)|escape:'html':'UTF-8'}" class="lnk_more">{l s='More'}</a> {else} <div class="rte">{$category->description}</div> {/if} </div> {/if} </div> {/if} </div> {/if} <h1 class="page-heading{if (isset($subcategories) && !$products) || (isset($subcategories) && $products) || !isset($subcategories) && $products} product-listing{/if}"><span class="cat-name">{$category->name|escape:'html':'UTF-8'}{if isset($categoryNameComplement)} {$categoryNameComplement|escape:'html':'UTF-8'}{/if}</span>{include file="$tpl_dir./category-count.tpl"}</h1> {if isset($subcategories)} {if (isset($display_subcategories) && $display_subcategories eq 1) || !isset($display_subcategories) } <!-- Subcategories --> <div id="subcategories"> <p class="subcategory-heading">{l s='Subcategories'}</p> <ul class="clearfix"> {foreach from=$subcategories item=subcategory} <li> <div class="subcategory-image"> <a href="{$link->getCategoryLink($subcategory.id_category, $subcategory.link_rewrite)|escape:'html':'UTF-8'}" title="{$subcategory.name|escape:'html':'UTF-8'}" class="img"> {if $subcategory.id_image} <img class="replace-2x" src="{$link->getCatImageLink($subcategory.link_rewrite, $subcategory.id_image, 'medium_default')|escape:'html':'UTF-8'}" alt="" width="{$mediumSize.width}" height="{$mediumSize.height}" /> {else} <img class="replace-2x" src="{$img_cat_dir}{$lang_iso}-default-medium_default.jpg" alt="" width="{$mediumSize.width}" height="{$mediumSize.height}" /> {/if} </a> </div> <h5><a class="subcategory-name" href="{$link->getCategoryLink($subcategory.id_category, $subcategory.link_rewrite)|escape:'html':'UTF-8'}">{$subcategory.name|truncate:25:'...'|escape:'html':'UTF-8'}</a></h5> {if $subcategory.description} <div class="cat_desc">{$subcategory.description}</div> {/if} </li> {/foreach} </ul> </div> {/if} {/if} {if $products} <div class="content_sortPagiBar clearfix"> <div class="sortPagiBar clearfix"> {include file="./product-sort.tpl"} {include file="./nbr-product-page.tpl"} </div> <div class="top-pagination-content clearfix"> {include file="./product-compare.tpl"} {include file="$tpl_dir./pagination.tpl"} </div> </div> {include file="./product-list.tpl" products=$products} <div class="content_sortPagiBar"> <div class="bottom-pagination-content clearfix"> {include file="./product-compare.tpl" paginationId='bottom'} {include file="./pagination.tpl" paginationId='bottom'} </div> </div> {/if} {elseif $category->id} <p class="alert alert-warning">{l s='This category is currently unavailable.'}</p> {/if} {/if} Link to comment Share on other sites More sharing options...
0 endriu107 Posted July 20, 2016 Share Posted July 20, 2016 Strona ci sie przeładowuje czy produkty są wczytywane ajaxem? Link to comment Share on other sites More sharing options...
0 pirzol Posted July 20, 2016 Share Posted July 20, 2016 Strona ci sie przeładowuje czy produkty są wczytywane ajaxem? Jestem laikiem i prawdę mówiąc nie mam pojęcia czy strona wczytuje się ajaxem, czy się przeladowuje, może jeśli zerkniesz na stronę to będziesz to widział. Adres strony: lampa-lampy.pl. Zauważyłem, że we wcześniejszej wersji presty adres podstrony w kategoriach kończył się na "?p=2" a tutaj jest to tak "#/page-2" Link to comment Share on other sites More sharing options...
0 Daresh Posted July 20, 2016 Share Posted July 20, 2016 Skoro strona się nie odświeża tylko kręci się kółeczko i pojawiają produkty, to znaczy, że przeładowuje się ajaxem, więc opis zostaje. Link to comment Share on other sites More sharing options...
0 pirzol Posted July 20, 2016 Share Posted July 20, 2016 Skoro strona się nie odświeża tylko kręci się kółeczko i pojawiają produkty, to znaczy, że przeładowuje się ajaxem, więc opis zostaje. Dzięki za informację,a czy moglibyście jeszcze podpowiedzieć, gzie mogę to zmienić? Link to comment Share on other sites More sharing options...
0 Daresh Posted July 20, 2016 Share Posted July 20, 2016 Ale po co to zmieniać? Generalnie obecność modułu blocklayered wpływa na to dynamiczne odświeżanie się listy kategorii. Trzeba by grzebać w tym module lub go wyłączyć. Link to comment Share on other sites More sharing options...
0 pirzol Posted July 20, 2016 Share Posted July 20, 2016 Ale po co to zmieniać? Generalnie obecność modułu blocklayered wpływa na to dynamiczne odświeżanie się listy kategorii. Trzeba by grzebać w tym module lub go wyłączyć. Rozumiem po twojej odpowiedzi, że przy takim sposobie wczytywania podstron nie będzie występował problem z duplikacją treści. Dobrze zrozumiałem? Tego się obawiałem Link to comment Share on other sites More sharing options...
0 Daresh Posted July 20, 2016 Share Posted July 20, 2016 Moim zdaniem nie będzie, roboty raczej chodzą po sklepie bez javascriptu. Link to comment Share on other sites More sharing options...
0 pirzol Posted October 6, 2016 Share Posted October 6, 2016 Witam. W ostatnim czasie site naszej witryny (lampa-lampy.pl) zwiększył się prawie dwukrotnie poprzez zaindeksowanie w wynikach google m.in. wyniki sortowań po różnych parametrach, porzuconych koszyków zakupów itp., pomimo tego że są one blokowane w robots.txt. Wyświetlają się one w wynikach wyszukiwania z opisem: „wyświetlanie zablokowane w pliku robots.txt”. Czy zna ktoś sposób na niewyświetlanie tych wyników? Znalazłem jedną radę, ale kompletnie nie wiem gdzie mam dokonać takich zmian – „blokowanie stron poprzez znacznik metatag robots. Aby tego dokonać, należy nadpisać kontroler search i przekazać w nim do szablonu Smarty zmienną nobots ustawioną na TRUE. W tym przypadku należy pamiętać o usunięciu pliku cache/class_index.php” Drugi problem to duplikowanie metatytułów i metaopisów kategorii oraz producentów. Dla uniknięcia powielania treści na podstronach kategorii zastosowałem zmianę, która powoduje wyświetlanie opisu danej kategorii tylko na jej pierwszej stronie, kolejne są bez opisu. Jednak opisy „meta” są wszędzie identyczne i kolejne strony danej kategorii są zaindeksowane z powielanymi metatytułami i metaopisami. Czy można w jakiś sposób dopisać na przykład na ich początku odpowiednio „strona1” , „strona2” itd., tak żeby były zróżnicowane? Link to comment Share on other sites More sharing options...
0 piasek2000 Posted December 29, 2020 Share Posted December 29, 2020 Witam. Proszę o informację czy w standardowym szablonie Presty 1.7.6.5 nadal występuje duplikacja opisu kategorii przy stronicowaniu ? Kolejne strony kategorii indeksowane są w google jako strony nieprzesłane w mapie strony. Tak więc rozumiem że jak nie ma ich w mapie strony to nie powinny być indeksowane. Czy dobrze myślę ? Link to comment Share on other sites More sharing options...
Question
Mikołaj222
Jak ustawić opis kategorii tylko na pierwszej stronie? Presta 1.4.4.1 tak wygląda mój plik category.tpl
Link to comment
Share on other sites
17 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