フォルダが存在しない場合は、フォルダを作成します。
BluehostでWordPressをインストールした際に、アップロード用のフォルダwp-content/uploads
が存在しないためにWordPressテーマでエラーが発生するというケースに何度か遭遇しました。
どうやらBluehostのcPanel WPインストーラーではこのフォルダが作成されないようですが、HostGatorでは作成されます。
そのため、私のテーマに、このフォルダをチェックし、そうでなければ作成するコードを追加する必要があります。
603
3
これを試してみてください。
なお、
0777
はすでにディレクトリのデフォルトモードであり、現在のumaskによっても変更される可能性があります。googleでこれが出てくるので、もう少し普遍的なものを。 詳細はより具体的ですが、この質問のタイトルはより普遍的です。
これは、未作成のディレクトリが長く連なっている可能性のあるパスを受け取り、既存のディレクトリに到達するまで1つのディレクトリをさかのぼり続けます。 そして、そのディレクトリの次のディレクトリの作成を試み、すべてのディレクトリを作成するまで続けます。 成功すれば真を返します。
ユーザーフォルダを超えた場合に失敗するように停止レベルを設定したり、パーミッションを含めることで改善されるでしょう。
次のようなヘルパー機能はどうでしょうか。
この関数は、ディレクトリの作成に成功したか、すでに存在している場合には
true
を、ディレクトリの作成ができなかった場合にはfalse
を返します。もっと良い**代替案はこれです(警告は出ないはずです)。