function renderDisplayPreview($templateName = "", $forTemplate = "", $elementId = null, $locale = null)
{
$entryMeta = null;
if (!$locale) {
$locale = craft()->language;
}
if ($elementId) {
$element = craft()->elements->getElementById($elementId, null, $locale);
if ($element) {
$entryMeta = craft()->seomatic->getMetaFromElement($element);
if ($entryMeta) {
craft()->seomatic->setEntryMeta($entryMeta, $element->url);
}
}
}
$metaVars = craft()->seomatic->getGlobals($forTemplate, $locale);
/* -- Fudge the canonicalUrl for the preview */
if (!$entryMeta) {
$siteUrl = craft()->getSiteUrl();
if ($siteUrl[strlen($siteUrl) - 1] != '/' && $forTemplate) {
$siteUrl = $siteUrl + '/';
}
$fullUrl = $siteUrl . $forTemplate;
$metaVars['seomaticMeta']['canonicalUrl'] = $fullUrl;
if (isset($metaVars['seomaticMeta']['og'])) {
$metaVars['seomaticMeta']['og']['url'] = $fullUrl;
}
}
$result = craft()->seomatic->renderDisplayPreview($templateName, $metaVars);
return rtrim($result);
}