Search
 
SCRIPT & CODE EXAMPLE
 
CODE EXAMPLE FOR PHP

drupal 9 custom local stream wrapper

This is a modified snippet from a live real estate project to define a custom stream wrapper.

Add the stream wrapper as a service in your services YML file:

    stream_wrapper.pics:
      class: DrupalmymodPicsStreamWrapper
      tags:
        - { name: stream, scheme: pics }



Create the stream wrapper class extending LocalStream:

    <?php

    namespace Drupalmymod;

    use DrupalCoreStreamWrapperLocalStream;

    class PicsStreamWrapper extends LocalStream {

        public function getDirectoryPath() {
            return 'sites/default/files/pics';
        }

        public function getExternalUrl() {
            global $base_url;

            $path = str_replace('', '/', $this->getTarget());

            return $base_url . '/' . self::getDirectoryPath() . '/' . $path;
        }

        public function getName() {
            return 'Pics Stream';
        }

        public function getDescription() {
            return 'Pics stream for listing property pics.';
        }
    }


    
Source by gitlab.com #
 
PREVIOUS NEXT
Tagged: #drupal #custom #local #stream #wrapper
ADD COMMENT
Topic
Name
9+8 =