Ряд популярных плагинов для GetSimple CMS требуют от пользователя добавления параметров, необходимых для их работы, в ключевые слова страницы. Такой подход позволяет избавиться от необходимости добавлять специальные поля плагинов в форму редактора страниц, но приводит к замусориванию мета-данных, что негативно сказывается на эффективности SEO-оптимизации, а также ограничивает возможности вывода списков ключевых слов на страницах веб-сайта. Частичным решением описанных проблем является очистка списка ключевых слов от параметров плагинов.
Как правило, для отделения параметров плагинов от действительных ключевых слов, используется префикс — нижнее подчёркивание, например, _redirect=new-page
. Поэтому очистка ключевых слов страницы может быть выполнена при помощи собственной PHP функции.
/**
* Clean page meta keywords
*
* @global string $metak
* @param bool $echo
* @return string
*/
function get_clean_page_meta_keywords($echo = true) {
global $metak;
$myVar = encode_quotes(strip_decode($metak));
$myVar = array_map('trim', explode(',', $myVar));
$myVar = array_filter($myVar, function ($keyword) {
return stripos($keyword, '_') !== 0;
});
$myVar = implode(', ', $myVar);
if ($echo) {
echo $myVar;
} else {
return $myVar;
}
}
Приведённый код предназначен для использования в GetSimple CMS 3.3.x. При этом, для того, чтобы сохранить работу плагинов, использующих параметры, заданные в ключевых словах страницы, но обеспечить вывод корректного, с точки зрения SEO, списка ключевых слов в мета-теге keywords заголовка страницы, необходимо создать собственную функцию, заменяющую стандартную функцию get_header()
.
В GetSimple CMS 3.4.x данная задача решается значительно проще: для вывода очищенного списка ключевых слов в мета-теге keywords заголовка страницы следует использовать фильтр metak
.