如何添加自定义片段?

问题描述 投票:0回答:1

我正在尝试在 Odoo 上创建自定义片段(版本 18,这很重要)。我正在关注这个例子。源代码在这里

不幸的是,我无法使代码片段出现在版本 18 网站构建器编辑面板上。

我尝试使用版本 17,它运行没有问题。这是 17 版本的截图。
screenshot of Odoo version 17

我尝试了多个 xpath,包括在 版本 18 的文档中找到的 xpath,但它都不起作用。我要么有错误,要么编辑面板上没有显示任何片段。

<xpath expr="//t[@t-snippet='website.s_banner']" position="before">
<xpath expr="//div[@id='snippet_effect']//t[@t-snippet][last()]" position="after">
<xpath expr="//div[@id='snippet_structure']/div[@class='o_panel_body']" position="inside">

他们都给我错误

元素“”无法位于父视图中

xpath 进入 xml 继承

website.snippets

<template id="snippets" inherit_id="website.snippets">
  <xpath expr="//*[@id='snippet_structure']" position="inside"> <!-- No error but nothing appear -->
    <t t-snippet="website_oxp_2023_ard.s_weather" string="Weather Forecast" t-thumbnail="/website_oxp_2023_ard/static/src/img/s_weather.svg"/>
  </xpath>
</template>

有人知道如何向 Odoo 版本 18 添加代码片段吗?

odoo
1个回答
0
投票

我也会调查这个问题:

首先回到原点:addons/website/views/snippet/snippet.xml:

<!-- Snippets menu -->
<template id="snippets" inherit_id="web_editor.snippets" primary="True" groups="base.group_user">
    <xpath expr="//button[@data-action='cancel']" position="before">
        <button type="button" class="btn btn-secondary" data-action="mobile" title="Mobile Preview" accesskey="v"><span class="fa fa-mobile"/></button>
    </xpath>
    <xpath expr="//div[@id='snippets_menu']" position="inside">
        <button type="button" tabindex="3" class="o_we_customize_theme_btn text-uppercase"
                groups="website.group_website_designer" accesskey="2">
            <span>Theme</span>
        </button>
    </xpath>
    <xpath expr="//t[@id='default_snippets']" position="replace">
        <t id="default_snippets">
            <t t-set="cta_btn_text" t-value="False"/>
            <t t-set="cta_btn_href">/contactus</t>

            <div id="snippet_structure" class="o_panel">
                <div class="o_panel_header">Structure</div>
                <div class="o_panel_body">
                    <t t-snippet="website.s_banner" string="Banner" t-thumbnail="/website/static/src/img/snippets_thumbs/s_banner.svg">
                        <keywords>hero, jumbotron</keywords>
                    </t>
                    <t t-snippet="website.s_cover" string="Cover" t-thumbnail="/website/static/src/img/snippets_thumbs/s_cover.svg">
                        <keywords>hero, jumbotron</keywords>
                    </t>
                    <t t-snippet="website.s_text_image" string="Text - Image" t-thumbnail="/website/static/src/img/snippets_thumbs/s_text_image.svg">
                        <keywords>content</keywords>
                    </t>
© www.soinside.com 2019 - 2024. All rights reserved.