склеивают что и как ? игнорят контент 301 или всасывают всё же ? как расставляют приоритеты ?
[имхо] для ПС 301 с несуществующего на данный момент адреса и с отдающей контент страницы две большие разницы - иначе и писали бы в рекомендациях то же самые, что и при простом "переезде урла". [/имхо]
а я не даю ответов 😂 я задаю впоросы, читайте внимательнее.
и вот основной (без обид): почему Вы считаете себя в этом вопросе умнее Гугла ? Вы лучше знаете внутреннюю кухню их ботов?
вполне согласен - это было одно из отступлений от MVC в Yii 1, таки вот что имеем в 2-ке:
кстати и про CClientScript успешно забыли теперь есссесссно, всё ушло в View.
ну ни на что не претендующий (!) ооочень неторопливо делающийся Yii2 app: http://xcook.ru/ в коде пока полный порядок, хотя и фишек особых нет.
основной layout:
<?phpuse yii\helpers\Html;use yii\widgets\Menu;use general\modules\Users;use general\widgets\Minify;use frontend\config\AppAsset;/** * */// menus$navbar = array( array( 'label' => Yii::t('site', 'X cook'), 'url' => array('/site/index'), ), array( 'label' => Yii::t('site', 'Cooking recipes'), 'url' => array('/recipes/default/index'),// 'active' => $this->context->module->id === 'recipes', ), array( 'label' => Yii::t('site.contact', 'Contacts'), 'url' => array('/site/contact'), ),);if (Yii::$app->user->isGuest){ $navbar[] = array( 'label' => Yii::t('app', 'Sign up'), 'url' => array('/users/default/signup'), ); $navbar[] = array( 'label' => Yii::t('app', 'Login'), 'url' => array('/users/default/login'), );}else{ $navbar[] = array( 'label' => Yii::t('app', 'Logout') . ' (' . Yii::$app->user->identity->username .')', 'url' => array('/users/default/logout'), );}// footer menu$footer = array( 'options' => array( 'class' => 'nav nav-pills', ), 'items' => array( array( 'label' => Yii::t('site', 'About'), 'url' => array( '/site/view', 'page' => 'about', ), ), array( 'template' => '<a class="icon-sitemap" href="#" onclick="window.open(\'//validator.w3.org/check?uri=http://' . $_SERVER['HTTP_HOST'] . Yii::$app->request->url . '\',\'_blank\')"></a>', ), ),);AppAsset::register($this);$this->beginPage(); ?><!doctype html><html class="no-js" lang="<?php echo Yii::$app->language ?>"><head><?php $this->head();?></head><body><?php $this->beginBody(); ?><div id="wrapper" class="container" <?php echo $this->schema->scope($this->schema->webpage); ?>><?php Minify::begin(); ?> <div role="main" itemprop="mainContentOfPage" ><?php echo $content; ?></div> <header role="banner" id="banner" > <nav role="navigation" class="navbar navbar-inverse" > <div class="navbar-inner shadow"> <?php echo Menu::widget(array( 'activateParents' => true, 'options' => array('class' => 'nav'), 'items' => $navbar, )); ?> </div> </nav> </header> <?php $this->breadcrumbs(array( 'homeLink' => false, 'options' => array( 'class' => 'breadcrumb', 'itemprop' => 'breadcrumb', ), )); ?> <footer role="contentinfo" class="clearfix" > <div class="wrapper"> <?php echo Menu::widget($footer); ?> <p>© <span itemprop="copyrightHolder">PPg Ltd.</span> <span itemprop="copyrightYear"><?php echo date('Y'); ?></span></p> <p><?php echo Yii::powered(); ?> Template by <a href="http://twitter.github.io/bootstrap/">Twitter Bootstrap</a></p> </div> </footer><?php Minify::end(); ?></div><?php $this->endBody(); ?></body></html><?php $this->endPage(); ?>
View ессено раcширен. по мне так вполне изяЧненько 😂 надо ещё поиграться с Twig и рендерами JS/CSS (что бы обусфикаторы с LESS-ом напрямую подключать)...
и чем же? и не будет ли это физически те же самые дубли просто теперь один с 200, а другой с 301 кодом возврата ;) ? ведь каждый из этих адресов по факту будет отдавать индексируемый контент. каноникал же - это прямой запрет индексации, в отличии от...
а вот так тупо стрелки переводить не надо 😂 а то получится, что все уважающие труд ассенизаторов - любители г*вна (с порнушниками аналогия обратная)...
ну если кто то вместо полной гарантий от "случайностей" изменением одного метатега понадеется на твоё очередное словоблудие - флаг ему в руки 😂 ...
о! тогда то же как верстальщик могу сказать, что генерируемый код можно привксти к любому, самому наиоптимизированному и суперкомпактному виду совсем небольшим количеством весьма разумных и понятных телодвижений. чес слово ;) а то "страхолюдство" которое заложено в дефолтных настройках работы компонентов имеет весьма веские резоны.
что есть в Yii и ещё больше в Yii2 - это внутренняя логика. один раз разобравшись с работой одного компонента, можно быть на 99% уверен, что другой имеет схожую структуру и настроится после этого влёт...
ЗЫ: а слегка расширив под себя дефолтный clientScript (именно и только он Вас так огорчил) можно реально очень изящно встраивать красивые фичи. а в Yii2 ещё универсальные всё получается...
просто юзеры по привычке смотрят на выдачу как на серп поисковой системы и офигивают, а яндексоиды давно там видят витрину своего агрегатора услуг рунета и балдеют....
+100 ☝ ждём гордых заявлений о том, что "примитивная Поисковя Система" для Яндекса это пройденный этап и сейчас идет становление нового супермегаинтелектуаплного сервиса "следующего поколения" 😂 "который все так ждали"...
усилия по окончательной "приватизации" рунетовского трафика ? конечно можно - это ж всего лишь бизнес, никакого Search Engines 😂 ...
более чем есть: карта из-за естественного переспама ключевиков в анкорах легко может "случайно" стать более релевантной по какому-нибудь НЧ/СЧ чем целевая. но тебя ж такие "мелочи" не интересуют 😂 ?
а "follow" при 250+ ссылках на html странице можно ждать ~годами, это не sitemap...