0 Пользователей и 1 Гость просматривают эту тему.
  • 10 Ответов
  • 179 Просмотров
*

andragor

  • Осваиваюсь на форуме
  • 28
  • 5 / 0
Здравствуйте,

Кто-нибудь знает как можно сделать некликабельными ссылки на всех страницах, ссылающихся самих на себя? Плагин или хак какой-нибудь?
*

sivers

  • Захожу иногда
  • 259
  • 25 / 0
Системный плагин. Событие onAfterRender
Код
        global $app;
        if($app->isSite()){
            $body = $app->getBody();
            /* Здесь регулярным выражением ищите в $body ссылки на текущуую страницу и вырезаете их */
            $app->setBody($body);
        }
*

arma

  • Завсегдатай
  • 1504
  • 70 / 2
Ещё один совет сеошника? Глупасть
*

draff

  • Живу я здесь
  • 3682
  • 237 / 6
  • Ищу работу
Кто-нибудь знает как можно сделать некликабельными ссылки на всех страницах, ссылающихся самих на себя? Плагин или хак какой-нибудь?
Так удаление ссылок или отключение ? ВОт JavaScript , перед закрывающим  тегом body в шаблон. Скрипт с локалки, на хостинге нужно определиться с добавкой к  атрибуту
Код
	<script>
jQuery(function() {
jQuery('a').each( function(e) {
jQuery('a').on('click', function() {
let testim_href = 'http://localhost' + jQuery(this).attr('href');
// console.log(testim_href);
if(testim_href == "<?php echo JURI::current(); ?>") return false;;
});
});
});
</script>
« Последнее редактирование: 15.03.2019, 10:51:48 от draff »
Удалю вирус с сайта. Обновление Joomla!, JoomShopping, Virtuemart -> Коммерческий раздел     |    Отзывы
Создам плагин , модуль под заказ для VirtueMart , JoomShopping
*

andragor

  • Осваиваюсь на форуме
  • 28
  • 5 / 0

Системный плагин. Событие onAfterRender
Спасибо, а куда его вставлять, чтобы заработал?
Ещё один совет сеошника? Глупасть
Да, SEO-шник сказал, что ссылок со страницы на саму себя быть не должно. А почему глупость? Ссылку по этому вопросу не скинешь?
Так удаление ссылок или отключение ? ВОт JavaScript , перед тегом body в шаблон. Скрипт с локалки, на хостинге нужно определиться с добавкой к  атрибуту
Отключение скорее, чтобы вместо Ссылка было Ссылка.
Запихал скрипт в head и поправил localhost на https://www.moydomen.ru - не заработал. Что-то не так делаю?
*

sivers

  • Захожу иногда
  • 259
  • 25 / 0
Да, SEO-шник сказал, что ссылок со страницы на саму себя быть не должно.
В этом случае решения на JS/jQuery вам не подойдут - в коде страницы все ссылки будут на месте и роботы их увидят.

Как сделать плагин - там в плагинах даже заготовка есть. Но можете воспользоваться вот этим ресурсом: inet-reklama .com (сервисы => создание плагина). Там можно создавать пустые (почти) заготовки. Пользуюсь им, когда лень с нуля делать. Создайте там плагин, системное имя делайте на английском одним словом маленькими буквами, в событиях ставьте группу system и чекбокс на onAfterRender, можете заполнить остальные поля. Потом жмете "Сформировать плагин", сохраняете и устанавливаете (перед установкой полезно заглянуть внутрь архива, чтоб не думалось...).

После этого останется только регулярку правильно написать. С этим помогу.
*

draff

  • Живу я здесь
  • 3682
  • 237 / 6
  • Ищу работу
Запихал скрипт в head
Забыл уточнить
перед закрывающим  тегом body в шаблон.
На рабочем хостинге прописать https:/ . Joomla выводить ссылки относительно корня сайта /moydomen.ru . А лучше посмотреть в консоли, там же я оставил вывод закоментированным или в коде страницы
поправил localhost на https://www.moydomen.ru - не заработал. Что-то не так делаю?
Удалю вирус с сайта. Обновление Joomla!, JoomShopping, Virtuemart -> Коммерческий раздел     |    Отзывы
Создам плагин , модуль под заказ для VirtueMart , JoomShopping
*

andragor

  • Осваиваюсь на форуме
  • 28
  • 5 / 0
После этого останется только регулярку правильно написать. С этим помогу.

Плагин сделал, спасибо!
Код
class plgSystemNoselflinking extends JPlugin
{
/**
* Class Constructor
* @param object $subject
* @param array $config
*/
public function __construct( & $subject, $config )
{
parent::__construct( $subject, $config );
$this->loadLanguage();
}

function onAfterRender(){
global $app;
        if($app->isSite()){
            $body = $app->getBody();
            /* Здесь регулярным выражением ищите в $body ссылки на текущую страницу и вырезаете их */
            $app->setBody($body);
        }}
}
А как регулярку сделать? Например, для адреса: https://www.site.ru/cat/alias

draff, спасибо за уточнение, а твой плагин меняет код или только отображения на странице?
*

sivers

  • Захожу иногда
  • 259
  • 25 / 0
А как регулярку сделать?
Добавьте в плагин функцию с содержимым:
Код
    public function onAfterRender(){
        global $app;
        if($app->isSite()){
            $body = $app->getBody();
            $uri = $_SERVER['REQUEST_URI'];
            if(strpos($body, $uri) !== false && preg_match_all('|<a[^>]*href="[^"]*'.$uri.'"[^>]*>(.*)</a>|isU', $body, $pregs, PREG_SET_ORDER)){
                foreach($pregs as $preg){
                    $body = str_replace($preg[0], $preg[1], $body);
                }
                $app->setBody($body);
            }
        }
    }
Если сразу не заработает - пишите. В этом случае надо будет делать отладку RE на вашем сайте, потому как мог ошибиться (тестить не на чем).
« Последнее редактирование: 18.03.2019, 13:35:49 от sivers »
*

ChaosHead

  • Гуру
  • 5079
  • 440 / 13
Пользы от таких ссылок нет: https://devaka.ru/articles/selfie-experiment
Вред если и есть, то незначительный: https://searchengines.guru/showpost.php?p=8975876&postcount=39 (в целом согласен с этим мнением, т.к. на мой взгляд логично, но как вес считают поисковики - знают только поисковики, а это просто догадки)

Если всё другое на сайте уже сделали, то может и эти 0,001% дадут какой-то эффект. Однако чуть уменьшится ответ сервера при работе плагина и это так-же даст какой-то обратный эффект на -0,001%. Кто победит - неизвестно ;D, но сеошники зарплату получат :D

P.S. вон у Яндекса ссылка на саму себя в логотипе на главной https://yandex.ru, ничё, живёт как-то ;)
« Последнее редактирование: 18.03.2019, 14:35:29 от ChaosHead »
*

draff

  • Живу я здесь
  • 3682
  • 237 / 6
  • Ищу работу
draff, спасибо за уточнение, а твой плагин меняет код или только отображения на странице?
Делает не кликабельным ссылку. Это не плагин, а JavaScript.
Удалю вирус с сайта. Обновление Joomla!, JoomShopping, Virtuemart -> Коммерческий раздел     |    Отзывы
Создам плагин , модуль под заказ для VirtueMart , JoomShopping
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Ошибка wellcone to nginx и удаление сайта

Автор Anastasiia

Ответов: 1
Просмотров: 60
Последний ответ 07.03.2019, 09:11:31
от arma
301-редирект с рф на ru для конкретных страниц

Автор nrc

Ответов: 1
Просмотров: 66
Последний ответ 21.02.2019, 12:14:22
от voland
Перенос сайта и проблемы с редиректом ссылок

Автор Cristalliza

Ответов: 0
Просмотров: 91
Последний ответ 30.01.2019, 23:42:56
от Cristalliza
Предупреждение: Удаление не допускается

Автор Артём46

Ответов: 15
Просмотров: 263
Последний ответ 24.01.2019, 15:13:49
от Артём46
Каноничность AMP страниц для Google

Автор praj2019

Ответов: 9
Просмотров: 320
Последний ответ 11.01.2019, 21:31:05
от ChaosHead