custom/plugins/fourtwosixBannerSliderHighlight/src/fourtwosixBannerSliderHighlight.php line 11

Open in your IDE?
  1. <?php declare(strict_types=1);
  2. namespace fourtwosix\BannerSliderHighlight;
  3. use Shopware\Core\Framework\Plugin;
  4. use Shopware\Core\Framework\DataAbstractionLayer\Search\Criteria;
  5. use Shopware\Core\Framework\DataAbstractionLayer\Search\Filter\EqualsFilter;
  6. use Shopware\Core\Framework\Plugin\Context\DeactivateContext;
  7. use Shopware\Core\Framework\Context;
  8. class fourtwosixBannerSliderHighlight extends Plugin
  9. {
  10.     public function deactivate(DeactivateContext $context): void
  11.     {
  12.         $this->deleteCmsElements($context->getContext());
  13.     }
  14.     private function deleteCmsElements(Context $context) {
  15.         //delete all elements of popups
  16.         $cmsElementsRepo $this->container->get('cms_slot.repository');
  17.         $criteria = new Criteria();
  18.         $criteria->addFilter(new EqualsFilter('type'"fourtwosix-banner"));
  19.         $results $cmsElementsRepo->search($criteria$context);
  20.         if($results != null){
  21.             $elements $results->getEntities();
  22.             foreach($elements as $element){
  23.                 $cmsElementsRepo->delete([['id' => $element->getId()]], $context);
  24.             }
  25.         }
  26.         //delete all blocks of popups
  27.         $cmsBlockRepo $this->container->get('cms_block.repository');
  28.         $criteria = new Criteria();
  29.         $criteria->addFilter(new EqualsFilter('type'"fourtwosix-banner-block"));
  30.         $results $cmsBlockRepo->search($criteria$context);
  31.         if($results != null){
  32.             $blocks $results->getEntities();
  33.             foreach($blocks as $block){
  34.                 $cmsBlockRepo->delete([['id' => $block->getId()]], $context);
  35.             }
  36.         }
  37.     }
  38. }