Доброго времени суток, друзья!
Представляю вашему вниманию новую разработку. Те, кто следил за темой, уже в курсе. Особого интереса тема не вызвала, да и как обычно, желающих
потестировать нашлось немного. Тем не менее, ОГРОМНОЕ СПАСИБО тем, кто участвовал. Для полного теста в таком темпе нет времени. На носу отпуск, поэтому решил выложить разработку, чтобы осталось пару дней для исправления, если всё же найдутся критические ошибки. В целом, вроде бы всё работает. Почему говорю, вроде бы? Потому что разработка охватывает всю систему. Поэтому возможно всё.
Описание: Разработка позволяет переопределить seo-параметры для каждой страницы. Под seo-параметрами понимается uri страницы, заголовок страницы(то что находится между тегами <title></title>), ключевые слова(meta-тег keywords), описание(meta-тег description). URI можно переопределить для любой страницы сайта, остальные параметры только для тех страниц, которые являются результатом работы какого-либо компонента. Чтобы было понятнее, опишу, что делает компонент и что делает плагин.
Итак, КОМПОНЕНТ обеспечивает удобной админкой для редактирования и занесения данных в БД. Вторая задача компонента — переопределение uri. Как это происходит? В систему заложена работа файла custom_rewrite.php, схожего с файлом url_rewrite.php, про который все слышали и который является внутренней эмуляцией mod_rewrite. В этот файл можно записать определенные правила, написанные с применением регулярных выражений. И в соответствии с этими правилами будет происходить замена url. Эти правила можно заносить вручную. Но это создает определнные трудности. Компонент обеспечивает простое создание правил для переопределения url. В данной версии поддерживаются только простые правила. Явное соответствие определенному uri и явная замена другим. Шаблоны
не поддерживаются.
ПЛАГИН обеспечивает замену других seo-параметров. Привязан к событию работы компонента. Поэтому плагин будет работать только на тех страницах, которые являются результатом работы какого-либо компонента. В админке плагина можно включить "быстрые ссылки". Если включено, то на страницах сайта на фронтенде появится ссылка на страницу добавления или редактирования в админке.
УСТАНОВКА.
1. Скачиваем архив.
2. Если у вас уже существует файл custom_rewrite.php, то смержим данный файл с архива с вашим файлом(это означает, что правила
с вашего файла заносите в файл с архива)
3. Заливаем архив на хостинг.
4. Устанавливаем компонент seo_page (SEO страницы).
5. Устанавливаем соответсвующий плагин.
6. Включаем плагин.
7. Если нужно, в настройках плагина включаем "быстрые ссылки".
КАК РАБОТАТЬ? После установки, идем в админку компонента "SEO страницы". Админка схожа с админкой других компонентов.
Нажимаем кнопку "Новая SEO-страница", появится страница добавления. Имейте ввиду, что SEO-страница в разработке позиционируется с одной страницей во фронтенде и одним правилом в файле custom_rewrite.php. Обратите внимание, обязательно нужно заполнить только одно поле "Текущий URI", остальные поля необязательны. Если какое-то поле не заполнено, то остается прежнее значение, определяемое системой или каким-либо компонентом. Примеры как вводить uri смотрите пояснительные записи в админке. После заполнения нужных пунктов сохраняем seo-страницу.
Можно заменить любой ури на любой ури. Главное, чтобы ури, на который меняете текущий, был уникальным для сайта.
ВАЖНО. Чтобы работал плагин, нужно будет внести небольшое изменение в файл ядра /core/cms.php. Это строка примерно 1723
$is_component = false;
Заменяем на:
$is_component = true;
Это, как я понял, небольшой недочет. Видимо никто не использовал событие AFTER_COMPONENT_'.mb_strtoupper($component), поэтому и не заметили. По названию событие должно работать после работы компонента. Но из-за вышеуказанного флага оно не работает вообще. И вообще, этот флаг можно убрать, имхо.
СКАЧАТЬ АРХИВ
PS. Замену по шаблону пока не стал делать. Просто не успею. Сами шаблоны несложно, сложнее сделать их добавление в админке. Это надо обдумать. Возможно, когда будет посвободнее, доделаю. Сегодня-завтра в блоге постараюсь выложить инструкцию, как можно написать шаблон для смены url.
Приятного пользования!
Обновляемся как обычно. Перезаливаем архив. Идем в админку. В админке Компоненты->Установить компоненты.
"Найдены компоненты, доступные для установки:", нажать на ссылку "SEO-страницы v1.1.0 > 1.1.1".
Представляю вашему вниманию новую разработку. Те, кто следил за темой, уже в курсе. Особого интереса тема не вызвала, да и как обычно, желающих
потестировать нашлось немного. Тем не менее, ОГРОМНОЕ СПАСИБО тем, кто участвовал. Для полного теста в таком темпе нет времени. На носу отпуск, поэтому решил выложить разработку, чтобы осталось пару дней для исправления, если всё же найдутся критические ошибки. В целом, вроде бы всё работает. Почему говорю, вроде бы? Потому что разработка охватывает всю систему. Поэтому возможно всё.
Описание: Разработка позволяет переопределить seo-параметры для каждой страницы. Под seo-параметрами понимается uri страницы, заголовок страницы(то что находится между тегами <title></title>), ключевые слова(meta-тег keywords), описание(meta-тег description). URI можно переопределить для любой страницы сайта, остальные параметры только для тех страниц, которые являются результатом работы какого-либо компонента. Чтобы было понятнее, опишу, что делает компонент и что делает плагин.
Итак, КОМПОНЕНТ обеспечивает удобной админкой для редактирования и занесения данных в БД. Вторая задача компонента — переопределение uri. Как это происходит? В систему заложена работа файла custom_rewrite.php, схожего с файлом url_rewrite.php, про который все слышали и который является внутренней эмуляцией mod_rewrite. В этот файл можно записать определенные правила, написанные с применением регулярных выражений. И в соответствии с этими правилами будет происходить замена url. Эти правила можно заносить вручную. Но это создает определнные трудности. Компонент обеспечивает простое создание правил для переопределения url. В данной версии поддерживаются только простые правила. Явное соответствие определенному uri и явная замена другим. Шаблоны
не поддерживаются.
ПЛАГИН обеспечивает замену других seo-параметров. Привязан к событию работы компонента. Поэтому плагин будет работать только на тех страницах, которые являются результатом работы какого-либо компонента. В админке плагина можно включить "быстрые ссылки". Если включено, то на страницах сайта на фронтенде появится ссылка на страницу добавления или редактирования в админке.
УСТАНОВКА.
1. Скачиваем архив.
2. Если у вас уже существует файл custom_rewrite.php, то смержим данный файл с архива с вашим файлом(это означает, что правила
с вашего файла заносите в файл с архива)
3. Заливаем архив на хостинг.
4. Устанавливаем компонент seo_page (SEO страницы).
5. Устанавливаем соответсвующий плагин.
6. Включаем плагин.
7. Если нужно, в настройках плагина включаем "быстрые ссылки".
КАК РАБОТАТЬ? После установки, идем в админку компонента "SEO страницы". Админка схожа с админкой других компонентов.
Нажимаем кнопку "Новая SEO-страница", появится страница добавления. Имейте ввиду, что SEO-страница в разработке позиционируется с одной страницей во фронтенде и одним правилом в файле custom_rewrite.php. Обратите внимание, обязательно нужно заполнить только одно поле "Текущий URI", остальные поля необязательны. Если какое-то поле не заполнено, то остается прежнее значение, определяемое системой или каким-либо компонентом. Примеры как вводить uri смотрите пояснительные записи в админке. После заполнения нужных пунктов сохраняем seo-страницу.
Можно заменить любой ури на любой ури. Главное, чтобы ури, на который меняете текущий, был уникальным для сайта.
ВАЖНО. Чтобы работал плагин, нужно будет внести небольшое изменение в файл ядра /core/cms.php. Это строка примерно 1723
$is_component = false;
Заменяем на:
$is_component = true;
Это, как я понял, небольшой недочет. Видимо никто не использовал событие AFTER_COMPONENT_'.mb_strtoupper($component), поэтому и не заметили. По названию событие должно работать после работы компонента. Но из-за вышеуказанного флага оно не работает вообще. И вообще, этот флаг можно убрать, имхо.
СКАЧАТЬ АРХИВ
PS. Замену по шаблону пока не стал делать. Просто не успею. Сами шаблоны несложно, сложнее сделать их добавление в админке. Это надо обдумать. Возможно, когда будет посвободнее, доделаю. Сегодня-завтра в блоге постараюсь выложить инструкцию, как можно написать шаблон для смены url.
Приятного пользования!
UPDATE 15.07.2012
Архив обновлен. Исправлена критическая ошибка, возникающая при деактивации seo-страницы. При деактивации seo-страницы с id, например, равным 1, некорректно деактивировались и страницы id = 1*. Изменения затронули только файл /admin/components/seo_page/backend.php. У кого установлено, перезалейте.UPDATE_2 15.07.2012
Архив обновлен. Исправлена ошибка, связанная с применением уникальных индексов в БД. В связи с чем невозможно было создавать более 1-й seo-страницы без параметра "URI замены". Для того, чтобы легче было исправить баг, было решено повысить версию компонента. Поэтому в архиве теперь версия 1.1.1. Не удивляйтесь такому быстрому скачку с версии 1.0.0. В файле install.php предыдущей версии по ошибке, чисто механически была указана версия 1.1.0. Поэтому, чтобы система увидела компонент для обновления пришлось указать версию 1.1.1.Обновляемся как обычно. Перезаливаем архив. Идем в админку. В админке Компоненты->Установить компоненты.
"Найдены компоненты, доступные для установки:", нажать на ссылку "SEO-страницы v1.1.0 > 1.1.1".
Реклама #
RIM5 12 лет назад #
А для разделов статей тоже можно будет настроить seo-теги?
Марат 12 лет назад #
Алексей Т 12 лет назад #
Спасибо
Крот 12 лет назад #
kaless 12 лет назад #
Марат 12 лет назад #
googlebot 12 лет назад #
Марат 12 лет назад #
lezginka.ru 12 лет назад #
Александр 12 лет назад #
Александр 12 лет назад #
KS 12 лет назад #
Positive 12 лет назад #
Первый - нужно то же самое, но уже для версии на utf-8. Её многие очень-очень ждут, даже проекты не начинают делать.
Второй - невозможность "автоматизации" назначения вложенности. Если бы движок управлялся одним админом, то больше ничего не надо было бы. Но здесь же пользователи, регистрации, у каждого свой контент... Опубликует кто-то статью, и пока админ доберётся до сайта чтобы изменить ссылку по своему замыслу, на статью уже появятся ссылки с других сайтов. Админ изменит uri, и эти ссылки уже не актуальны... А когда пользователей много, и все публикуют...
Короче, Компонент ОЧЕНЬ ТРЕБУЕТ ДАЛЬНЕЙШЕГО РАЗВИТИЯ!!!
Марат 12 лет назад #
По утф-8, только в августе. После отпуска. Пока никак не успею.
По шаблонам, как раз работаю над этим. Вроде бы нашел решение, но нужно потестировать. Сегодня-завтра попробую выложить инструкцию. Но будет не в рамках компонента. Но тоже не сложно. Пару строчек в файле ядра, ну и сами шаблоны. Пока не точно. Если будет всё работать.
А ссылки с других сайтов, вроде не страшно. От старого адреса идет 301-редирект на новый. Только не знаю, передается ли при этом статический вес. Спецы, что скажут?
У разработки есть ещё одно назначение - другие seo-параметры, которые тоже иногда важны. Например тайтлы. Это уже нужно отдельно для каждой страницы.
Positive 12 лет назад #
Очень хорошо, что продолжаешь разработку! Тайтлы тоже важны.
.... 12 лет назад #
AlexSF 12 лет назад #
Но всёже попытаюсь разъяснить. Если вы не заметили, то обратите внимание, что при создании разделов контента не предоставляется возможность заполнять - заголовок страницы, ключевые слова и описания - для создаваемых страниц. А просто добавляет эти значения из главных настроек сайта. Что приводит к дублям - заголовков страниц, ключевых слов и мета описаний. Что пагубно влияет на СЕО вашего сайта. Это относится не только к разделам статей, но и практически ко всем компонентам.
Так вот, главная задача этого компонента - исправление данной оплошности.
Марат 12 лет назад #
AlexSF 12 лет назад #
Работает великолепно, почти...
Короче, столкнулся с проблемкой.
Установил компонент, плагин, исправил на $is_component = true;
Создал первую СЕО страницу.
Начал создавать вторую.
Нажимаю создать/сохранить , а в ответ Запись не была добавлена в БД. Пытаюсь повторить, но эффект тот-же.
Удаляю первую страницу. И создаю другую - всё ОК, страница создалась со следующим номером ID. Но получить список из двух и более страниц так и не получилось.
Если я чего не так делаю прошу указать на ошибки.
Спасибо.
Марат 12 лет назад #
maia 12 лет назад #
lezginka.ru 12 лет назад #
http://instantcms.ru/blogs/seo-vs-instantcms/nemnogo-optimizaci-ne-pomeshaet.html
Марат 12 лет назад #
Марат 12 лет назад #
Спасибо maia, что заметила и сообщила!
Марат 12 лет назад #
Благодаря пользователю AlexSF была выявлена ещё одна ошибка. Подробности в посте UPDATE_2 15.07.2012. Спасибо, AlexSF!
Это всё maia виновата, говорит волшебник. Вот и сглазила ))). А если серьезно, противопоказано летом работать. Невозможно сосредоточиться в полной мере. Поэтому и ошибки. Ещё и с отпуска пришлось сорваться раньше времени. Обстоятельства...
AlexSF 12 лет назад #
Надеюсь это не я из отпуска вырвал )))
Марат 12 лет назад #
ermakover 12 лет назад #
Но вот у меня не получается поставить SEO, например, на раздел доски объявлений. То есть адрес раздела меняется на новый, а заголовок страницы, ключевые слова и описание остаются прежними.
Может быть, я чего не так делаю?
ermakover 12 лет назад #
Man 12 лет назад #
Как вы разобрались?
Man 12 лет назад #
vpugachev 12 лет назад #
Сомнение пока у меня вызывает только то, что если я например заменил ури board/13 на nedvizhimost.html но все равно во всех компонентах и модулях сайта ссылки будут board/13 а уже потом будет переадресовываться на nedvizhimost.html. Т.е. если специально не ставить где то ссылку на nedvizhimost.html то получается на сайте не будет ни одной ссылки на неё. Как с точки зрения ПС это будет выглядеть?
letsgo 12 лет назад #
Михаил 12 лет назад #
Не писали ли какой скрипт, чтобы с базы данных, все записи по сео перезаливались в файл?
Марат 12 лет назад #
Странный глюк. Сам использую компонент, пока всё нормально. Вручную не редактировали файл custom_rewrite.php? Желательно не трогать.
Вроде бы понял причину, из-за чего может быть. По какой то причине не подставился id записи, нужно ввести проверку. Исправлю.
Если не срочно, потерпите немного. В течении недели постараюсь сделать скрипт для восстановления файла из БД.
Михаил 12 лет назад #
<?php
function custom_rewrite_rules(){
ВСТАВЛЯЕМ ТЕКСТ
//строчку ниже не убирать, это заглушка. Чтобы не выкидывало на 404 страницу при пустом файле
//применительно к компоненту seo-page
$rules[] = '';
return $rules;
}
?>
Михаил 12 лет назад #
Михаил 12 лет назад #
Есть компонент для инстанта - sitemap карта сайта, назначение думаю понятно.
Но все карты он делает со старыми не сео ссылками, есть ли смысл тогда использовать его или все норм, или использовать другой какой сайтмеп генератор?
Reborn 12 лет назад #
Dost 12 лет назад #
+++
Reborn 12 лет назад #
Man 12 лет назад #
В чем может быть причина, кто знает?
Man 12 лет назад #
Имеет ли смысл создавать сео-страницу для доски объявлений, если после этого не работает сортировка?
Apsent 10 лет назад #
Марат 10 лет назад #
Компонент меняет ури, формируемый компонентом, на задаваемый пользователем.
Большинство функций компонентов(всякие фильтры, шаблоны...) привязаны к ури, который формируется компонентом.
Так что вполне возможно, что эти функции перестанут работать. Это нормально.
Сам пользуюсь компонентом и пока что не возникало таких проблем. Из-за чего? Потому что не стоит все страницы загонять под компонент. Это в основном ВЧ или СЧ, в основном, главная страница какого-то компонента или страница категории. И ни разу не попадалась страница с фильтрами.
Если что-то не работает, выбор за вами. Скорее всего, лучше убрать сео-ури с этой страницы.
Apsent 10 лет назад #
Марат 10 лет назад #
Bubble Gumoff 12 лет назад #
а старая ссылка писалась в файл, в htaccess c rewrite 301
Чтобы во всех компонентах ссылка соответствовала новой seo ссылке.
но все равно во всех компонентах и модулях сайта ссылки будут board/13
а уже потом будет переадресовываться на nedvizhimost.html.
Т.е. если специально не ставить где то ссылку на nedvizhimost.html то получается
на сайте не будет ни одной ссылки на неё. Как с точки зрения ПС это будет выглядеть?
Марат 12 лет назад #
Поэтому везде останутся ссылки на старый адрес, а уже оттуда 301-редирект на новый. Ну если только ручками писать. При желании можно и ручками вписать в меню. При создании меню можно выбрать урл и вписать ручками. В остальных местах уже никак.
Не думаю, что это так критично. По-крайней мере, у меня работает на сайте.
Не знаю, передается ли при 301 редиректе вес страницы. Если да, то вообще без проблем.
mr.Z 12 лет назад #
mr.Z 12 лет назад #
Вот изображение на нем 2 варианта альтернативного URL
При первом варианте страница получается третьего уровня вложенности,
При втором варианте 2 уровня вложенности
Я правильно это понимаю? или же ошибаюсь?
(Компонент доска объявлений)
Марат 12 лет назад #
Уровень вложенности - это немного другое. Вложенность - это количество кликов от главной, пока не откроется нужная страница. Поэтому при обоих вариантах будет 2-й уровень вложенности. Но всё же поисковики лучше реагируют, если ключевик в урл расположен ближе к началу(в идеале поддомен - ключевик.домен.ру ). Поэтому второй вариант лучше. Но тут есть один маленький нюанс. Если мы так задаем урл(не указывая board), то в дальнейшем исключается создание в корневом разделе статьи с урл-ом nedvigimost. Потому как мы теряем board. И если даже мы создадим статью с названием "Недвижимость", то если перейти по его урлу, мы попадем на /board/nedvigimost. Статья будет недоступна.
Man 12 лет назад #
Марат 12 лет назад #
Но всё же нельзя будет создать раздел "Недвижимость" )))
Man 12 лет назад #
Слово недвижимость можно транслитирировать разными способами:
1. nedvigimost
2. nedvizhimost
AlexSF 12 лет назад #
УРАаааааа у меня всё работает.
Для полного "феншуя" понадобилось перекодировать в UTF-8 только один файл:
\admin\components\seo_page\backend.php
ОГРОМНОЕ СПАСИБО тебе Марат
AlexSF 12 лет назад #
перекодировал его весь в UTF-8. Единственный файлом где понадобилось кроме мышки использовать
ещё и клавиатуру был С:\SEO_PAGES_V.1.1.1\components\seo_page\install.sql
ENGINE=MyISAM DEFAULT CHARSET=cp1251;
заменил на
ENGINE=MyISAM DEFAULT CHARSET=utf8;
afinskiy 11 лет назад #
Марат 11 лет назад #
Dorimen 11 лет назад #
Dim@sik 11 лет назад #
ermakover 11 лет назад #
Apsent 10 лет назад #
Старый балбес 10 лет назад #
Марат 10 лет назад #
На 1.10.4 тоже должно работать.
Apsent 10 лет назад #
Gesser 9 лет назад #