Ссылки на последние посты одного блога в сайдбаре другого. » lamara-nsk.ru


lamara-nsk.ru
Это блог о сео, деньгах, заработке в сети, разработке своих проектов, программировании
и "жизни программиста", бизнесе, блогосфере, фрилансе и многом другом.


Контакты, Реклама в блоге




Ссылки на последние посты одного блога в сайдбаре другого.

Автор DimoninG, написано 23.10.2008
Рубрика WordPress, Общие советы, Скрипты PHP, на WordPress  

Как все уже поняли, недавно я завел еще один блог и начал серьезно им заниматься (правда, крайне медленно). Сегодня мне пришла идея интересного пиара моего второго блога в это (основном).

Идея не новая, но все же интересная: давать ссылки на последние посты нового блога в другом, более раскрученном. Ну и понятное дело, вручную их писать – самоубийство. Поэтому я написал небольшой скрипт (а что Вы ждали?), который хорошо работает под WordPress (он написан на PHP, поэтому будет работать везде, где есть PHP).

Кстати, если хотите, чтобы я из него сделал плагин – пишите, по просьбам заверну в плагин.

Основан скрипт на простой идее – нужно подключиться к базе данных другого блога и вытащить оттуда заголовки последних постов, оформив их ссылками. Сразу отмечу, что не на всех хостингах можно такое проделать, иногда внешние подключения к базе данных не разрешены.

Я привел скрипт в порядочный вид и вынес ключевые данные в переменные перед скриптом. Засовывать скрипт нужно прямо в сайдбар. Да-да, прямо туда :) Код:


// Расшифровка:
// $snbc - some new blog connect - дескриптор подключения к БД
// $snbquery - some new blog query (для запроса)
// $snbresult - some new blog result (результат запроса)
$db_host  = "хост";
$db_login = "пользователь";
$db_pass  = "пароль";
$db_name = "имя базы";

$site_url = "http://адрес-другого-блога.ru/";
$error_message = "облом";
$prefix = "wp_";

$snbc = @mysql_connect ($db_host, $db_login, $db_pass);
@mysql_select_db ($db_name, $snbc);
$snbquery = @mysql_query ("SELECT * FROM ".$prefix."posts WHERE
            post_status='publish' AND
            post_type='post' ORDER BY ID LIMIT 5;", $snbc);
if (@mysql_num_rows($snbquery) <= 0) {
	echo $error_message;
}
else {
	while ($snbresult = @mysql_fetch_array ($snbquery)){
		echo "* <a href=\"$site_url".$snbresult['post_name'].
                         ".htm\">".
                         $snbresult['post_title']."</a><br>";
	}
}
@mysql_close ($snbc);

Заметьте, единственное сообщение об ошибке – это сообщение, что сайт недоступен. Нельзя нам сейчас постить ошибки прямо в блог (потенциально полезная информация для взломщика). А учитывая, что удаленные подключения к БД другого блога возможны, тем более.

Я даже на всякий случай везде наставил «собак», которые подавляют вывод ошибок.

Логика скрипта: для подключения мы используем другой дескриптор базы данных (ресурс $snbc), и работаем с ним (чтобы не сделать случайно запрос в «первую» базу данных или еще чего похуже). Соединение мы закрываем при завершении скрипта, оно нам не нужно.

Скрипт подключается, читает последние посты (записи, имеющие статус post; сортировка по ID) из таблицы с постами, выбирает из них те, которые опубликованы (состояние publish), ограничивается 5ю записями.

Ссылки составляются похитрее – у меня они сделаны в виде ЧПУ, поэтому мне нужно читать поле post_name, содержащее ссылку. Если у Вас содержится в адресе ID, то нужно его (ID) и читать. И подставлять в адрес Вашего вида.

И не забудьте указать перфикс таблиц второго блога и прочие конфигурационные параметры! Что непонятно – спрашивайте.

Постовой:
перевозка грузов в СПб
шумоизоляция автомобиля в Петербурге
бутылка подарочного шампанского
электроинструмент макита – надежный и дешевый инструмент
создание сайтов дешево
Максим.ру – это не блог певицы, это намного круче…



Отзывов (11) на «Ссылки на последние посты одного блога в сайдбаре другого.»


ae471697

    пишет:

    Сделай, пожалуйста, как плагин, который будет вытягивать заголовок последней записи с рсс. Благодаря этому можно будет видеть последние записи всех блогов, которые интересны, и к которым у тебя нет админского доступа :grin:

    Хотя, может, такой плагин уже реализован, просто я его не встречал.


    пишет:

    Да ты просто «голова», у меня бы мозгов не хватило сделать такой скрипт для облегчения своей работы.


    пишет:

    и мне бы такой плагин не помешал-не секу в скриптах


    пишет:

    Блин, а я б сам не додумался до написания скрипта, спасибо за идею.


    пишет:

    Конечно блог непростого програмиста э то небольшое приувеличение лучше бе зказали начинающего потому как человек без интереса не сможет понять изложеного в блоге


    пишет:

    Спасибо за информацию, обязательно попробую реализовать


    пишет:

    ДОВОЛЬНО НЕПЛОХАЯ ИДЕЯ НАДО ПОПРОБЫВАТЬ


    пишет:

    Идея интересная, думаю вам стоит ее протестировать и отписать! Мое мнение что это будет работать куда продуктивнее чем блогролл!


    пишет:

    spoint, куда ж еще больше тестировать – у меня в сайдбаре ее рабочий вариант :smile:


    пишет:

    настраивать особо не надо. в WP 2.6.3. есть готовая фича, что-то виджета в сайдбар RSS ставишь – и там любая лента, хоть основной блог, хоть комменты


    пишет:

    настраивать особо не надо. в WP 2.6.3. есть готовая фича, что-то виджета в сайдбар RSS ставишь – и там любая лента, хоть основной блог, хоть комменты

    полностью согласен, хотя и идея автора заслуживает внимания.


Оставьте свой комментарий

Что здесь почитать?



1.   Разработки.
1.1 Плагин "Я не робот"
1.2 Плагин "Код Adsense прямо в пост"

2.   Заработай.
2.1 Блогун: 20$ в день
2.2 Уходим от налогов в Sape
2.3 Хватит думать, пора зарабатывать

3.   Акции и конкурсы.
3.1 Ссылка за "Рабочий стол"

Показать весь список.

-->







Блог на движке WordPress и тема для него создана DimoninG'ом в 2007 году.
Все материалы авторские, их копирование запрещено законом об авторском праве.