Гость
01 Дек 2013 10:31

компонент который почти не влияя на скорость загрузки страници (по сравнению с mijosef) довольно неплохо справляется с задачей генерации метаданных.

правда только для для статтей джумла.

имеет при этом для этого такой код

 // Get most often used keywords - do not replace keywords from EFSEO table

                    if(empty($metadata['keywords']))

                    {

                        $content_overwrite_keywords = $this->params->get('com_content_overwrite_keywords');

                        // Only set keywords automatically if no global keywords are entered or the overwrite option is enabled

                        if(empty($head['metaTags']['standard']['keywords']) OR !empty($content_overwrite_keywords))

                        {

                            $content_number_keywords = $this->params->get('com_content_number_keywords');

                            $content_blacklist_keywords = array_map('mb_strtolower', array_map('trim', explode(',', $this->params->get('com_content_blacklist_keywords'))));

                            $content_keywords_whole_text = $article['introtext'].' '.$article['fulltext'];

                            $pattern = array('@<[^>]+>@U', '@[,;:!"\.\?]@', '@\s+@');

                            $content_words_array = explode(' ', preg_replace($pattern, ' ', $content_keywords_whole_text));

                            $counter = array();

                            foreach($content_words_array as $value)

                            {

                                if(!empty($value))

                                {

                                    $value = mb_strtolower($value);

                                    if(!in_array($value, $content_blacklist_keywords))

                                    {

                                        if(isset($counter[$value]))

                                        {

                                            $counter[$value]++;

                                        }

                                        else

                                        {

                                            $counter[$value] = 1;

                                        }

                                    }

                                }

                            }

                            arsort($counter);

                            $content_keywords = implode(', ', array_keys(array_slice($counter, 0, $content_number_keywords)));

                            $document->setMetaData('keywords', $content_keywords);

                        }

                    }

                    // Generate the description - do not replace description from EFSEO table

                    if(empty($metadata['description']))

                    {

                        $content_overwrite_description = $this->params->get('com_content_overwrite_description');

                        // Only set description automatically if no global description is entered or the overwrite option is enabled

                        if(empty($head['description']) OR !empty($content_overwrite_description))

                        {

                            $content_description_select_text = $this->params->get('com_content_description_select_text');

                            $content_description_add_dots = $this->params->get('com_content_description_add_dots');

                            if($content_description_select_text == 0)

                            {

                                if(!empty($article['fulltext']))

                                {

                                    $content_description_whole_text = $article['fulltext'];

                                }

                                else

                                {

                                    $content_description_whole_text = $article['introtext'];

                                }

                            }

                            elseif($content_description_select_text == 1)

                            {

                                if(!empty($article['introtext']))

                                {

                                    $content_description_whole_text = $article['introtext'];

                                }

                                else

                                {

                                    $content_description_whole_text = $article['fulltext'];

                                }

                            }

                            elseif($content_description_select_text == 2)

                            {

                                $content_description_whole_text = $article['introtext'].' '.$article['fulltext'];

                            }

                            $pattern = array('@<[^>]+>@U', '@\s+@');

                            $content_description_whole_text = trim(htmlspecialchars(preg_replace($pattern, ' ', $content_description_whole_text)));

                            $content_number_description = $this->getCharactersLength('characters_description');

                            if(strlen($content_description_whole_text) > $content_number_description)

                            {

                                if(!empty($content_description_add_dots))

                                {

                                    $content_description = mb_substr($content_description_whole_text, 0, $content_number_description - 3).'...';

                                }

                                else

                                {

                                    $content_description = mb_substr($content_description_whole_text, 0, $content_number_description);

                                }

                            }

                            else

                            {

                                $content_description = $content_description_whole_text;

                            }

                            $document->setMetaData('description', $content_description);

                        }

                    }

                }

            }

тоесть основное здесь

  $content_keywords_whole_text = $article['introtext'].' '.$article['fulltext'];

можно ли эти переменные заменить на какие-то переменные кобальта чтобы осуществить генерацию метаданных. этим компонентом.

или выражаю пожелание создать собственную автогенерацию метаданных. (как есть в К2, например)

http://joomla-extensions.kubik-rubik.de/efseo-easy-frontend-seo#description сам плагин

Последние изменения: 14 Сен 2015


Гость
14 Сен 2015 11:07

Поддерживаю идею! Это актуально, сейчас делаю сайт и использую этот плагин, но вот в кобальте он не пашет...


Sergey
Total posts: 13,748
14 Сен 2015 15:50

Попросите разработчиков этого компонента сделать адаптацию на Кобальт.

Работает на Cobalt