WordPressでテーマ内のimagesディレクトリのファイル一覧を取得する方法

WordPressでテーマ内のimagesディレクトリのファイル一覧を取得する方法



WordPressのテーマオプションで、テーマ内のimagesディレクトリに入れている画像ファイルをセレクトフォームでリストアップしたかったのでその方法です。

ファイル構造はこんな感じになっています。

wp-content
themes
{My Theme}
images
dog.jpg
cat.jpg
logo.png
favicon.ico

コードはこんな感じ。

/**
 * テーマ内の画像ファイル名リスト生成.
 *
 * @return Array
 */
function get_dir_image() {
	$ary         = array();
	$dir         = get_stylesheet_directory() . '/images';
	$filelist    = scandir( $dir );
	foreach ( $filelist as $file ) {
		if ( ! is_dir( $file ) ) {
			$ext       = substr( $file, strrpos( $file, '.' ) + 1 );
			$image_ext = array( 'jpg', 'jpeg', 'gif', 'png', 'svg', 'ico' );
			if ( in_array( $ext, $image_ext, true ) ) {
				$ary[ $file ] = $file;
			}
		}
	}
	return $ary;
}

ポイント:
一応拡張子を調べて、画像ファイルのみ取得して配列に追加するようにしています。

今日はここまで

関連する記事



こちらはいかが?


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*(必須)

*(必須・表示されません)