odoo第一天==odoo文档学习theme主题

https://www.odoo.com/documentation/10.0/howtos/themes.html
1.在addons下创建主题模块
这里写图片描述
我创建的是
这里写图片描述
创建以下目录和文件
odoo第一天==odoo文档学习theme主题_第1张图片
manifest.py:主题的配置信息
init.py:系统强制需要的文件
views :放xml文件
static:放样式,js, 图片
2.在manifest.py
odoo第一天==odoo文档学习theme主题_第2张图片
3.刷新模块列表就会出现我们的模块,安装它
odoo第一天==odoo文档学习theme主题_第3张图片
odoo第一天==odoo文档学习theme主题_第4张图片
4.扩展原来的头部
odoo第一天==odoo文档学习theme主题_第5张图片
添加id在原来网页div id=’wrapwrap’ 下header元素中
odoo第一天==odoo文档学习theme主题_第6张图片
会在网页中添加
这里写图片描述

这是最好的操作,如果你想要绑定css规则给一个元素,并且避免这css影响其他页面内容(注意:不要替换原来的元素属性)

添加div在原来网页div id=’wrapwrap’ 下header元素下div的最后一个
odoo第一天==odoo文档学习theme主题_第7张图片
会在网页中添加
odoo第一天==odoo文档学习theme主题_第8张图片
完整代码片段


<odoo>
    <data>
        
        
        <template id="custom_header" inherit_id="website.layout" name="Custom Header">
            
            
            
            
            <xpath expr="//div[@id='wrapwrap']/header" position="attributes">
                <attribute name="id">my_headerattribute>
            xpath>

            
            
            <xpath expr="//div[@id='wrapwrap']/header/div" position="after">
                <div class="container">
                    <div class="alert alert-info mt16" role="alert">
                        <strong>Welcomestrong>
                        in our website!
                    div>
                div>
            xpath>
        template>
    data>
odoo>

manifest.py:中添加’data’: [ ‘views/layout.xml’ ]
更新下模块看下结果
5.创建一个指定的页面布局(这页面修改html,更新没有用,把services换成其他的更新运行有效)
odoo第一天==odoo文档学习theme主题_第9张图片


<odoo>
    <data>
        
        
        <template name="Services page" id="website.services" page="True">  
            <t t-call="website.layout">
                <div id="wrap">
                    <div class="container">
                        <h1>Our Servicesh1>
                        <ul class="services">
                            <li>Cloud Hostingli>
                            <li>Supportli>
                            <li>Unlimited spaceli>
                        ul>
                        
                        <div class="oe_structure"/>
                    div>
                div>
            t>
        template>

        <在menu上添加标签>
        <record id="services_page_link" model="website.menu">
            <field name="name">Servicesfield>
            <field name="url">/page/servicesfield>
            <field name="parent_id" ref="website.main_menu"/>
            <field name="sequence" type="int">99field>
        record>
    data>
odoo>

6.继承原来的样式并修改
修改网页中地方
这里写图片描述
创建style.less
这里写图片描述
添加

.services {
    background: #EAEAEA;
    padding: 1em;
    margin: 2em 0 3em;
    li {
        display: block;
        position: relative;
        background-color: #16a085;
        color: #FFF;
        padding: 2em;
        text-align: center;
        margin-bottom: 1em;
        font-size: 1.5em;
    }
}

navigate to the view folder and create an XML file called assets.xml.
Remember to replace theme folder with your theme’s main folder name.
inherit_id. This attribute tells Odoo that our template is referring to another one in order to operate.

<template id="mystyle" name="My style" inherit_id="website.assets_frontend">
    <xpath expr="link[last()]" position="after">
        <link href="/theme folder/static/less/style.less" rel="stylesheet" type="text/less"/>
    xpath>
template>

你可能感兴趣的:(odoo)