Random Circuits
Experiment log

LaravelサイトのHTMLを直接修正して大丈夫? WordPressとの違いを実案件から考える

「これ、HTMLを直接直していいの?」

最近、Laravelで構築されたWebサイトを触る機会がありました。

Laravelそのものを使ってサイトを一から開発した案件ではありません。

すでに存在しているサイトについて、HTMLやCSSの一部を修正する必要がありました。

そこで最初に思ったのが、

「フレームワークで作られているサイトなのに、静的ファイルを直接変更して大丈夫なのか?」

ということでした。

普段WordPressを触ることが多いと、これはかなり気になります。

例えばWordPressなら、管理画面やテーマから生成されているHTMLをブラウザで見つけたからといって、出力結果を直接変更することはできません。

元になっているテーマファイルなどを修正します。

Laravelも同じなのではないか、と考えたわけです。

LaravelはCMSではなくフレームワーク

まず整理すると、LaravelはWordPressのようなCMSではありません。

PHPでWebアプリケーションを作るためのフレームワークです。

ざっくり言えば、

Webシステムを作るための土台

です。

WordPressの場合、

などが最初から用意されています。

Laravelはもっと自由です。

どんなURLで何を表示し、どのデータを読み込み、どんな処理をするかを開発者が設計します。

publicディレクトリにあるもの

Laravelには通常 public ディレクトリがあります。

Webブラウザから直接アクセスされる公開領域です。

ここには、

などを置くことがあります。

そのため、サイトによっては public 以下に普通のHTMLファイルが置かれていることもあります。

もしそのHTMLがLaravelのテンプレートから自動生成されるものではなく、

本当に静的ファイルとして公開されているもの

であれば、直接修正しても問題ありません。

重要なのはファイルの拡張子ではなく、

「そのファイルがどのように生成されているのか」

です。

routes/web.phpを見るとサイトの流れが分かる

LaravelでWebページのURLを管理する重要な場所のひとつが、

routes/web.php

です。

ここを見ると、

「このURLへアクセスされたときに、どの処理へ渡すのか」

といったルーティングが記述されています。

今回確認したサイトでは、特定のURLについてLaravel側で処理しつつ、その他は静的コンテンツを表示するような構成になっていました。

つまり、

Laravelだからサイト全体がLaravelテンプレートで作られているとは限らない

ということです。

静的HTMLとLaravelの機能が混在するサイトも作れます。

WordPressで例えるならどういう感覚か

WordPressに慣れていると、Laravelは少し分かりにくいかもしれません。

感覚的には、

「WordPressそのもの」

というより、

WordPressのようなシステムを作るための部品や仕組み

に近いです。

以前からPHPを触っている人なら、CodeIgniterなどのPHPフレームワークと同じジャンルと考えると分かりやすいでしょう。

EC-CUBEも内部にはフレームワーク的な構造があります。

画面上では普通のWebサイトに見えていても、裏ではURL、データベース、テンプレート、処理が分離されています。

直接変更して危険なファイルもある

もちろん、

「publicにあれば何でも直接直していい」

という意味ではありません。

例えばビルドツールによって自動生成されるCSSやJavaScriptを直接変更すると、次回ビルド時に上書きされる可能性があります。

またテンプレートから生成されたファイルを直接変更しても、元データが更新されれば消えてしまいます。

そのため最初に確認したいのは、

といった点です。

AIで作られたサイトでは特に構造確認が重要

最近ではClaudeなどのAIにWebサイトやシステムを作ってもらうケースも増えています。

本人は、

「AIにサイトを作ってもらった」

と認識していても、実際の中身を見るとLaravelだったりNext.jsだったり、独自の構成になっていたりします。

利用者自身が技術構成を決めていないこともあります。

だからこそ修正を依頼された側は、

見た目だけで判断せず、まず構造を確認する

必要があります。

フレームワークだから触れないわけではない

今回自分の中で整理できたのは、

「Laravelだから静的HTMLを直接変更してはいけない」

という考え方ではない、ということです。

重要なのは、

そのHTMLがシステムの中でどういう役割を持っているか

です。

普通の静的ファイルなら普通に修正できる。

Laravel側で管理されているページなら、正しいテンプレートや処理を修正する。

この判断さえできればいいわけです。

AIによるWeb制作が増えてくると、

「何で作られているのか分からないサイトを引き継ぐ」

仕事も増えてくる気がします。

これからはHTMLやWordPressだけではなく、

サイトの構造を読み解く力

が、ますます必要になりそうです。