Я вставляю гибкий шаблон в качестве элемента контента где-нибудь на странице, содержащей плагин facebook (developers.facebook.com) ... этот плагин требует, чтобы SDK загружался один раз сразу после открывающего тега <body>
.
Я могу включить SDK на каждой странице с помощью следующего кода:
page {
bodyTagCObject.stdWrap.append = TEXT
bodyTagCObject.stdWrap.append.value (
<div id="fb-root"></div>
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_Us/sdk.js#xfbml=1&version=v2.9";fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
)
}
Но я хотел бы вставить его только тогда, когда элемент содержимого вставлен, может быть, с помощью пользовательского помощника просмотра, или, может быть, существующий помощник просмотра мог бы выполнить эту работу...
это гибкий шаблон (переменная 'facebook' является константой, содержащей соответствующий URL-адрес):
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers"
data-namespace-typo3-fluid="true">
<div class="fb-page"
data-href="{facebook}"
data-tabs="timeline"
data-small-header="false"
data-adapt-container-width="true"
data-hide-cover="false"
data-show-facepile="true">
<blockquote cite="{facebook}" class="fb-xfbml-parse-ignore">
<a href="{facebook}">{facebook}</a>
</blockquote>
</div>
</html>
Я пробовал, может ли <f:cObject>
viewhelper заполнить значение для bodyTagCObject.stdWrap.append
, возможно, может, но у меня ничего не получилось...
IncludeFileViewHelper.php
в расширении новостей georg ringer, вызываемое в корыте шаблона<n:includeFile path="{settings.cssFile}" />
13.06.2017