def find_content_page(uri_path)
      ContentPage::TEMPLATE_ENGINES.each do |engine, extension|
        @preferred_extension = extension.to_s
        find_template(settings.content, uri_path, engine) do |file|
          next unless File.file?(file)
          return ContentPage.new(data: File.read(file), engine: engine)
        end
      end

      raise ContentPageNotFound, "Cannot find content page for path -- #{uri_path}"
    end
def find_content_page(uri_path)
      ContentPage::TEMPLATE_ENGINES.each do |engine, extension|
        @preferred_extension = extension.to_s
        find_template(settings.content, uri_path, engine) do |file|
          next unless File.file?(file)
          return ContentPage.new(data: File.read(file), engine: engine)
        end
      end

      raise ContentPageNotFound, "Cannot find content page for path -- #{uri_path}"
    end
Given a URI path, creates a new `ContentPage` instance by searching for and reading a content
 file from disk. Content files are searched consecutively until a page with a supported
 content page template engine is found.

 @param [String] uri_path
 @raise [ContentPageNotFound] Raised when a content page cannot be found for the uri path
 @return [ContentPage] A new instance is created and returned when found
 @see ContentPage::TEMPLATE_ENGINES