vad Posted September 18, 2013 Report Share Posted September 18, 2013 И связанный с этим вопрос по сео. Подскажите, страницы с отфильтрованными товарами должны быть неканоническими? Изначально (до добавления значения фильтров в аш1, тайтл и дескрипшин ) у меня все страницы с фильтрами указывались как неканонические по условию: {if strpos($smarty.server.REQUEST_URI, "?") == true} <link rel="canonical" href="http://mytest3308.zz.mu/catalog/{$cat->url}"/> {/if} После добавления значения фильтров в аш1, тайтл и дескрипшин, страницы с фильтрами уже не дубли. С одной стороны, это потенциальные страницы входа и закрывать их от индексации не нужно. С другой, их содержания иногда очень похожи или идентичны. Quote Link to post Share on other sites
dem0n Posted September 20, 2013 Author Report Share Posted September 20, 2013 Спасибо Mart, помогло. Для полного счастья добавил еще значения фильтров в h1 заголовок страницы. {* Заголовок страницы *} {if $keyword} {assign var=my1h1 value="Поиск `$keyword|escape`"} {elseif $page} {assign var=my1h1 value="`$page->name|escape`"} {else} {assign var=my1h1 value="`$category->name|escape` `$brand->name|escape`"} {/if} {*Добавляю значения фильтров в title и description*} {if $features} {assign 'mt' $meta_title} {assign 'md' $meta_description} {foreach $features as $f} {foreach $f->options as $o} {if $smarty.get.$f@key == $o->value} {assign var=mt value="`$mt` [`$f->name|cat`: `$o->value|cat`]"} {assign var=md value="`$md` `$f->name|cat`: `$o->value|cat`."} {* Фильтр в заголовок страницы *} {assign var=my2h1 value="`$my2h1``$f->name|cat`: `$o->value|cat`</br>"} {/if} {/foreach} {/foreach} {if $my2h1} {assign var=my2h1 value="</br>`$my2h1`"} {/if} {$meta_title = $mt scope=parent} {$meta_description = $md scope=parent} {/if} {* Вывод заголовка страницы *} <h1>{$my1h1}{$my2h1}</h1> Выглядит такСпасибо mart и vad помогло! По-моему идеальный вариант Quote Link to post Share on other sites
pedro Posted October 22, 2013 Report Share Posted October 22, 2013 А вот как с title быть:http://demo.simplacms.ru/catalog/mobilnye-telefonyhttp://demo.simplacms.ru/catalog/mobilnye-telefony/apple title одинаковые, а ведь можно было при заходе в http://demo.simplacms.ru/catalog/mobilnye-telefony/apple брать title из категории Apple, правда тогда возникнет дублирование с ссылками брендов. Quote Link to post Share on other sites
vad Posted October 24, 2013 Report Share Posted October 24, 2013 А вот как с title быть:http://demo.simplacms.ru/catalog/mobilnye-telefonyhttp://demo.simplacms.ru/catalog/mobilnye-telefony/apple title одинаковые, а ведь можно было при заходе в http://demo.simplacms.ru/catalog/mobilnye-telefony/apple брать title из категории Apple, правда тогда возникнет дублирование с ссылками брендов. По разному можно, я добавил такой код в индекс.тпл {* Если не продукт но с брендом *} {if ($product->id ==' ')&&($brand->id!=' ')} {*формируем title с добавлением $brand->name|escape *} <title>{$meta_title|escape} {$brand->name|escape} - купить в Моём Магазине.</title> {* также тут можно добавить бренд в deskription *} {/if} Quote Link to post Share on other sites
drakulitkas Posted May 14, 2014 Report Share Posted May 14, 2014 И связанный с этим вопрос по сео. Подскажите, страницы с отфильтрованными товарами должны быть неканоническими? Изначально (до добавления значения фильтров в аш1, тайтл и дескрипшин ) у меня все страницы с фильтрами указывались как неканонические по условию: {if strpos($smarty.server.REQUEST_URI, "?") == true} <link rel="canonical" href="http://mytest3308.zz.mu/catalog/{$cat->url}"/> {/if} После добавления значения фильтров в аш1, тайтл и дескрипшин, страницы с фильтрами уже не дубли. С одной стороны, это потенциальные страницы входа и закрывать их от индексации не нужно. С другой, их содержания иногда очень похожи или идентичны. Это в index.tpl прописывать? Quote Link to post Share on other sites
vad Posted May 14, 2014 Report Share Posted May 14, 2014 В produkts.tpl для бренда {if $brand} {if strpos($smarty.server.REQUEST_URI, "?") == true} <link rel="canonical" href="http://www.site.com.ua/brands/{$brand->url}"/> для категории {if $category} {if strpos($smarty.server.REQUEST_URI, "?") == true} <link rel="canonical" href="http://www.site.com.ua/catalog/{$cat->url}"/> Quote Link to post Share on other sites
acerus Posted September 10, 2014 Report Share Posted September 10, 2014 Спасибо Mart, помогло. Для полного счастья добавил еще значения фильтров в h1 заголовок страницы. {* Заголовок страницы *} {if $keyword} {assign var=my1h1 value="Поиск `$keyword|escape`"} {elseif $page} {assign var=my1h1 value="`$page->name|escape`"} {else} {assign var=my1h1 value="`$category->name|escape` `$brand->name|escape`"} {/if} {*Добавляю значения фильтров в title и description*} {if $features} {assign 'mt' $meta_title} {assign 'md' $meta_description} {foreach $features as $f} {foreach $f->options as $o} {if $smarty.get.$f@key == $o->value} {assign var=mt value="`$mt` [`$f->name|cat`: `$o->value|cat`]"} {assign var=md value="`$md` `$f->name|cat`: `$o->value|cat`."} {* Фильтр в заголовок страницы *} {assign var=my2h1 value="`$my2h1``$f->name|cat`: `$o->value|cat`</br>"} {/if} {/foreach} {/foreach} {if $my2h1} {assign var=my2h1 value="</br>`$my2h1`"} {/if} {$meta_title = $mt scope=parent} {$meta_description = $md scope=parent} {/if} {* Вывод заголовка страницы *} <h1>{$my1h1}{$my2h1}</h1> Выглядит так а у меня что-то не заработало (( в products.tpl добавил, 0 внимания, все как было так и осталось. Что должно быть в index.tpl в тайтле прописано чтобы это заработало? Quote Link to post Share on other sites
vad Posted September 10, 2014 Report Share Posted September 10, 2014 (edited) Возможно код попадает под какое то условие в products.tpl В index.tpl - тайтл выводится из {$meta_title|escape} . Он туда копируется "{$meta_title = $mt scope=parent}" P/S Если речь идет о сайте http://3000v.ru то у Вас фильтр нестандартный. Обращайтесь к разработчику. Edited September 10, 2014 by vad Quote Link to post Share on other sites
Milanych Posted December 18, 2015 Report Share Posted December 18, 2015 По разному можно, я добавил такой код в индекс.тпл {* Если не продукт но с брендом *} {if ($product->id ==' ')&&($brand->id!=' ')} {*формируем title с добавлением $brand->name|escape *} <title>{$meta_title|escape} {$brand->name|escape} - купить в Моём Магазине.</title> {* также тут можно добавить бренд в deskription *} {/if} У меня от этого кода возвращает 500 ошибку. Так и не понял как убрать дублирование при формировании тайтла в Категория + Бренд. Есть у кого дельный совет? Quote Link to post Share on other sites
vad Posted December 18, 2015 Report Share Posted December 18, 2015 Нужно в тайтл страницы "Категория + Бренд" добавить название бренда, например. Предполагаю что название категории там уже присутствует. Quote Link to post Share on other sites
Milanych Posted December 19, 2015 Report Share Posted December 19, 2015 (edited) Нужно в тайтл страницы "Категория + Бренд" добавить название бренда, например. Предполагаю что название категории там уже присутствует. так страница "Категория + Бренд" автоматом генерируется, есть мысли, куда и что надо добавить, чтобы было корректно? upd: решил добавлением в индекс конструкции {if $category->brands !=''} <title>{$meta_title|escape} {$brand->name}</title> {else} <title>{$meta_title|escape}</title> {/if} Edited December 19, 2015 by Milanych Quote Link to post Share on other sites
snagovskiy Posted January 14, 2017 Report Share Posted January 14, 2017 У меня так {if $current_page_num == 1} <title>{$meta_title|escape}</title> <meta name="description" content="{$meta_description|escape}" /> {elseif $current_page_num > 1} <title>{$meta_title|escape}, страница {$current_page_num}</title> <meta name="description" content="{$meta_description|escape}, страница {$current_page_num}" /> {else} <title>{$meta_title|escape}</title> <meta name="description" content="{$meta_description|escape}" /> {/if} По поводу 5 знаков - спорное утверждение, поскольку ошибки в панели ВМ отваливаются с этими изменениями Это работает, но вопрос как сделать чтобы у страниц с окончанием &page=all которые выводятся по ссылке "показать все" так же показывался уникальный тайтл с припиской допустим "все страницы".... Подскажите пожалуйста! Quote Link to post Share on other sites
Noxter Posted January 14, 2017 Report Share Posted January 14, 2017 Это работает, но вопрос как сделать чтобы у страниц с окончанием &page=all которые выводятся по ссылке "показать все" так же показывался уникальный тайтл с припиской допустим "все страницы".... Подскажите пожалуйста!{if $page == 'all'}...{/if} Quote Link to post Share on other sites
snagovskiy Posted January 14, 2017 Report Share Posted January 14, 2017 {if $page == 'all'}...{/if} Noxter спасибо! Но что то не робит.... Я прописал так {if $current_page_num == 1} <title>{$meta_title|escape}</title> <meta name="description" content="{$meta_description|escape}" /> {elseif $current_page_num > 1} <title>{$meta_title|escape}, страница {$current_page_num}</title> <meta name="description" content="{$meta_description|escape}, страница {$current_page_num}" /> {elseif $page == 'all'} <title>{$meta_title|escape}, все страницы</title> <meta name="description" content="{$meta_description|escape}, все страницы" /> {else} <title>{$meta_title|escape}</title> <meta name="description" content="{$meta_description|escape}" /> {/if} Quote Link to post Share on other sites
Noxter Posted January 14, 2017 Report Share Posted January 14, 2017 Попробуйте $smarty.get.page вместо $page Quote Link to post Share on other sites
snagovskiy Posted January 14, 2017 Report Share Posted January 14, 2017 Попробуйте $smarty.get.page вместо $pageТоже самое... Не работает https://www.stopnikotin.ru/shop.html?divider=1314875691&page=all Quote Link to post Share on other sites
ahmed Posted January 14, 2017 Report Share Posted January 14, 2017 Пробуйте в другом порядке {if $smarty.request.page == 'all'}...{elseif $current_page_num == 1}...{elseif $current_page_num > 1}...{else}...{/if} Quote Link to post Share on other sites
snagovskiy Posted January 14, 2017 Report Share Posted January 14, 2017 Пробуйте в другом порядке {if $smarty.request.page == 'all'}...{elseif $current_page_num == 1}...{elseif $current_page_num > 1}...{else}...{/if} ahmed спасибо! Это сработало! {if $smarty.request.page == 'all'} <title>{$meta_title|escape}, все страницы</title> <meta name="description" content="{$meta_description|escape}, все страницы" /> {elseif $current_page_num == 1} <title>{$meta_title|escape}</title> <meta name="description" content="{$meta_description|escape}" /> {elseif $current_page_num > 1} <title>{$meta_title|escape}, страница {$current_page_num}</title> <meta name="description" content="{$meta_description|escape}, страница {$current_page_num}" /> {else} <title>{$meta_title|escape}</title> <meta name="description" content="{$meta_description|escape}" /> {/if} Quote Link to post Share on other sites
usmdamir Posted November 20, 2017 Report Share Posted November 20, 2017 ahmed спасибо! Это сработало! {if $smarty.request.page == 'all'} <title>{$meta_title|escape}, все страницы</title> <meta name="description" content="{$meta_description|escape}, все страницы" /> {elseif $current_page_num == 1} <title>{$meta_title|escape}</title> <meta name="description" content="{$meta_description|escape}" /> {elseif $current_page_num > 1} <title>{$meta_title|escape}, страница {$current_page_num}</title> <meta name="description" content="{$meta_description|escape}, страница {$current_page_num}" /> {else} <title>{$meta_title|escape}</title> <meta name="description" content="{$meta_description|escape}" /> {/if} у меня это не работает. {if $current_page_num > 1} {if $keyword}{$meta_title='Поиск '|cat:$keyword scope=parent} {elseif $page}{$meta_title=$page->name|cat:' | Страница '|cat:$current_page_num scope=parent} {elseif $category}{$meta_title=$category->meta_title|cat:' | Страница '|cat:$current_page_num scope=parent} {elseif $brand}{$meta_title=$brand->meta_title|cat:' | Страница '|cat:$current_page_num scope=parent} {elseif $page}{$meta_title=$page->name|cat:' | Все '|cat:$current_page_all scope=parent} {/if} {/if} это работает. не могу разобраться как для всех страниц сделать title когда ?page=all http://ses-creative.ru/catalog/termomozaika Quote Link to post Share on other sites
usmdamir Posted November 20, 2017 Report Share Posted November 20, 2017 {if $smarty.request.page == 'all'} {if $keyword}{$meta_title='Поиск '|cat:$keyword scope=parent} {elseif $page}{$meta_title=$page->name|cat:' | Все '|cat:$current_page_num scope=parent} {elseif $category}{$meta_title=$category->meta_title|cat:' | Все '|cat:$current_page_num scope=parent} {elseif $brand}{$meta_title=$brand->meta_title|cat:' | Все '|cat:$current_page_num scope=parent} {/if} {/if} вот примерно так - работает. Quote Link to post Share on other sites
Morfeus Posted February 18, 2020 Report Share Posted February 18, 2020 Добрый день, какое решение все таки убрать дубли Title в фильтрах? Написано много информации и не понятно решена проблема? Прописать код из последнего поста в products.tpl? Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.