Создал новый тип контента — блоги. (Отступление, до этого в других типах всё SEO забивал руками). Выставил все галочки чтобы автоматом воспроизводилось (про то что на лету делается, в курсе). Установил шаблон Tseso с нуля (стоит default) для проверки может шаблон гонит. Систему 2.13.1 скачивал с сайта в мае этого года. Не идёт автоматом, не появляется даже тег description в исходном коде сайта.
На другом сайта работает, но там я аж с 2.9 сижу и до 2.13.1 летом обновился. Подскажите, куда копать еще? В бд тоже вроде нормально всё, все поля стоят.
Пробовал убирать автомат, чтобы пустые были поля сео при содании записи. И всё равно нет.
Менял еще на другой редактор. Тоже ничего.
InstantCMS 2.X
2.13.1
Не идёт автоматом, не появляется даже тег description в исходном коде сайта.
Пробовал убирать автомат, чтобы пустые были поля сео при содании записи. И всё равно нет.
Возможно какие то поля мета описаний уже заполнены и надо сделать запрос в базу что бы их очистить:
github.com/instantsoft/icms2/issues/1039#issuecomment-479060910
#3
16 сентября 2020 в 15:51
Каким-то волшебным образом, в конфигурационном файле config.php выставлено — 'is_no_meta' => NULL. По идее поле давно было заполнено.
Непонятна механика тогда. На файл config.php стоят права 644, и нормально всё записывалось (либо запись в БД идет, или в переменные php?).
Сейчас поменял права на 666, нормально записалось это значение.
Как я это выяснил:
Файл system-core-template.php. Не выполняется условие: 108 строка
if (!$is_no_def_meta){
$this->metakeys = $this->site_config->metakeys;
$this->metadesc = $this->site_config->metadesc;
}
Ну и соответственно в том же файле:
if ($is_seo_meta){
if (!empty($this->metakeys) && empty($this->site_config->disable_metakeys)){
echo "\t". '<meta name="keywords" content="'.html((!empty($this->metakeys_item)? string_replace_keys_values_extended($this->metakeys, $this->metakeys_item): $this->metakeys), false).'">'. "\n";
}
if (!empty($this->metadesc)){
echo "\t". '<meta name="description" content="'.html((!empty($this->metadesc_item)? string_replace_keys_values_extended($this->metadesc, $this->metadesc_item): $this->metadesc), false).'">' ."\n";
Но всё равно пока что не идёт. Пока копаю.
Непонятна механика тогда. На файл config.php стоят права 644, и нормально всё записывалось (либо запись в БД идет, или в переменные php?).
Сейчас поменял права на 666, нормально записалось это значение.
Как я это выяснил:
Файл system-core-template.php. Не выполняется условие: 108 строка
if (!$is_no_def_meta){
$this->metakeys = $this->site_config->metakeys;
$this->metadesc = $this->site_config->metadesc;
}
Ну и соответственно в том же файле:
if ($is_seo_meta){
if (!empty($this->metakeys) && empty($this->site_config->disable_metakeys)){
echo "\t". '<meta name="keywords" content="'.html((!empty($this->metakeys_item)? string_replace_keys_values_extended($this->metakeys, $this->metakeys_item): $this->metakeys), false).'">'. "\n";
}
if (!empty($this->metadesc)){
echo "\t". '<meta name="description" content="'.html((!empty($this->metadesc_item)? string_replace_keys_values_extended($this->metadesc, $this->metadesc_item): $this->metadesc), false).'">' ."\n";
Но всё равно пока что не идёт. Пока копаю.
Сегодня в 15:00
#4
16 сентября 2020 в 15:52
Rainbow, спасибо, но там null везде.
А шаблоны генерации стоят?
"Фары протер… колеса попинал… ну, тогда я не знаю..."
Там всё работает по умолчанию обычно без танцев с бубном...
"Фары протер… колеса попинал… ну, тогда я не знаю..."
Там всё работает по умолчанию обычно без танцев с бубном...
Нет, никогда не стояли. Причём работает на другом сайте, где не выставлено. Я вообще 1 раз вижу такие шаблоны. В документации не видел тоже.
Но где логика, хотя вы в браузере должны выводитья хоть пустые теги. Получается надо отследить дальше путь от переменной, почему условие выше не выполняется.
Но где логика, хотя вы в браузере должны выводитья хоть пустые теги. Получается надо отследить дальше путь от переменной, почему условие выше не выполняется.
Нет, никогда не стояли.
Они по умолчанию при установке системы стоят...
{content|string_get_meta_keywords} {content|string_get_meta_description}
а еще поддерживает другие паттерны:
docs.instantcms.ru/manual/settings/seo-patterns
Но где логика, хотя вы в браузере должны выводитья хоть пустые теги
В смысле в head нет даже не заполненных мета description? тогда не знаю…
#8
16 сентября 2020 в 17:26
Сколько раз устанавливал цмску, а таких паттернов не видел. Может они есть в файле php, который в вики указан. Отужинаю и буду смотреть. Спасибо за паттерн.
#9
16 сентября 2020 в 18:28
Может поможет по Вашему вопросу:
/novosti/release2122.html#comment_110901
/novosti/release2122.html#comment_110901
#10
17 сентября 2020 в 08:23
Rainbow, спасибо. Использовал паттерны, заработало. Но честно, нигде их не встречал, в документации тоже нету в самой. Конечно, они есть в хелпер файле(который указан в вики) как функция. Но откуда ж знать любителю-программисту про это. Ну и еще путаницы добавляет, что на другом сайте эти паттерны не указаны, а все работает.
Пытался отследить сегодня куда ведут концы, но чет неосилил. В общем главное работает.
Пытался отследить сегодня куда ведут концы, но чет неосилил. В общем главное работает.