本テンプレートはWordPressのアップデートが常に行われていくこと、運用が第三者になる可能性を考慮して互換性に特化したものになっています。
そのためfunctions
のカスタムは最小限に留めて、必要な機能はプラグインに任せる方針になっています。
WordPressは常に最新のバージョンを取得する設定になっています。プロジェクト開始時に .wp-env.json
を編集してWordPressとプラグインのバージョンを固定することを推奨しています。
本番またはテストサーバーでは下記のプラグインをインストールすることを推奨しています。
下記の有料のプラグインを使用したい場合は運用者に連絡をしてください。リンクがダウンロードできるようになるので /plugins
配下に設置してください。
npm ci or npm install
npm run wp:setup
npm run dev
open http://localhost:3030/wp-admin
user : admin
password : password
npm run build
アップロードの際は/dist
以下をアップロードしてください。
ネットワーク経由でのアクセスをする場合は.wp-env.json
のVITE_SERVER
の値を自身のローカルIPに変更してください。
こちらは暫定対応で.wp-env.json
はGit管理されているのでこちらの値を上書きしてコミットしないように注意してください。
"VITE_SERVER": "http://0.0.0.0:3000"
案件によっては60分割のグリッドシステムによってデザインされています。
スタイリングがしやすいように補助的な役割を担う機能が既に用意されています。
クラスの命名については基本的に BEM を採用しています。
// NG
.hoge {
&__title {
color: black;
}
}
// OK
.hoge__title {
color: black;
}
固定値か相対値でコーディングするかはプロジェクトやデザインによって変わってくるので、最初に協議するようにしてください。
vw
関数を使用するようにしてください。.hoge {
font-size: vw(16);
}
rem
関数を使用するようにしてください。.hoge {
width: rem(1); // 1グリッド
}
$base-dir は設定をするとCSSでローカルと本番で異なる参照をすることができます。
background-image: url($base-dir + "assets/images/icon-blank.svg");
<?= get_svg_sprite('logo', 'LIG') ?>
画像最適化用にpicture.php
を用意しています。こちらを使用すると.avif
または.webp
で画像が配信されます。
<?php get_template_part("./parts/picture", null, [
"images" => [
"src" => "sample-01.jpg",
"width" => "1280",
"height" => "600",
"alt" => "",
],
]); ?>
ローカル環境ではVITEの開発サーバー、本番環境ではテーマのルートを参照する必要があるため基本的にvite-config.php
の関数を使用してAssetsにアクセスしてください。
<img src="https://github.com/liginc/wp-starter-theme/raw/master/<?= vite_src_images('sample-01.jpg') ?>" decoding="async" width="1280" height="800" alt="">
<img src="https://github.com/liginc/wp-starter-theme/raw/master/<?= vite_src_images('icon-blank.svg') ?>" decoding="async" width="30" height="30" alt="">
npm run lint:check
npm run lint:fix
Lint はプリコミット時に必ず実行されます。以下の vscode プラグインをインストールすると vscode 保存時にも Lint を実行することができるので便利です。
開発段階では基本的にfeatureブランチを作成して、mainにマージしてください。CICDが実装されている場合 main ブランチにマージすると自動デプロイの処理が実行されるので誤って本番サーバーにアップしないように注意してください。
テーマは通常、Git管理され、CI/CDを通じてデプロイされるため、All-in-One WP Migrationのエクスポートに含めない方が良いです。
データベースのバックアップや移行が主な目的であれば、All-in-One WP Migrationでデータベースのみをエクスポートし、インポートすることが推奨されます。