Sulu 1.6: Live Preview пользовательского шаблона не работает - PullRequest
0 голосов
/ 11 января 2019

После прочтения http://docs.sulu.io/en/latest/cookbook/live-preview.html, а также перекрестной проверки example.html.twig Я все еще не могу выяснить, почему предварительный просмотр любви не работает в моем шаблоне.

Моя иерархия шаблонов (с использованием комплекта тем):

  1. bs_homepage.html.twig, extends:
  2. main.html.twig, extends:
  3. master.html.twig

В двух словах, структура выглядит так:

bs_homepage.html.twig (просто устанавливает некоторые параметры и вызывает основной шаблон)

 {% extends "DWBNFrontendBundle:main:main.html.twig" %}

main.html.twig

 {% block content %}
     [...]
     <div id="content" class="container" vocab="http://schema.org/" typeof="Content">
          [...]
          <div class="row">
                [...]
                <section class="col-sm-{{ mainCollSize }} main-content" id="content" vocab="http://schema.org/" typeof="Content">
                {% if content.title %}
                     <h1 property="title">{{ content.title }}</h1>
                {% endif %}

                [...]
          </div>
     </div>
 {% endblock %}

master.html.twig

  [...]
  <body>
      <!-- content -->
      {% block content %}{% endblock %}
      <!-- /content -->

      [...]
  </block>

И определения xml:

bs_homepage.xml

<?xml version="1.0" ?>
<template xmlns="http://schemas.sulu.io/template/template"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:xi="http://www.w3.org/2001/XInclude"
          xsi:schemaLocation="http://schemas.sulu.io/template/template http://schemas.sulu.io/template/template-1.1.xsd">

    <key>bs_homepage</key>

    <view>DWBNFrontendBundle:templates:bs_homepage</view>
    <controller>SuluWebsiteBundle:Default:index</controller>
    <cacheLifetime>2400</cacheLifetime>

    <meta>
        <title lang="de">Startseite</title>
        <title lang="en">Homepage</title>
    </meta>

    <properties>

        <xi:include href="fragments/content-core.xml" xpointer="xmlns(sulu=http://schemas.sulu.io/template/template) xpointer(/sulu:template/sulu:properties/sulu:section[@name='highlight'])"/> 
        [...]
    </properties>
</template>

фрагменты / контент-core.xml

<?xml version="1.0" ?>
<template xmlns="http://schemas.sulu.io/template/template"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://schemas.sulu.io/template/template http://schemas.sulu.io/template/template-1.1.xsd">

    <properties>

        <section name="highlight">
            <properties>
                <property name="title" type="text_line" mandatory="true">
                    <params>
                        <param name="headline" value="true"/>
                    </params>

                    <tag name="sulu.rlp.part"/>
                </property>
                [...]
            </properties>
        </section>
    </properties>
</template>

Но если я изменю заголовок, в окне предварительного просмотра ничего не произойдет.

1 Ответ

0 голосов
/ 11 января 2019

Во-первых: в вашем вопросе я не вижу, называется ли ваша собственность названием "title" в вашем xml.

Но я думаю, что проблема в том, что когда он изначально отображается, html-узел h1 не существует. Поэтому обновление этого узла вообще не может происходить.

Попробуйте добавить что-то вроде этого:


    <div property="title">
        {% if content.title %}
            <h1>{{ content.title }}</h1>
        {% endif %}
    </div>

...