2017-02-17 34 views
1

Я пытаюсь найти правильный способ установки endDate в Schema.org SaleEvent.Могу ли я установить endDate на n/a в Schema.org SaleEvent?

Прямо сейчас это то, что я делаю, но мне интересно, правильно ли это? Я на самом деле все еще жду, пока Google покажет эти результаты, поэтому я не могу проверить, работает ли это еще.

<script type="application/ld+json"> 
{ 
    "@context": "http://schema.org", 
    "@type": "SaleEvent", 
    "name": "<?=$obj->title;?>", 
    "url": "<?=$fun_domain.'/'.$fun_shop_page.'/'.$shop_slug;?>", 
    "startDate": "<?=date("Y-m-d",$obj->ctime);?>", 
    <?if(!empty($obj->expiredate)){echo'"endDate": "'.date("Y-m-d",$obj->expiredate).'",';}?> 
    "location": { 
     "@type": "Place", 
     "name": "<?=$shop_name;?>", 
     "url": "<?=$shop_home_url;?>", 
     "address": "<?=$shop_name;?>" 
    } 
} 
</script> 

ответ

2

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

+0

Хорошо, просто хотел узнать, есть ли другой «правильный» способ сделать это. – Anders

+0

На самом деле не работает с теми, у которых нет даты истечения срока действия, Google только начал показывать события продажи в результатах поиска сегодня, но не те, у кого нет даты истечения срока действия. – Anders

+0

@Anders. Богатые фрагменты Google являются полностью отдельными тему для raw schema.org. Я предлагаю вам взглянуть на документацию Google на конкретные расширенные фрагменты, которые вы хотите показать. Этот schema.org соответствует спецификации, но может и не быть тем, чего хочет Google. Это зависит от Google. – grgarside