Craft\SeomaticService::sanitizeMetaVars PHP Method

sanitizeMetaVars() public method

* -------------------------------------------------------------------------------- Sanitize the metaVars --------------------------------------------------------------------------------
public sanitizeMetaVars ( &$metaVars )
    public function sanitizeMetaVars(&$metaVars)
    {
        $seomaticMeta = $metaVars['seomaticMeta'];
        $seomaticSiteMeta = $metaVars['seomaticSiteMeta'];
        $seomaticIdentity = $metaVars['seomaticIdentity'];
        $seomaticSocial = $metaVars['seomaticSocial'];
        $seomaticCreator = $metaVars['seomaticCreator'];
        if (isset($metaVars['seomaticMainEntityOfPage'])) {
            $seomaticMainEntityOfPage = $metaVars['seomaticMainEntityOfPage'];
        }
        /* -- Set up the title prefix and suffix for the OpenGraph and Twitter titles */
        $titlePrefix = "";
        if ($seomaticSiteMeta['siteSeoTitlePlacement'] == "before") {
            $titlePrefix = $seomaticSiteMeta['siteSeoName'] . " " . $seomaticSiteMeta['siteSeoTitleSeparator'] . " ";
        }
        $titleSuffix = "";
        if ($seomaticSiteMeta['siteSeoTitlePlacement'] == "after") {
            $titleSuffix = " " . $seomaticSiteMeta['siteSeoTitleSeparator'] . " " . $seomaticSiteMeta['siteSeoName'];
        }
        if (isset($seomaticMeta['twitter'])) {
            $seomaticMeta['twitter']['title'] = $titlePrefix . $seomaticMeta['seoTitle'] . $titleSuffix;
        }
        if (isset($seomaticMeta['og'])) {
            $seomaticMeta['og']['title'] = $titlePrefix . $seomaticMeta['seoTitle'] . $titleSuffix;
        }
        /* -- Truncate seoTitle, seoDescription, and seoKeywords to recommended values */
        $titleLength = 0;
        if (craft()->config->get("truncateTitleTags", "seomatic")) {
            $titleLength = craft()->config->get("maxTitleLength", "seomatic");
            if ($seomaticSiteMeta['siteSeoTitlePlacement'] == "none") {
                $titleLength = $titleLength;
            } else {
                $titleLength = $titleLength - strlen(" | ") - strlen($seomaticSiteMeta['siteSeoName']);
            }
        }
        $descriptionLength = 0;
        if (craft()->config->get("truncateDescriptionTags", "seomatic")) {
            $descriptionLength = craft()->config->get("maxDescriptionLength", "seomatic");
        }
        $keywordsLength = 0;
        if (craft()->config->get("truncateKeywordsTags", "seomatic")) {
            $keywordsLength = craft()->config->get("maxKeywordsLength", "seomatic");
        }
        $vars = array('seoTitle' => $titleLength, 'seoDescription' => $descriptionLength, 'seoKeywords' => $keywordsLength);
        foreach ($vars as $key => $value) {
            if (isset($seomaticMeta[$key]) && $value) {
                $seomaticMeta[$key] = $this->truncateStringOnWord($seomaticMeta[$key], $value);
            }
        }
        /* -- Make sure all of our variables are properly encoded */
        $this->sanitizeArray($seomaticMeta);
        $this->sanitizeArray($seomaticSiteMeta);
        $this->sanitizeArray($seomaticIdentity);
        $this->sanitizeArray($seomaticSocial);
        $this->sanitizeArray($seomaticCreator);
        if (isset($metaVars['seomaticMainEntityOfPage'])) {
            $this->sanitizeArray($seomaticMainEntityOfPage);
        }
        $metaVars['seomaticMeta'] = $seomaticMeta;
        $metaVars['seomaticSiteMeta'] = $seomaticSiteMeta;
        $metaVars['seomaticIdentity'] = $seomaticIdentity;
        $metaVars['seomaticSocial'] = $seomaticSocial;
        $metaVars['seomaticCreator'] = $seomaticCreator;
        if (isset($metaVars['seomaticMainEntityOfPage'])) {
            $metaVars['seomaticMainEntityOfPage'] = $seomaticMainEntityOfPage;
        }
    }