Допустим, у вас есть доска объявлений под управлением MarketPlace 1.4.6 и вы решили продавать ссылки в таких системах как Sape,Xap. Но для начала вам нужно убрать все лишние ссылки со своих страниц, дабы уменьшить ссылочную массу и стать более привлекательной площадкой для оптимизаторов. Несмотря на то, что бытует мнение что, Яша не индексирует внешние ссылки с досок объявлений, это не всегда так. Как поступить с внешними ссылками, которые добавляют пользователи к своим объявлениям, я написал в текущем посте.
Открываем файл show_ad.php, который находиться в папке components/com_marketplace. Этот скрипт отвечает за вывод полного текста и контактов объявления. Находим 679 строку, которая выглядит следующим образом:
echo " <a href='http://".str_replace("http://", "", $ad_web)."' target='_blank'>".str_replace("http://", "", $ad_web)."</a>";
Эта строка отвечает за генерацию ссылки на сайт автора объявления. Для того, чтобы сделать ссылку просто текстом, то можно убрать тег a href, наример вот так:
echo " ".str_replace("http://", "", $ad_web)."";
Таким образом, для того, чтобы перейти на сайт автора объявления придется его скопировать вручную и вставить в поле браузера, что собственно совсем не удобно.
Если вы используете скрипт редиректа на своем сайте или блоге, то вполне реально встроить его в код show_ad.php, например у меня скрипт редиректа называет redir.php и все ссылки через него считаются поисковиками как внутренние:
echo " <a href='redir.php?url=".str_replace("http://", "", $ad_web)."' target='_blank'>".str_replace("http://", "", $ad_web)."</a>";
В сети можно найти множество примеров, которые реализуют обработку и вывод ссылок как вашей душе угодно, будь то, например, скрипт, упрощающий смену ссылок или просто генерация страницы с уже активной ссылкой для перехода.
Ну а если вы хотите просто скрыть ссылки от индексации роботом Яндекса, то можно использовать его же оружие, так называемый тег noindex, в объятия которого разместить собственно нашу ссылку:
echo " <noindex><a href='http://".str_replace("http://", "", $ad_web)."' target='_blank'>".str_replace("http://", "", $ad_web)."</noindex></a>";
Таким образом мы получаем неплохой результат, и посетители сайта довольны и вам минус одна внешняя ссылка на страницах ваших объявлений.
Хочу отметить внимание, что даже если пользователь не заполняет поле Web сайт, то скрипт по умолчанию все равно вставляет тег a href в код вывода объявления, таким образом если не произвести оптимизацию как я, то даже на пустых страницах роботы будут виcеть внешние ссылки, пусть и абсолютно никуда не ведущие, что тоже не есть гуд.
P.S. Как показала практика, в компоненте MarketPlace 1.4.6 есть еще одна вшитая ссылка на сайт автора без анкора, находиться она в файле marketplace.php.


2012 (11)

Комментарии
rassilkaservis.Ru/.../
файл marketplace.php, удаляй 112ую строчку.
Ссылка была очень хитро зашита в файле marketplace.php. Сама ссылка выводилась скриптом на (пробел). После удаления нужной строки в файле marketplace.php левая ссылка перестала появляться на сайте.
в файле show_index.php нет этой ссылки, если ее также нет в файле footer.php, то она может засесть где нить в шаблоне, что маловероятно.
Во всяком случае вы используете не стандартную сборку маркета, вопросы к авторам этой сборки можешь на форуме задать. в моей сборке такого косяка нет.
"
Пропишу по очереди в колонку то, что находится в строках echo ""; :
Вот. Я брал и удалял строки с тегом , но без положительного результата.
Ну не знаю, этот знак пробела ещё и ссылкой является на codingfish.com.
А кусок кода у меня такой:
echo "";
echo "";
echo "";
echo "";
include($mosConfig_a bsolute_path.'/components/com_marketplace/footer.php');
echo "";
echo "";
Если удалить строку "echo "";, то ничего не происходит, да и не логично, поскольку это парный тег.
Может ещё есть варианты решения?
открывай файл show_index.php, смотри после строки include($mosConfig_a bsolute_path.'/components/com_marketplace/footer.php'); в самом конце файле.
Это не черточка, а знак пробела так отображается
kupi-vse.com/.../
Чёрточка слева, прямо напротив копирайтов.