Wordpress stylů v editoru pracuje pouze s „hodinky“

hlasů
0

Já používám Wordpress 5.4 s editorem Gutenberg a WebPack 4.2 budovat majetek. Chci styly ( app.css), které mají být načteny při upravování stránky nebo příspěvek.

V functions.php , dodal jsem:

function add_theme_style_to_editor(){
    add_theme_support( 'editor-styles' );
    add_editor_style( 'public/build/app.css' );
}
add_action( 'after_setup_theme', 'add_theme_style_to_editor' );

Pokaždé, když jsem běžet yarn watchvše funguje podle očekávání, mé styly jsou uloženy v editoru. Nicméně, pokud jsem běžet yarn buildgenerovat minified build soubory, to nefunguje! Přestože minified soubor je generován úspěšně na stejném místě se stejným názvem, na tom nezáleží. Co by mohlo být špatně?

V případě, že to pomůže, je zde package.json :

{
  name: app,
  version: 1.0.0,
  scripts: {
    start: webpack-dev-server --open --mode development,
    watch: webpack --watch,
    build: webpack -p
  },
  devDependencies: {
    babel-core: ^6.26.0,
    babel-loader: ^7.1.4,
    babel-preset-es2015: ^6.24.1,
    bootstrap: ^4.4.1,
    css-loader: ^0.28.11,
    extract-text-webpack-plugin: ^4.0.0-beta.0,
    jquery: ^3.4.1,
    mini-css-extract-plugin: ^0.9.0,
    node-sass: ^4.8.3,
    popper.js: ^1.16.0,
    postcss-loader: ^3.0.0,
    sass-loader: ^6.0.7,
    style-loader: ^0.20.3,
    webpack: ^4.20.2,
    webpack-cli: ^3.1.1,
    webpack-dev-server: ^3.1.1
  }
}

A webpack.config.js :

const MiniCssExtractPlugin = require(mini-css-extract-plugin);
var path = require(path);

module.exports = {
    entry: {
        app: ./assets/app.js // this also contains an scss-import that will result in app.css, apart from app.js
    },
    output: {
        path: path.resolve(__dirname, public/build),
        filename: [name].js,
        publicPath: public/build
    },
    watch: true,
    module: {
        rules: [
            {
                test: /\.js$/,
                use: {
                    loader: babel-loader,
                    options: {presets: [es2015]}
                }
            },
            {
                test: /\.s?css$/,
                use: [
                    MiniCssExtractPlugin.loader,
                    css-loader,
                    sass-loader
                ]
            }
        ]
    },
    plugins: [
        new MiniCssExtractPlugin({
            filename: [name].css,
            chunkFilename: [id].css
        })
    ]
}
Položena 13/01/2020 v 22:00
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
0

Myslím, že funkce by měla vypadat nějak takto. Dokumentace říká, že styl je v kořenové složce šablony, takže byste měli používatget_template_directory_uri

function add_theme_style_to_editor() {
  add_theme_support('editor-styles');
  add_editor_style(get_template_directory_uri() . 'public/build/app.css');
}
add_action('after_setup_theme', 'add_theme_style_to_editor');

Tady je můj Wordpress příklad viz devDependencies

Odpovězeno 14/01/2020 v 03:48
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more