Skip to main content

Error message

Warning: Undefined property: Drupal\markdown\Plugin\Markdown\CommonMark\CommonMarkGfm::$converter in Drupal\markdown\Plugin\Markdown\CommonMark\CommonMarkGfm->converter() (line 53 of modules/contrib/markdown/src/Plugin/Markdown/CommonMark/CommonMarkGfm.php).
Drupal\markdown\Plugin\Markdown\CommonMark\CommonMarkGfm->converter() (Line: 155)
Drupal\markdown\Plugin\Markdown\CommonMark\CommonMark->convertToHtml() (Line: 227)
Drupal\markdown\Plugin\Markdown\BaseParser->parse() (Line: 174)
Drupal\markdown\Plugin\Filter\FilterMarkdown->process() (Line: 122)
Drupal\filter\Element\ProcessedText::preRenderText()
call_user_func_array() (Line: 107)
Drupal\Core\Render\Renderer->doTrustedCallback() (Line: 914)
Drupal\Core\Render\Renderer->doCallback() (Line: 447)
Drupal\Core\Render\Renderer->doRender() (Line: 230)
Drupal\Core\Render\Renderer->render() (Line: 523)
Drupal\Core\Template\TwigExtension->escapeFilter() (Line: 89)
__TwigTemplate_6ae428a222b1a4d544259198ce1da892->doDisplay() (Line: 461)
Twig\Template->yield() (Line: 444)
Twig\Template->render() (Line: 53)
Twig\TemplateWrapper->render() (Line: 35)
Drupal\Core\Template\TwigThemeEngine->renderTemplate() (Line: 428)
Drupal\Core\Theme\ThemeManager->render() (Line: 504)
Drupal\Core\Render\Renderer->doRender() (Line: 517)
Drupal\Core\Render\Renderer->doRender() (Line: 230)
Drupal\Core\Render\Renderer->render() (Line: 523)
Drupal\Core\Template\TwigExtension->escapeFilter() (Line: 106)
__TwigTemplate_a34b76f8bd319a4caf25f6c976ce7cbd->doDisplay() (Line: 461)
Twig\Template->yield() (Line: 444)
Twig\Template->render() (Line: 53)
Twig\TemplateWrapper->render() (Line: 35)
Drupal\Core\Template\TwigThemeEngine->renderTemplate() (Line: 428)
Drupal\Core\Theme\ThemeManager->render() (Line: 504)
Drupal\Core\Render\Renderer->doRender() (Line: 230)
Drupal\Core\Render\Renderer->render() (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 638)
Drupal\Core\Render\Renderer::Drupal\Core\Render\{closure}()
Fiber->resume() (Line: 653)
Drupal\Core\Render\Renderer->executeInRenderContext() (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare() (Line: 131)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse() (Line: 69)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray() (Line: 254)
Symfony\Component\EventDispatcher\EventDispatcher::Symfony\Component\EventDispatcher\{closure}() (Line: 206)
Symfony\Component\EventDispatcher\EventDispatcher->callListeners() (Line: 56)
Symfony\Component\EventDispatcher\EventDispatcher->dispatch() (Line: 200)
Symfony\Component\HttpKernel\HttpKernel->handleRaw() (Line: 77)
Symfony\Component\HttpKernel\HttpKernel->handle() (Line: 54)
Drupal\simple_oauth\HttpMiddleware\BasicAuthSwap->handle() (Line: 53)
Drupal\Core\StackMiddleware\Session->handle() (Line: 30)
Drupal\Core\StackMiddleware\KernelPreHandle->handle() (Line: 28)
Drupal\Core\StackMiddleware\ContentLength->handle() (Line: 32)
Drupal\big_pipe\StackMiddleware\ContentLength->handle() (Line: 203)
Drupal\page_cache\StackMiddleware\PageCache->fetch() (Line: 140)
Drupal\page_cache\StackMiddleware\PageCache->lookup() (Line: 89)
Drupal\page_cache\StackMiddleware\PageCache->handle() (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle() (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle() (Line: 71)
Drupal\Core\StackMiddleware\AjaxPageState->handle() (Line: 54)
Drupal\Core\StackMiddleware\StackedHttpKernel->handle() (Line: 753)
Drupal\Core\DrupalKernel->handle() (Line: 34)
Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run() (Line: 32)
require() (Line: 22)
require_once() (Line: 13)

In PHP-DI, you can define a new service for an existing container without modifying the existing code (adhering to OCP). Here's how you can do it:

1. Get the Existing Container: First, you'll need to have access to the existing container. If you've already got that, great!

2. Define the New Service: You can use the set method to define a new service. Here's an example:

php $container->set('newService', function () { return new NewService(); });

3. Use the New Service: Once the service is defined, you can retrieve it from the container like any other service:

php $newService = $container->get('newService');

Remember, keep it clean and simple (KISS). If the new service has dependencies, make sure they are properly injected, and the code is organised to maintain a clear separation of concerns.