Как убрать в noindex ссылки из rss при выводе на сайте?

denntl
На сайте с 14.10.2007
Offline
112
869

Доброго времени суток. Есть источник rss, нужно выводить его на хтмл страничке так, чтоб исходящие ссылки были в noindex, а текст который находится между ссылками попал в индекс Я, кто подскажет как это реализовать? Сам код вывода rss в хтмл уже есть:



<?php
/**********************************************************
* Parse XML data into an array structure *
* Usage: array parse_rss ( string data ) *
**********************************************************/
function parse_rss($reg_exp, $xml_data) {
preg_match_all($reg_exp, $xml_data, $temp);
return array(
'count'=>count($temp[0]),
'title'=>$temp[1],
'link'=>$temp[2],
'desc'=>$temp[3],
'pubdate'=>$temp[4] //добавлено
);
}

/**********************************************************
* Parse Array data into an HTML structure *
* Usage: string parse_rss ( array data ) *
**********************************************************/
function output_rss($pattern, $rss_data) {
$temp = "";
for($i=0; $i<$rss_data['count']; $i++) {
$temp .= sprintf($pattern,
$rss_data['link'][$i],
html_entity_decode($rss_data['title'][$i]),
html_entity_decode($rss_data['desc'][$i]),
$rss_data['pubdate'][$i] //добавлено
);
}
return $temp;
}

/**********************************************************
* Settings *
**********************************************************/
$url = 'http://www.dsnews.com.ua/rss.php';

$reg_exp = '#<item>.*?<title>(.*?)<\/title>.*?';
$reg_exp .='<link>(.*?)<\/link>.*?<description>';
$reg_exp .='(.*?)<\/description>.*?<pubDate>'; //исправлено
$reg_exp .= '(.*?)<\/pubDate>.*?<\/item>#si'; //добавлено

$pattern = '<a href="%s">%s</a><br>%s<br>Date: %s<hr>';

/**********************************************************
* Main script *
**********************************************************/
if ( $xml_data = file_get_contents($url) ) {
$rss_data = parse_rss($reg_exp, $xml_data);
echo output_rss($pattern, $rss_data);
}
/**********************************************************
* The END *
**********************************************************/
?>

Заранее спасибо.

hp_wtf
На сайте с 24.05.2006
Offline
39
#1
denntl:
текст который находится между ссылками попал в индекс Я

Имеется ввиду анкор?

Заработай на дом (http://www.sape.ru/r.a731c522b8.php) и построй его (http://www.polarsip.ru/) :) Двигай статьями! (http://miralinks.ru/users/registration/from:1117)
denntl
На сайте с 14.10.2007
Offline
112
#2
hp_wtf:
Имеется ввиду анкор?

Нет, имеется введу текст новости под ссылкой, в noindex нужно убрать только ссылки. А может можно как-то через стили ??

hp_wtf
На сайте с 24.05.2006
Offline
39
#3
denntl:
Нет, имеется введу текст новости под ссылкой, в noindex нужно убрать только ссылки

Ну тогда надо просто поместить текст ссылки в noindex =)

$pattern = '<a href="%s">%s</a><br>%s<br>Date: %s<hr>';

заменить на

$pattern = '<noindex><a href="%s">%s</a></noindex><br>%s<br>Date: %s<hr>';
denntl
На сайте с 14.10.2007
Offline
112
#4
hp_wtf:
Ну тогда надо просто поместить текст ссылки в noindex =)
$pattern = '<a href="%s">%s</a><br>%s<br>Date: %s<hr>';

заменить на
$pattern = '<noindex><a href="%s">%s</a></noindex><br>%s<br>Date: %s<hr>';

Спасибо огромное! Я просто в пхп не очень..

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий