Как перенести измененный контент в тему plone с помощью diazo?

Теперь мне нужна следующая структура поиска в теме:

<div class="sideCol">
    <aside class="siteSearch">
        <form name="searchform" action="search" class="searchPage searchform" id="searchform">
            <fieldset>
                <legend>Website durchsuchen</legend>
                <input class="searchPage text lang-de" name="SearchableText" type="text" size="25" title="Website durchsuchen" value="" placeholder="Suchbegriff..." />
                <button type="submit"><i class="icon-search"></i></button>
            </fieldset>
        </form> 
    </aside>            
</div>

Все, что мне нужно получить от темы солнечных лучей Plones, — это ссылка действия для элемента формы. Итак, я попробовал это:

<replace css:content-children="#portal-searchbox">
    <xsl:variable name="action_link" select="form/@action" />
    <form name="searchform" action="search" class="searchPage searchform" id="searchform">
        <xsl:attribute name="action">${action_link}</xsl:attribute>
        <fieldset>
            <legend>Website durchsuchen</legend>
            <input class="searchPage text lang-de" name="SearchableText" type="text" size="25" title="Website durchsuchen" value="" placeholder="Suchbegriff..." />
            <button type="submit"><i class="icon-search"></i></button>
        </fieldset>
    </form>
</replace>
<replace css:content-children="#portal-searchbox" css:theme-children=".siteSearch" />

Проблема в том, что все, что я получаю в теме, это структура Plones Sunburst Search.

<div class="sideCol">
    <aside class="siteSearch">
        <form id="livesearch0" action="http://localhost:8080/mamuz/de/@@search">
            <div class="LSBox">
                <label class="hiddenStructure" for="searchGadget">Website durchsuchen</label>
                <input name="SearchableText" type="text" size="18" title="Website durchsuchen" placeholder="Website durchsuchen" accesskey="4" class="searchField" id="searchGadget" autocomplete="off">
                <input class="searchButton" type="submit" value="Suche">
                <div class="searchSection">
                    <input id="searchbox_currentfolder_only" class="noborder" type="checkbox" name="path" value="/mamuz/de/impressum">
                    <label for="searchbox_currentfolder_only" style="cursor: pointer">nur im aktuellen Bereich</label>
                </div>
                <div class="LSResult" id="LSResult">
                    <div class="LSShadow" id="LSShadow"></div>
                </div>
            </div>
        </form>
        <div id="portal-advanced-search" class="hiddenStructure">
            <a href="http://localhost:8080/mamuz/de/@@search" accesskey="5">Erweiterte Suche…</a>
        </div>
    </aside>
</div>

Я знаком с диазо, но новичок в xslt. Что не так? Я устал от нескольких типов размещения, таких как импорт, прежде чем он будет изменен. Ничего не помогает.


person jurihandl    schedule 05.12.2013    source источник


Ответы (1)


Использование директивы replace для самого атрибута должно работать:

<replace attributes="action"
    css:content="#portal-searchbox form"
    css:theme="#searchform" />
person ebrehault    schedule 05.12.2013
comment
действительно, это звучит как диазо-ошибка при обработке ключевых слов атрибутов. - person ebrehault; 06.12.2013