Gutenbergブロックを開発するとき、アセットをenqueeする正しい方法には次のものが含まれます。1。register_block_typeを使用して、editor_script、editor_style、およびstyleのパスを指定します。 2。functions.phpまたはプラグインでwp_register_scriptとwp_register_styleを介してリソースを登録し、正しい依存関係とバージョンを設(shè)定します。 3.適切なモジュール形式を出力するようにビルドツールを構(gòu)成し、パスが一貫していることを確認(rèn)します。 4. add_theme_supportまたはenqueue_block_assetsを介してフロントエンドスタイルの読み込みロジックを制御して、スタイルが有効になり、競合を回避します。
Gutenbergブロックを開発する場(chǎng)合、アセット(JavaScriptやCSSファイルなど)が正しくエンキューすることは、ブロックが適切に機(jī)能することを保証するための重要なステップです。これは、バックエンドエディターにファイルをロードするだけでなく、フロントエンドのディスプレイと依存関係の管理の問題を検討することでもあります。
1. register_block_type
を使用して、アセットパスを正しく指定します
WordPressは、ブロックタイプを登録するためにregister_block_type
関數(shù)を提供し、パラメーターを介して対応するJSおよびCSSファイルパスを指定できます。
Register_block_type(__dir__、array( 'editor_script' => 'my-block-editor-script'、 'editor_style' => 'my-block-editor-styles'、 'style' => 'my-block-frontend-styles'、 ));
-
editor_script
:ブロックエディターのスクリプトに使用されます(通常は.js
または.jsx
ファイルをコンパイルします) -
editor_style
:エディターにロードされたスタイルのみが前景に影響しません style
:フロントとバックエンドにロードされるスタイル、通常はブロックの基本的な外観に使用されます
functions.php
またはプラグインにスクリプトとスタイルシートを登録します
これらのリソースを最初にwp_register_script
およびwp_register_style
で登録する必要があります。これにより、WordPressがregister_block_type
で言及したハンドルを認(rèn)識(shí)できるようにします。
関數(shù)my_block_assets(){ wp_register_script( 「My-Block-Editor-Script」、 get_template_directory_uri()。 '/blocks/my-block/build/index.js'、 array( 'wp-blocks'、 'wp-element'、 'wp-editor')、 filemtime(get_template_directory()。 '/blocks/my-block/build/index.js') ); wp_register_style( 「My-Block-Editor-Styles」、 get_template_directory_uri()。 '/blocks/my-block/editor.css'、 配列()、 filemtime(get_template_directory()。 '/blocks/my-block/editor.css') ); wp_register_style( 「My-Block-Frontend-Styles」、 get_template_directory_uri()。 '/blocks/my-block/style.css'、 配列()、 filemtime(get_template_directory()。 '/blocks/my-block/style.css') ); } add_action( 'init'、 'my_block_assets');
いくつかの重要なポイントに注意してください:
-
wp-blocks
、wp-element
、wp-editor
など、スクリプト依存関係を完全に記述する必要があります filemtime()
を使用して、古いバージョンのファイルをキャッシュすることからブラウザを避ける- テーマディレクトリ構(gòu)造を使用している場(chǎng)合は、
get_template_directory
使用することをお?jiǎng)幛幛筏蓼?。プラグインの?chǎng)合は、plugins_url()
を使用して__FILE__
と協(xié)力します
3。ツール構(gòu)成の構(gòu)築に関する注意事項(xiàng)
Webpack、Vite、またはその他のビルドツールを使用してブロックコードをパッケージ化する場(chǎng)合は、次のポイントに注意する必要があります。
- 出力JSファイルはUMDモジュールであるか、WordPress環(huán)境に適した形式で正しくパッケージ化する必要があります。
- ReactやReactdomを個(gè)別にパッケージ化しないでください。WordPress(
window.React
、window.ReactDOM
など)が提供するグローバル変數(shù)參照を使用します。 - 出力パスがPHPに登録されているパスと一致していることを確認(rèn)してください
一般的な慣行:
- 編集者スクリプトを
/src/blocks/your-block/index.js
に置きます - webpackを使用して
/build/your-block/index.js
にコンパイルします - 同時(shí)に、依存関係とバージョン番號(hào)を自動(dòng)的に取得するために
.asset.php
ファイルを生成します(WordPressデフォルトサポート)
4。フロントエンドスタイルを読み込むためのヒント
デフォルトでは、Gutenbergブロックのstyle
パラメーターは、スタイルを前景に自動(dòng)的にロードします。しかし、時(shí)々、スタイルが効果的ではないことがわかります。理由は次のとおりです。
- テーマはブロックスタイルのサポートを正しく有効にしません(
add_theme_support( 'wp-block-styles' )
と呼ばれるかどうかを確認(rèn)) - スタイルは他のテーマスタイルでカバーされています。名前空間クラス名を追加することをお?jiǎng)幛幛筏蓼?/li>
- いくつかのブロックは、フロントエンド(いくつかの動(dòng)的ブロックなど)にレンダリングされません?,F(xiàn)時(shí)點(diǎn)では、
enqueue_block_assets
フックを使用してオンデマンドで読み込むことを検討できます。
関數(shù)my_enqueue_frontend_assets(){ if(has_block( 'my/block-name')){ wp_enqueue_style( 'my-block-frontend-styles'); } } add_action( 'wp_enqueue_scripts'、 'my_enqueue_frontend_assets');
この方法はより柔軟ですが、ブロックが実際にページに存在するかどうかを判斷する必要もあります。
基本的にそれだけです。 WordPressのブロック登録仕様をフォローし、建設(shè)およびパスの問題に注意を払う限り、ブロックに資産を正常にロードできます。
以上がGutenbergブロックの資産を排除する方法の詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國語 Web サイトの他の関連記事を參照してください。

ホットAIツール

Undress AI Tool
脫衣畫像を無料で

Undresser.AI Undress
リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover
寫真から衣服を削除するオンライン AI ツール。

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中國語版
中國語版、とても使いやすい

ゼンドスタジオ 13.0.1
強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











WordPressテスト環(huán)境を使用して、正式に発売される前に新機(jī)能、プラグイン、またはテーマのセキュリティと互換性を確保し、実際のWebサイトに影響を與えないようにします。テスト環(huán)境を構(gòu)築する手順には、次のものがあります。ローカルサーバーソフトウェア(LocalWP、XAMPPなど)のダウンロードとインストール、サイトの作成、データベースと管理者アカウントの設(shè)定、テスト用のテーマとプラグインのインストール。正式なWebサイトをテスト環(huán)境にコピーする方法は、プラグインを介してサイトをエクスポートし、テスト環(huán)境をインポートし、ドメイン名を置き換えることです。それを使用する場(chǎng)合、実際のユーザーデータを使用せず、定期的に役に立たないデータのクリーニング、テストステータスのバックアップ、時(shí)間內(nèi)に環(huán)境のリセット、および違いを減らすためにチームの構(gòu)成を統(tǒng)合することに注意を払う必要があります。

GITでWordPressプロジェクトを管理する場(chǎng)合、バージョンコントロールにテーマ、カスタムプラグイン、構(gòu)成ファイルのみを含める必要があります。 .gitignoreファイルをセットアップして、ディレクトリ、キャッシュ、および機(jī)密構(gòu)成のアップロードを無視します。 WebhooksまたはCIツールを使用して自動(dòng)展開を?qū)g現(xiàn)し、データベース処理に注意を払います。共同開発のために2つのブランチポリシー(Main/Develop)を使用します。そうすることで、競合を回避し、セキュリティを確保し、コラボレーションと展開効率を改善できます。

Gutenbergブロックを作成するための鍵は、その基本構(gòu)造を理解し、フロントエンドリソースとバックエンドリソースを正しく接続することです。 1.開発環(huán)境の準(zhǔn)備:ローカルWordPress、node.js、 @wordpress/scriptsをインストールします。 2。PHPを使用してブロックを登録し、JavaScriptを使用してブロックの編集ロジックを定義します。 3. npmを介してJSファイルを構(gòu)築して変更を行います。 4.問題に遭遇したときにパスとアイコンが正しいかどうかを確認(rèn)するか、リアルタイムのリスニングを使用してビルドを使用して、繰り返し手動(dòng)コンパイルを避けます。これらの手順に従って、シンプルなグーテンバーグブロックを段階的に実裝できます。

tosetupredirectsinwordsusitheTheTheTheTheTheTheThe、LocateTethefileNyinyOursite’sRootDirectoryAnddRedireCtRulesabovethe

WordPressでは、カスタム記事タイプを追加したり、固定リンク構(gòu)造を変更したりするときは、書き換えルールを手動(dòng)で更新する必要があります。この時(shí)點(diǎn)で、コードを介してflush_rewrite_rules()関數(shù)を呼び出して実裝できます。 1.この関數(shù)は、テーマまたはプラグインのアクティベーションフックに追加して、自動(dòng)的に更新できます。 2。CPTの追加、分類、リンク構(gòu)造の変更など、必要に応じて1回のみ実行します。 3.パフォーマンスに影響を避けるために、頻繁に電話をかけないでください。 4。マルチサイト環(huán)境では、必要に応じて各サイトを個(gè)別に更新します。 5.一部のホスティング環(huán)境は、ルールの保存を制限する場(chǎng)合があります。さらに、[保存]をクリックして「設(shè)定>ピン留めリンク」ページにアクセスすると、自動(dòng)化されていないシナリオに適した更新もトリガーできます。

usingsmtpforwordpressemailsimprovesdeleverability andReliability comparedtothededefaultphpmail()function.1.smtpauthenticateswithyouremailserver、reducespamplacement.2.somehostsdisablephpmail()、makesmtpn devering

応答性のあるWordPressテーマデザインを?qū)g裝するには、まず、HTML5とモバイルファーストメタタグを使用し、header.phpにビューポート設(shè)定を追加して、モバイル端子が正しく表示されるようにし、HTML5構(gòu)造タグでレイアウトを整理します。第二に、CSSメディアクエリを使用して、さまざまな畫面幅でスタイルの適応を?qū)g現(xiàn)し、モバイルファーストの原則に従ってスタイルを書き込み、一般的に使用されるブレークポイントには480px、768px、1024pxが含まれます。第三に、畫像とレイアウトを弾力的に処理し、最大幅を設(shè)定します。畫像に100%を設(shè)定し、固定幅の代わりにFlexBoxまたはグリッドレイアウトを使用します。最後に、ブラウザ開発者ツールと実際のデバイスを介して完全にテストし、パフォーマンスを最適化し、応答を確保する

IntegrateThird-PartyApisIntOwordPress、次のようになります。
