WordPress: Яндекс.Блоги вместо Technorati
December 5, 2006 – 7:03 pmЭтот небольшой хак панели управления WordPress позволит вам получать список входящих ссылок по результатам выдачи Яндекс.Блогов вместо Technorati.
Открываем файл /wp-admin/index.php, примерно в районе 20-й строки ищем следующий блок кода:
<?php
$rss = @fetch_rss(’http://feeds.technorati.com/cosmos/rss/?url=’. trailingslashit(get_option(’siteurl’)) .’&partner=wordpress’);if ( isset($rss->items) && 0 != count($rss->items) ) {
?>
<div id=”incominglinks”>
<h3><?php _e(’Incoming Links’); ?> <cite><a href=”http://www.technorati.com/search/<?php echo trailingslashit(get_option(’siteurl’)); ?>?partner=wordpress”><?php _e(’More’); ?> »</a></cite></h3>
<ul>
<?php
$rss->items = array_slice($rss->items, 0, 10);
foreach ($rss->items as $item ) {
?>
Заменяем его на следующий код:
<?php
$rss = @fetch_rss(’http://blogs.yandex.ru/search.rss?link=’. trailingslashit(get_option(’siteurl’)). ”);if ( isset($rss->items) && 0 != count($rss->items) ) {
?>
<div id=”incominglinks”>
<h3><?php _e(’Incoming Links’); ?> <cite><a href=”http://blogs.yandex.ru/search.xml?link=<?php echo trailingslashit(get_option(’siteurl’)); ?>”><?php _e(’More’); ?> »</a></cite></h3><?php
$rss->items = array_slice($rss->items, 0, 10);
foreach ($rss->items as $item ) { /* converting link title from Win-1251 to UTF-8 */ $item['title'] = iconv(”CP1251″, “UTF-8″, $item['title']);
?>
Update: видимо в WordPress 2.0.5 принудительно перекодировать заголовок ссылки не нужно, т.е. строку /* converting link title from Win-1251 to UTF-8 */ $item['title'] = iconv(”CP1251″, “UTF-8″, $item['title']); можно просто убрать.
RSS
декабря 5, 2006 at 7:05 pm
Обсудите эту новость на news2.ru
декабря 5, 2006 at 8:14 pm
да ты хакир йопта!
декабря 5, 2006 at 9:43 pm
спасибо! отличный пост…
декабря 5, 2006 at 10:32 pm
велкам
декабря 5, 2006 at 10:33 pm
кулхацкер, йопто!
декабря 6, 2006 at 10:11 am
у меня выдает ошибку )))
декабря 6, 2006 at 10:15 am
ругается на отсутствие iconv?
декабря 6, 2006 at 11:10 am
Parse error: parse error, unexpected ‘:’ in /home/yiyjabkfoz/skomi.com/wp-content/themes/blue/index.php on line 21
декабря 6, 2006 at 11:16 am
у меня вот такой код в начале страницы…может подскажете что исправть…я в php не силен )))
“>
Digg
“>Del.icio.us
декабря 6, 2006 at 11:21 am
блин ! прошу прощения. хотел указать код (((
декабря 6, 2006 at 12:18 pm
Parse error: parse error, unexpected ‘:’ in /home/yiyjabkfoz/skomi.com/wp-content/themes/blue/index.php on line 21
так это проблема в файле темы, а не в /wp-admin/index.php.
видимо вы там что-то не то поменяли. попробуйте зайти сразу в панель администратора: skomi.com/wp-admin/
декабря 6, 2006 at 1:34 pm
ну да перепутал
но ошибка все равно вылазит хоть тресни….
декабря 6, 2006 at 1:36 pm
и как правильно настроить плагин для picasa ? установил его а где настройки. прошу не пинать - я только учусь )))
декабря 6, 2006 at 2:14 pm
перепроверьте все одинарные и двойные кавычки. при копировании кода прямо с этой страницы они могут быть заменены на знак вопроса.
еще я столкнулся с одной странной вещью. в одном моём блоге заголовки ссылок приходится перекодировать ($item[’title’] = iconv(”CP1251″, “UTF-8″, $item[’title’]);) а в другом - нет.
первый блог работает на движке WordPress MU 1.0, второй под 2.0.5.
декабря 6, 2006 at 2:15 pm
это не просто плагин, а виджет. для того, чтобы он заработал нужно установить Widgets Plugin (widgets.wordpress.com)
декабря 6, 2006 at 3:52 pm
все равно ошибка ! все проверил !
$rss = @fetch_rss(’http://blogs.yandex.ru/search.rss?link=’. trailingslashit (get_option(’siteurl’)). ’’);
ругается именно вот на эту строчку…
кодировка у меня стоит по умолчанию….
декабря 6, 2006 at 4:03 pm
самые последние две кавычки должны быть одинарными.
какая именно ошибка?
декабря 6, 2006 at 5:13 pm
Parse error: parse error все таже
декабря 6, 2006 at 5:18 pm
Parse error: parse error, unexpected T_STRING
декабря 6, 2006 at 5:28 pm
исправил все кавычки стало выдавать такое
Parse error: parse error, unexpected $ in /home/yiyjabkfoz/skomi.com/wp-admin/index.php on line 166
это последняя строка в файте
декабря 6, 2006 at 6:19 pm
перед какой-то переменной не хватает знака $ или где-то отсуствует точка с запятой. советую вернуть на место старый файл и поменять только вот эту строчку: (’http://feeds.technorati.com/cosmos/rss/?url=’. trailingslashit(get_option(’siteurl’)) .’&partner=wordpress’);
на вот эту: (’http://blogs.yandex.ru/search.rss?link=’. trailingslashit(get_option(’siteurl’)). ‘’);
для того, чтобы указать фид, и вот эту <a href=”http://www.technorati.com/search/< ?php echo trailingslashit(get_option(’siteurl’)); ? rel="nofollow">?partner=wordpress”>
на вот эту <a href=”http://blogs.yandex.ru/search.xml?link=< ?php echo trailingslashit(get_option(’siteurl’)); ? rel="nofollow">”> чтобы ссылка вела на сайт я.блоги вместо технорати.
ну и можно в конце добавить /* converting link title from Win-1251 to UTF-8 */ $item[’title’] = iconv(”CP1251″, “UTF-8″, $item[’title’]); если русские символы не будут правильно отображаться.
мая 6, 2007 at 7:13 pm
Для версии 2.1.2 и скорее всего более старших версий
функция находится в файле wp-admin/index-extra.php
Ищите строчку
case ‘incominglinks’ :
и вносите соответствующие изменения
сентября 3, 2007 at 1:01 am
Ошибка, их-за которой код не работал - исправьте ВСЕ кавычки в коде - и ‘, и ” и будет вам счастье…
октября 21, 2007 at 6:02 pm
У меня почему-то нет такого когда в /wp-admin/index.php
октября 22, 2007 at 11:27 pm
это относится к WP 2.1. Не уверен, что будет работать с более поздними версиями.
октября 25, 2007 at 11:40 am
в 2.0.7 и 2.3 конвертацию кодировок делать НУЖНО.