Leaderboard


Popular Content

Showing content with the highest reputation on 12/01/17 in Сообщения

  1. 1 point
    Где-то на втором часу попыток расписать разметку схемы в шаблоне, что бы и вложенность обеспечить и свои данные согласно макета разместить, я плюнул и реализовал сборку json-кода разметки в локальном модуле карточки и заброску его в шаблон.)))) Разборщики схемы понимают ее не только в виде тегов, но и в виде json-объектов. В разметке осталась только разметка крошек и блок о компании. А весь продукт внутри генератора карточки. Вот сам код сборки объекта (в данном случае в функции makeUserOperatios, там же собираются и всякие og-параметры и прочая дребедень для соцсеток, телеграмма и шары): $JSONLDL=array(); $JSONLDL['@context']='http://schema.org/'; $JSONLDL['@type']='Product'; $JSONLDL['name']=$form_data_shared['meta_h1']['value']; $JSONLDL['url']=$this->getServerFullUrl().'/'.Sitebill::getClearRequestURI(); $JSONLDL['description']=mb_substr(strip_tags($form_data_shared['text']['value']), 0, 200, 'utf-8'); $JSONLDL['image']=$this->getServerFullUrl().'/img/data/'.$form_data_shared['image']['image_array'][0]['normal']; $JSONLDL['offers']=array(); $JSONLDL['offers']['@type']='Offer'; if($form_data_shared['optype']['value']==2){ $JSONLDL['offers']['businessFunction']='Sell'; }elseif($form_data_shared['optype']['value']==1){ $JSONLDL['offers']['businessFunction']='LeaseOut'; } $JSONLDL['offers']['price']=$form_data_shared['price']['value']; $JSONLDL['offers']['priceCurrency']=$form_data_shared['currency_id']['value_string']; $JSONLDL['offers']['availableAtOrFrom']['@type']='Place'; $JSONLDL['offers']['availableAtOrFrom']['address']['@type']='PostalAddress'; $JSONLDL['offers']['availableAtOrFrom']['address']['addressCountry']=$form_data_shared['country_id']['value_string']; $JSONLDL['offers']['availableAtOrFrom']['address']['addressRegion']=$form_data_shared['region_id']['value_string']; $JSONLDL['offers']['availableAtOrFrom']['address']['addressLocality']=$form_data_shared['city_id']['value_string']; $this->template->assign('ldjson', json_encode($JSONLDL)); и вот так он внутри head-тега вставляется {if $ldjson!=''} <script type="application/ld+json">{$ldjson}</script> {/if}
  2. 1 point
    Примерно вот так бы это выглядело в плане вложенности в разметке. <div itemscope itemtype="http://schema.org/Product"> <div itemprop="name">Аренда квартир / 1-комн., Россия, Белгородская область, Белгород, Молодежная, 7 000 руб.</div> <div itemscope itemtype="http://schema.org/Offer"> <div itemprop="price" content="7000"> <div itemprop="priceCurrency" content="UAH"> </div> </div>
  3. 1 point
    Да. Вместе с рассылкой юзер получает и ссылку на отписку в переменной $results[r].decline_url Как она используется можно посмотреть в файле "\apps\mysearch\site\template\realty_grid.tpl" Точнее именно незарегистрированный ее получит, а зарегистрированный нет. Ему предлагается пойти в ЛК и там выключить.