Предистория тут и тут
Добавлено в версии 2.2
1. Обработка описания объекта InstantMaps
2. Добавлена проверка соответствия адреса ссылки и текущей страницы, если совпадает — ключ не обрабатывается.
3. Управление в каком контенте будет работать плагин вынесено в админку.
4. Управление обработкой ключей как корня слов теперь возможно для каждой отдельной пары, и введено понятие квантификатора — число символов до начала или после конца ключа, при котором слово будет оформлено ссылкой. Если квантификатор не указан, пара обрабатыватся как обычно.
пример|/primer.html|1 — слово "примеры" будет ссылкой, а слово "примерка" нет
Файлы тут.
Файлы для 1.10 тут.
Проверено на ICMS 1.9 и 1.8, при переустановке не забудьте сохранить свои пары ключ|ссылка.
Прикрутить к Универсальному каталогу и к "Вопросы и ответы" не получилось, там просто напросто нет событий GET_...
Это возможно при модификации самих компонентов, но выходит за рамки плагина.
P.S. Для поддержки InstantMaps в фронтенд компонента карт необходимо добавить
(в блоке ПРОСМОТР ОБЪЕКТА)
и в таблицу cms_event_hooks в базе данных добавить само событие GET_MAP_OBJECT, plugin_id для события можно посмотреть в таблице cms_plugins, он должен быть равен id элемента p_contextlinks.
Добавлено в версии 2.2
1. Обработка описания объекта InstantMaps
2. Добавлена проверка соответствия адреса ссылки и текущей страницы, если совпадает — ключ не обрабатывается.
3. Управление в каком контенте будет работать плагин вынесено в админку.
4. Управление обработкой ключей как корня слов теперь возможно для каждой отдельной пары, и введено понятие квантификатора — число символов до начала или после конца ключа, при котором слово будет оформлено ссылкой. Если квантификатор не указан, пара обрабатыватся как обычно.
пример|/primer.html|1 — слово "примеры" будет ссылкой, а слово "примерка" нет
Файлы тут.
Файлы для 1.10 тут.
Проверено на ICMS 1.9 и 1.8, при переустановке не забудьте сохранить свои пары ключ|ссылка.
Прикрутить к Универсальному каталогу и к "Вопросы и ответы" не получилось, там просто напросто нет событий GET_...
Это возможно при модификации самих компонентов, но выходит за рамки плагина.
P.S. Для поддержки InstantMaps в фронтенд компонента карт необходимо добавить
$item = cmsCore::callEvent('GET_MAP_OBJECT', $item);
и в таблицу cms_event_hooks в базе данных добавить само событие GET_MAP_OBJECT, plugin_id для события можно посмотреть в таблице cms_plugins, он должен быть равен id элемента p_contextlinks.
INSERT INTO `имя_базы`.`cms_event_hooks` (`id`, `event`, `plugin_id`) VALUES (NULL, 'GET_MAP_OBJECT', 'ИД-плагина');
Реклама #
mk727 12 лет назад #
Димитриус 12 лет назад #
sotastroy 12 лет назад #
googlebot 12 лет назад #
Димитриус 12 лет назад #
Делаете модуль, в нём настраиваете нужные вам поля.
В плагине делаете лоуд конфеиг, и из него тянете настройки очень удобно.
googlebot 12 лет назад #
lezginka.ru 12 лет назад #
Димитриус 12 лет назад #
Димитриус 12 лет назад #
googlebot 12 лет назад #
Димитриус 12 лет назад #
googlebot 12 лет назад #
Дмитрий 12 лет назад #
Сама ссылка генерируется
В чём проблема?
googlebot 12 лет назад #
lezginka.ru 12 лет назад #
googlebot 12 лет назад #
googlebot 12 лет назад #
mk727 12 лет назад #
googlebot 12 лет назад #
Константин Г. 12 лет назад #
googlebot 12 лет назад #
Кроме того, если малость подумать и переделать для линковки например характеристик каталога, объявлений и т.п., можно использовать и для людей...
Константин Г. 12 лет назад #
lezginka.ru 11 лет назад #
без обид.
googlebot 11 лет назад #
toropa 11 лет назад #
googlebot 11 лет назад #
Петр 11 лет назад #
вместо ключей сохраняется "Array"
googlebot 11 лет назад #
Петр 11 лет назад #
Vyatich 11 лет назад #
Плагин ранее не был установлен. С чем может быть связано?
Версия CMS- 1.10.1
Может что-то с правами? У меня самопальный сервер.
Vyatich 11 лет назад #
Vyatich 11 лет назад #
Vyatich 11 лет назад #
Странно, но как-то так...
tokarev 11 лет назад #
googlebot 11 лет назад #
toropa 11 лет назад #
wportal 11 лет назад #
пробовала на своем и дефолтном шаблоне
googlebot 11 лет назад #
Vyatich 11 лет назад #
Для того, что бы ссылка контекста открывалась в новом окне строку(у меня 137):
Thanatognozija 11 лет назад #
1. Видят ли поисковики все это чудо, как внутренние ссылки? Почему вопрос, потому, что я через админку не вижу появившихся ссылок, а вот на странице они есть.
2. Я так понял, что если я добавил ссылку вида пример|/primer.html, то я больше не могу слово "пример" перенаправить, скажем, на страницу пример|/primer1.html? То есть, одно слово, на одну страницу? Но ведь у меня статей со словом "Пример" может быть много? Или я могу писать там 300 раз одно и тоже слово и оно будет перенаправлять по очереди? Может кто-то сталкивался с таким?
googlebot 11 лет назад #
2. я не могу себе представить ситуации, когда бы понадобилось одну и ту же ключевую фразу направлять на разные страницы, по крайней мере с точки зрения SEO. Поисковик (за крайне редким исключением) все равно выберет 1 наиболее релевантную с его точки зрения. Если у Вас много статей по теме "Пример", создайте категорию "Пример", в которую поместите эти статьи и уже эту категорию прокачивайте.
Thanatognozija 11 лет назад #
googlebot 11 лет назад #
Thanatognozija 11 лет назад #
Vlad 11 лет назад #
googlebot 11 лет назад #
Vlad 11 лет назад #
Vlad 11 лет назад #
googlebot 11 лет назад #
Vlad 11 лет назад #
googlebot 11 лет назад #
Thanatognozija 11 лет назад #
googlebot 11 лет назад #
чтобы поправить, достаточно в регулярку добавить выражение типа <h[1-9][^>]*>[\W\w]*?<\/h[1-9]>, т.е. 160 строка должна выглядеть примерно так:
irbis 11 лет назад #
Что-то не получается получить рабочую версия. InstantCMS 1.10.1
Файлы все выложил, установил. Ссылки не появляются. Можно выложить последнюю рабочую версию или подскажите, в чем может быть проблема.
googlebot 11 лет назад #
irbis 11 лет назад #
Thanatognozija 10 лет назад #
Thanatognozija 10 лет назад #
irbis 11 лет назад #
if (!is_numeric($quant[$i])||$quant[$i] == 0) {
$pattern[$i] = '/\s('.trim($pattern[$i]).')\s/ius';
$replacement[$i] = ' <a href="'.$replacement[$i].'">$1</a> ';
} else {
$pattern[$i] = '/\s([A-Za-zа-яА-ЯёЁ0-9]{0,'.$quant[$i].'})('.trim($pattern[$i]).')([A-Za-zа-яА-ЯёЁ0-9]{0,'.$quant[$i].'})\s/ius';
$replacement[$i] = ' <a href="'.$replacement[$i].'">$1$2$3</a> ';
}
Помогло в моем случае. Версия InstantCMS 1.10.1.
Clear 10 лет назад #
googlebot 10 лет назад #
Thanatognozija 10 лет назад #
googlebot 10 лет назад #
Thanatognozija 10 лет назад #
Thanatognozija 10 лет назад #