Kratech

Рейтинг
19
Регистрация
26.04.2017


$cntrName = (!is_null(getUrlSegment(0))) ? 'main' : getUrlSegment(0);
$actionName = (!is_null(getUrlSegment(1))) ? 'action_index' : 'action_'.getUrlSegment(1);

Это так и задумано? В переменные всегда будет попадать null, если в URL нет ни одного сегмента. Если есть, то попадут 'main' и 'action_index' соответственно.

Попробуйте знаки восклицания убрать перед is_null. Ещё приятнее, на мой взгляд, так:


$cntrName = getUrlSegment(0) ?? 'main';
$action = getUrlSegment(1) ?? 'index';
$actionName = "action_{$action}";

В шаблоне продукта, там же, откуда Вы эту микроразметку взяли, оборачиваете её в условие IF ($review_count). Если данная переменная (подразумевается, что в ней лежит целочисленное значение, количество отзывов) не равна нулю, то разметка внутри условия будет выведена.

<?php if ($review_count): ?>

<meta itemprop="ratingValue" content="<?= $rating ?>">
<meta itemprop="worstRating" content="<?= $worst_rating ?>">
<meta itemprop="bestRating" content="<?= $best_rating ?>">
<meta itemprop="reviewCount" content="<?= $review_count ?>">
<?php endif; ?>

В $review_count что лежит?

Насколько я понял, рейтинг должен на чём-то основываться: либо просто на количестве голосов (ratingCount), либо на количестве отзывов (reviewCount).

Если рейтинг продукта у Вас основан на голосах, а не на отзывах, то нужно использовать itemprop="ratingCount" вместо itemprop="reviewCount". И, разумеется, значение не должно быть нулевым. Могу заблуждаться.

Если рейтинг у конкретного продукта вообще отсутствует, выводить микроразметку, опять же, как я понял, не надо.

<?php if ($rating && ($review_count || $rating_count)): ?>

<meta itemprop="ratingValue" content="<?= $rating ?>">
<meta itemprop="worstRating" content="<?= $worst_rating ?>">
<meta itemprop="bestRating" content="<?= $best_rating ?>">

<?php if ($review_count): ?>
<meta itemprop="reviewCount" content="<?= $review_count ?>">
<?php elseif ($rating_count): ?>
<meta itemprop="ratingCount" content="<?= $rating_count ?>">
<?php endif; ?>
<?php endif; ?>

Примерно так это выглядит с использованием библиотеки jQuery:


$.get( "www.site.ru/menu_top.html", function(result) {
$("#menu").html(result);
});

Где #menu — элемент с ID 'menu', внутрь которого будет вставлен результат запроса.

Если требуется вставлять большой и самодостаточный HTML, то лучше добавить в вышеуказанный код AJAX-запрос. В jQuery уже есть готовая функция для этого.

Макет будет запрошен с сервера по определённому URL, например, www.site.ru/menu_top.html. Полученную HTML-разметку можно будет вставить в любое место на странице. Этого Вы хотите?

Arsh:
Зачем? Какие плюсы?

Видимо, затем, чтобы уменьшить размер страницы :) Хоть это и капля в море.

Стили внутри комментариев будут использованы, если пользователь сидит с IE (любой версии), IE 6 или IE 7. Если последние две категории олдфагов вас не волнуют, то можно удалять.

ru.wikipedia.org/wiki/Условный_комментарий

Зачем я хочу делать перенос?
Мне нужна мобильная версия сайта, а на таком сайте какой есть ее нет, гугл его понизил в выдаче из-за того что не оптимизирован под мобильные устройства трафик просел в 3 раза(((

также хочу установить сертификат шифрования https://
Хочу сделать адаптивный дизайн. чтоб для мобилок и планшетов было ок.
Для меня важно, чтоб при переносе сайта на движок не потерять позиции ключей, которые есть в топе!!!

Если это действительно всё, что Вам нужно, то менять движок не вижу особой необходимости. Вёрстку сменить на адаптивную — и вот Вам "оптимизированный под мобильные устройства" сайт безо всяких редиректов и проседаний.

С другой стороны, если проект сколько-нибудь серьёзный и планирует расти, то я бы сейчас позаботился и принял новую структуру сайта. С разделами, подразделами и безо всяких .php на конце.

Single-Page Application планируете?

Здесь дело в браузере, по-моему. В Chrome все главные страницы открываются без слешей. В IE наоборот.

12
Всего: 20