Newscoop\Article\LinkService::getSeo PHP Метод

getSeo() публичный Метод

Get seo string
public getSeo ( object $article, array $fields ) : string
$article object
$fields array
Результат string
    public function getSeo($article, array $fields)
    {
        $seo = array();
        foreach ($fields as $field => $value) {
            switch ($field) {
                case 'name':
                    $seo[] = trim($article->getName());
                    break;
                case 'keywords':
                    $seo[] = trim($article->getKeywords());
                    break;
                case 'topics':
                    $articleTopics = \ArticleTopic::GetArticleTopics($article->getNumber());
                    if (is_array($articleTopics)) {
                        foreach ($articleTopics as $topic) {
                            $seo[] = trim($topic->getName($article->getLanguageId()));
                        }
                    }
                    break;
            }
        }
        $seo = trim(implode('-', array_filter($seo)), '-');
        $seo = preg_replace('/[\\\\,\\/\\.\\?"\\+&%:#]/', '', $seo);
        if (strlen($seo) > 0) {
            $seo = str_replace(' ', '-', $seo) . '.htm';
        }
        return $this->encode($seo);
    }