public function analyze(SeoAbleInterface $object, AnalyzerContext $context)
 {
     $seo = $object->getSeo();
     foreach (self::$attributes as $attribute) {
         if (!isset($seo[$attribute])) {
             $context->addIssue(sprintf('Missing "%s" attribute.', $attribute));
         }
     }
 }
 public function analyze(SeoAbleInterface $object, AnalyzerContext $context)
 {
     $seo = $object->getSeo();
     // Check Max Lengths
     foreach (self::$maxLength as $attribute => $size) {
         if (!isset($seo[$attribute])) {
             continue;
         }
         if (strlen($seo[$attribute]) > $size) {
             $context->addIssue(sprintf('"%s" attribute is too long. %d recommended maximum.', $attribute, $size));
         }
     }
     // Check Min Lengths
     foreach (self::$minLength as $attribute => $size) {
         if (!isset($seo[$attribute])) {
             continue;
         }
         if (strlen($seo[$attribute]) < $size) {
             $context->addIssue(sprintf('"%s" attribute is too short. %d recommended minimum', $attribute, $size));
         }
     }
 }