Ответить Новая тема Новый опрос 
 1,4,4 Schema окно поиска для снипета
SDM
Новичок
Сообщений: 30
Регистрация: 11-01-2020


13-01-2021 07:15
преста 1,4,4,0

Помогите разобраться с проблемой. при разметке окна поиска для расширенного снипета, при добавлении строки
Код:
<meta itemprop="target" content="http://домен.ua/search?orderby=position&orderway=desc&search_query={search_term_string}"/>
в файл blocksearch-top.tpl сайт после перекомпиляции выпадает в ошибку 500

Руководствуюсь инструкцией https://developers.google.com/

Код:
<div itemscope itemtype="https://schema.org/WebSite">
  <meta itemprop="url" content="https://www.example.com/"/>
  <form itemprop="potentialAction" itemscope itemtype="https://schema.org/SearchAction">
    <meta itemprop="target" content="https://query.example.com/search?q={search_term_string}"/>
    <input itemprop="query-input" type="text" name="search_term_string" required/>
    <input type="submit"/>
  </form>
</div>


Все работает но как только в content= вставляю ссылку для вывода результатов поиска, сразу ошибка 500, то есть по логике ошибка в ссылке которую я ставлю, но сама ссылка через строку браузера
Код:
http://домен.ua/search?orderby=position&orderway=desc&search_query=
возвращает корректный результат.

Подскажите как поправись ситуацию?
 
Вне форума
ПМ 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


13-01-2021 14:48
Цитата:( SDM @ 13-01-2021 08:15 Смотреть сообщение )
Подскажите как поправись ситуацию?


Замените:
Код:
<meta itemprop="target" content="http://домен.ua/search?orderby=position&orderway=desc&search_query={search_term_string}"/>

на:
Код:
{literal}
<meta itemprop="target" content="http://домен.ua/search?orderby=position&orderway=desc&search_query={search_term_string}"/>
{/literal}
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
SDM
Новичок
Сообщений: 30
Регистрация: 11-01-2020


13-01-2021 17:04
Благодарю, почти получилось.

Код:
<div itemscope itemtype="https://schema.org/WebSite" id="search_block_top">
<meta itemprop="url" content="http://домен.ua/"/>
    <form itemprop="potentialAction" itemscope itemtype="https://schema.org/SearchAction" method="get" action="{$link->getPageLink('poisk.html')}" id="searchbox">
    {literal}<meta itemprop="target" content="http://домен.ua/search?orderby=position&orderway=desc&search_query={search_query}"/>{/literal}
        <p>
            <label for="search_query_top"><!-- image on background --></label>
            <input type="hidden" name="orderby" value="position" />
            <input type="hidden" name="orderway" value="desc" />
            <input itemprop="query-input" class="search_query" type="text" id="search_query_top" name="search_query" required placeholder="Я ищу ..." value="{if isset($smarty.get.search_query)}{$smarty.get.search_query|htmlentities:$ENT_QUOTES:'utf-8'|stripslashes}{/if}" />
            <input type="submit" name="submit_search" value="{l s='Search' mod='blocksearch'}" class="button" />
    </p>
    </form>
</div>


Но в проверке есть ошибка "http://schema.org/True (Свойство недопустимо для объекта типа PropertyValueSpecification.)"

И я заменил {search_term_string} на {search_query}, так как оно должно совпадать с name="search_query"

если ставлю как в инструкции name="search_term_string" поиск перестает работать.

Как это правильно допилить что бы в валидаторе все срослось без ошибок ?
 
Вне форума
ПМ 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
SDM
Новичок
Сообщений: 30
Регистрация: 11-01-2020


13-01-2021 17:16
Есть новые вводные.

Ошибку "http://schema.org/True (Свойство недопустимо для объекта типа PropertyValueSpecification.)"

показывает только если на проверку даешь часть кода <div>поиск</div> , но если проверять через ссылку на главную, то все норм., без ошибок и предупреждений.

Остаётся последний вопрос. Не повлияет ли замена {search_term_string} на {search_query} на поставленную цель, вывод строки поиска в снипет (понятно что гугл и так этого не гарантирует), но все же от инструкции отступил...
 
Вне форума
ПМ 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


13-01-2021 20:56
Цитата:( SDM @ 13-01-2021 18:16 Смотреть сообщение )
Остаётся последний вопрос. Не повлияет ли замена {search_term_string} на {search_query} на поставленную цель, вывод строки поиска в снипет (понятно что гугл и так этого не гарантирует), но все же от инструкции отступил...

Нет (не повлияет), подобные изменения разрешены.

Если невозможно подстроить код под систему микроразметки, попробуйте код в формате JSON-LD ( добавить код можно в header.tpl).
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Ответить Новая тема Новый опрос