Lisää aloituspisteitä WordPressin luontilohkokomentosarjaan
Kun luot lohkon ensimmäisen kerran WordPressin luontilohkokomentosarjan avulla, npm init @wordpress/block
saat sisääntulopisteen osoitteeseen /src/index.js
, jonka avulla voit kääntää kaikki lohkopohjaiset resurssit ja tyylit.
Joskus haluat lisätä muita aloituskohtia, esimerkiksi haluat ehkä käyttää WordPress Block Editor (Gutenberg) -lohkoja muualla editorissa, esimerkiksi asetussivulla tai mukauttajassa.
Tämä opas auttaa sinua laajentamaan WordPressin luontilohkokomentosarjaa webpack.config
, jotta voit lisätä nämä lisätulokohdat.
Edellytykset
Luo tiedostosi
Lohkokomentosarjan luontioppaan jälkeen aiomme luoda ratkaisussamme muutamia tiedostoja:
Luoda/src/admin.js
Tämä tiedosto on pääsisääntulopiste mille tahansa Reactille, jonka haluamme lisätä WordPressin järjestelmänvalvojanäyttöön (jos esimerkiksi halusimme rakentaa asetussivun hallitaksemme asetuksiamme Gutenberg Componentsilla.
Luo tiedosto /src/admin.js
ja liitä siihen seuraava koodi:
import { __ } from '@wordpress/i18n';
import api from '@wordpress/api';
import './admin.scss';
Emme tee tässä tiedostossa juuri mitään, se on myöhemmin annettavien oppaiden aihe. Toistaiseksi lisäämme vain koodia, jotta voimme testata ulostuloa.
Se kuitenkin tuo /src/admin.scss
tiedoston, joka käännetään sisältämään kaikki mukautetut CSS-tiedostomme WordPress-järjestelmänvalvojalle.
Luoda/src/admin.scss
Luo tiedosto /src/admin.scss
ja lisää testi-SCSS:
body {
background: pink;
}
Jälleen tämä koodi ei palvele muuta kuin testaamaan, käännetäänkö SCSS.
Luoda/webpack.config.js
Luo laajennuksen juureen tiedosto, jonka nimi kerrotaan webpack.config.js
pian, mitä tähän tiedostoon laitetaan.
Muokkaa laajennuksen PHP-juuritiedostoa
Jos olet seurannut edellistä opasta, kyseistä laajennusta kutsutaan nimellä wholesome-plugin.php
.
Tässä tiedostossa haluamme rekisteröidä komentosarjat admin-alueelle, jotka tulostetaan webpack-kokoonpanollamme. Lisää seuraava funktio tiedoston alaosaan:
function wholesomecode_wholesome_plugin_admin_scripts() {
$dir = __DIR__;
$script_asset_path = "$dir/build/admin.asset.php";
if (! file_exists( $script_asset_path)) {
throw new Error(
'You need to run `npm start` or `npm run build` for the "wholesomecode/wholesome-plugin" block first.'
);
}
$admin_js = 'build/admin.js';
$script_asset = require( $script_asset_path );
wp_register_script(
'wholesomecode-wholesome-plugin-admin-editor',
plugins_url( $admin_js, __FILE__ ),
$script_asset['dependencies'],
$script_asset['version']
);
wp_set_script_translations( 'wholesomecode-wholesome-plugin-block-editor', 'wholesome-plugin' );
$admin_css = 'build/admin.css';
wp_enqueue_style(
'wholesomecode-wholesome-plugin-admin',
plugins_url( $admin_css, __FILE__ ),
['wp-components'],
filemtime( "$dir/$admin_css") );
}
add_action( 'admin_enqueue_scripts', 'wholesomecode_wholesome_plugin_admin_scripts', 10 );
Olemme melko pitkälti kopioineet koodin edellisestä jonolohkosta, mutta tehneet siitä merkityksellisen odotetuille /build/admin.js
ja tulostetuille tiedostoillemme /build/admin.css
. Huomaa, että lataamme myös erityisesti luodun /build/admin.asset.php
tiedoston, joka lisää automaattisesti kaikki WordPress-lohkoeditorin (Gutenberg) riippuvuudet järjestelmänvalvojan komentosarjaamme.
MuokkaawebPack.config
Vaiheessa 2 loimme tiedoston webpack.config.js
, lisää tähän tiedostoon seuraava koodi:
const defaultConfig = require( '@wordpress/scripts/config/webpack.config' );
const path = require( 'path' );
module.exports = {
...defaultConfig,
entry: {
...defaultConfig.entry,
admin: path.resolve( process.cwd(), 'src', 'admin.js' ),
}
};
Tämä koodi tuo webpack.config
osoitteesta @wordpress/scripts
. Tämä on koodi, joka suoritetaan aina, kun suoritat npm start
ratkaisusi.
Teemme vain tämän konfiguraation ja lisäämme toisen aloituspisteen rivillä admin: path.resolve( process.cwd(), 'src', 'admin.js' ),
.
Loppuosa koodista vain käskee webpackia käyttämään jo olemassa olevia asetuksia (esim ...defautConfig
. ...defaultConfig.entry
).
Kokoa koodi
Käännä laajennus npm start
komennolla ja katsotaan mitä tapahtuu:
Koodin kääntäminen uudella sisääntulopisteellä
Skripti luo nyt meille uusia tiedostoja:
-
/build/admin.assets.php
— Tämä PHP-tiedosto luodaan automaattisesti, kun/src
kansio käännetään. Se sisältää joukon kaikkia WordPress Editorin (Gutenberg) JavaScript-syvyyksiä, joita uusi aloituspisteesi käyttää. Se asetetaan jonoon päälataustiedoston kautta käyttöönottamammewholesome-plugin.php
lisätoiminnon kautta. -
/build/admin.css
— Tämä on järjestelmänvalvojan CSS-tiedosto, ja se asetetaan jonoon päälataustiedoston kautta käyttöönottamammewholesome-plugin.php
lisätoiminnon kautta. -
/build/admin.js
— Tämä on tärkein käännetty JavaScript-tiedosto, ja se asetetaan jonoon päälataustiedoston kautta käyttöönottamammewholesome-plugin.php
lisätoiminnon kautta. -
/build/admin.css.map
— Tämä tiedosto luodaan vain, kun käännät resursseja kehitystilaa varten (IE käytät,npm start
etkänpm build
kun käännät resursseja. Se on hyödyllinen tiedosto virheenkorjaajille, joka auttaa tunnistamaan tiedostojen nimet ja rivinumerot CSS:ssä, jos tapahtuu virheitä. -
/build/admin.js.map
— Tämä tiedosto luodaan vain, kun käännät resursseja kehitystilaa varten (IE käytät,npm start
etkänpm build
kun käännät resursseja. Se on hyödyllinen tiedosto JavaScript-virheenkorjaajille, joka auttaa tunnistamaan tiedostojen nimet ja rivinumerot virheiden sattuessa. -
Katso vaihtoehtojen ja asetusten käyttöä Gutenberg-lohkoissa
-
Katso mukautettujen metalaatikoiden luomista Gutenbergissä
-
Katso vaihtoehto- ja asetussivun rakentaminen Gutenbergin komponenteilla