Craft\SeomaticService::getWebSiteJSONLD PHP Method

getWebSiteJSONLD() public method

* -------------------------------------------------------------------------------- Get the WebSite JSON-LD --------------------------------------------------------------------------------
public getWebSiteJSONLD ( $metaVars, $locale )
    public function getWebSiteJSONLD($metaVars, $locale)
    {
        /* -- Cache it in our class; no need to fetch it more than once */
        if (isset($this->cachedWebSiteJSONLD[$locale])) {
            return $this->cachedWebSiteJSONLD[$locale];
        }
        $webSiteJSONLD = array();
        /* -- Settings generic to all Creator types */
        $webSiteJSONLD['type'] = "WebSite";
        $webSiteJSONLD['name'] = $metaVars['seomaticSiteMeta']['siteSeoName'];
        $webSiteJSONLD['description'] = $metaVars['seomaticSiteMeta']['siteSeoDescription'];
        $webSiteJSONLD['url'] = $this->getFullyQualifiedUrl(craft()->getSiteUrl());
        if (isset($metaVars['seomaticSiteMeta']['siteSeoImage'])) {
            $webSiteJSONLD['image'] = $metaVars['seomaticSiteMeta']['siteSeoImage'];
        }
        if (!empty($metaVars['seomaticSiteMeta']['siteLinksSearchTargets']) && $metaVars['seomaticSiteMeta']['siteLinksQueryInput']) {
            $targets = array();
            foreach ($metaVars['seomaticSiteMeta']['siteLinksSearchTargets'] as $target) {
                $targets[] = $target['searchtargets'];
            }
            $potentialAction = array("type" => "SearchAction", "target" => $targets, "query-input" => "required name=" . $metaVars['seomaticSiteMeta']['siteLinksQueryInput']);
            $webSiteJSONLD['potentialAction'] = $potentialAction;
        }
        $sameAs = array();
        array_push($sameAs, $metaVars['seomaticHelper']['twitterUrl']);
        array_push($sameAs, $metaVars['seomaticHelper']['facebookUrl']);
        array_push($sameAs, $metaVars['seomaticHelper']['googlePlusUrl']);
        array_push($sameAs, $metaVars['seomaticHelper']['linkedInUrl']);
        array_push($sameAs, $metaVars['seomaticHelper']['youtubeUrl']);
        array_push($sameAs, $metaVars['seomaticHelper']['youtubeChannelUrl']);
        array_push($sameAs, $metaVars['seomaticHelper']['instagramUrl']);
        array_push($sameAs, $metaVars['seomaticHelper']['pinterestUrl']);
        array_push($sameAs, $metaVars['seomaticHelper']['githubUrl']);
        array_push($sameAs, $metaVars['seomaticHelper']['vimeoUrl']);
        $sameAs = array_filter($sameAs);
        $sameAs = array_values($sameAs);
        if (!empty($sameAs)) {
            $webSiteJSONLD['sameAs'] = $sameAs;
        }
        $webSiteJSONLD['copyrightHolder'] = $metaVars['seomaticIdentity'];
        $webSiteJSONLD['author'] = $metaVars['seomaticIdentity'];
        $webSiteJSONLD['creator'] = $metaVars['seomaticCreator'];
        $result = array_filter($webSiteJSONLD);
        $this->cachedWebSiteJSONLD[$locale] = $result;
        return $result;
    }