2017-11-16 22 views
0

JSON-LD 구조화 된 데이터를 WordPress WooCommerce 사이트에 추가하여 검색 엔진 결과 페이지에서 리치 스 니펫 기회를 늘리고 싶습니다.JSON-LD에 WordPress PHP 태그를 포함하려면 어떻게해야합니까?

먼저 제품 페이지에 추가하고 싶습니다.

내가 헤더 shop.php에서 아래의 코드를 포함 한 경우

...

<!-- Include Schema Markup File 
–––––––––––––––––––––––––––––––––––––––––––––––––– --> 
<?php include('json-ld.php'); ?><script type="application/ld+json"><?php echo json_encode($payload); ?></script> 

은 내가 어떻게 JSON-ld.php 파일 내에 <php the_title(); ?> 같은 PHP 태그를 참조 할 수 있습니까?

다음과 같이 간단합니까?

<script type="application/ld+json"> 
{ 
    "@context": "http://schema.org/", 
    "@type": "Product", 
    "name": "<?php the_title(); ?>", 
    "image": [ 
    "https://example.com/photos/1x1/photo.jpg", 
    "https://example.com/photos/4x3/photo.jpg", 
    "https://example.com/photos/16x9/photo.jpg" 
    ], 
    "brand": { 
    "@type": "Thing", 
    "name": "ACME" 
    }, 
    "aggregateRating": { 
    "@type": "AggregateRating", 
    "ratingValue": "4.4", 
    "ratingCount": "89" 
    }, 
    "offers": { 
    "@type": "AggregateOffer", 
    "lowPrice": "119.99", 
    "highPrice": "199.99", 
    "priceCurrency": "USD" 
    } 
} 
</script> 
+0

원하는 모든 데이터로 PHP 배열/개체를 만드는 것이 좋습니다. 그런 다음'json_encode'를 사용하여 축소 된 JSON을 렌더링하십시오. 또한'wp_head' 훅을 사용하십시오. WP 태그에 관한 모든 the_' 태그에는'get_the_' 버전이 있습니다. WP 기능을 검사하면 어떤 기능이 호출되는지 확인할 수 있습니다. –

+0

응답 @ Maxwells.c에 감사드립니다! PHP 배열을 어디에 둘까요? json-ld.php에? 자바 스크립트 태그 안에? 아니면 그들 밖에? 아니면 javascript 태그/스크립트가 필요하지 않은가요? 출력이 제대로 JSON-LD로 렌더링되도록하려면 어떻게해야합니까? 그리고 정확히 무엇이 필요할까요? 태그들? 그리고/또는 get_the_ 함수와 태그를 사용해야합니까? 제안하고있는 코드 예제를 포함 할 수있는 방법이 있습니까? – Shane

+0

많은 질문이 있습니다. 우선 JSON-LD 플러그인 (https://wordpress.org/plugins/wp-structuring-markup/)을 살펴보고 문제가 해결되는지 확인하십시오. 'get_the_' 함수에 관해서는 데이터를 출력하지 않고 그냥 데이터를 얻고 싶을 때 사용합니다. 플러그인을 확인한 후 내가 원하는 것을 설명 할 수 있습니다. –

답변

1

페이지에서 인쇄하려면이 작업을 수행 할 수 있습니다. 스크립트를 전부 에코함으로써 인라인 함수를 concat 할 수 있습니다.

echo ' 
<script type="application/ld+json"> 
{ 
    "@context": "http://schema.org/", 
    "@type": "Product", 
    "name": "'. the_title() .'", 
    "image": [ 
    "https://example.com/photos/1x1/photo.jpg", 
    "https://example.com/photos/4x3/photo.jpg", 
    "https://example.com/photos/16x9/photo.jpg" 
    ], 
    "brand": { 
    "@type": "Thing", 
    "name": "ACME" 
    }, 
    "aggregateRating": { 
    "@type": "AggregateRating", 
    "ratingValue": "4.4", 
    "ratingCount": "89" 
    }, 
    "offers": { 
    "@type": "AggregateOffer", 
    "lowPrice": "119.99", 
    "highPrice": "199.99", 
    "priceCurrency": "USD" 
    } 
} 
</script> 
'; 
+0

이것은 훌륭하게 간단합니다! 고마워요 @ProEvilz! – Shane