Вернуться   Форумы УРФИНГРАМ > Любимая возня > Мир РС
Имя
Пароль


Ответ
 
Опции темы Опции просмотра
Старый 23.08.2007, 13:22   #51
Guest
Да играл! Недолго, но довольно лодотворно.
  Ответить с цитированием
Старый 26.12.2007, 20:00   #52
none
Сообщение по протоколу XML-RPC для Яндекса.

Довольно новый сервис в яндексе http://ping.blogs.yandex.ru/ породил множество вопросов у рядовых блогеров. Здесь я лишь приведу один из вариантов отправки XML-RPC запроса. Вам останется только вписать эту функцию в то место кода, где новая запись вносится в базу данных. Ну и поменять заголовок и адрес для этой записи.
Цитата:
. Если вы хотите, чтобы Яндекс быстрее проиндексировал вашу новую запись, вы можете отправить нашему серверу специальное сообщение о том, что у вас появилась новая запись

Конечно хотим!
Шаг 1.
Скачиваем прикрепленный файл xmlrpc.php. Кладем его в любую директорию вебсевера.
Шаг 2.
Создаем php-файл test.php в той же директории и вписываем следующее:
PHP код:
<?php 
include_once('xmlrpc.php'); 
$send = Array ( => 'Modam.ru'=> 'http://modam.ru/external.php?RSS2');
$result XMLRPC_request('ping.blogs.yandex.ru''/RPC2''weblogUpdates.ping(weblogname, weblogurl, changesurl=weblogurl, categoryname="none") returns struct;',$send);

print_r($result); 
?>
// строка print_r($result); нужна для проверки отклика Яндекса
Кладем файл на вебсерер рядом с предыдущим. Заходим на test.php файл через эксплорер - в случае успеха вы получите сообщение вида
Цитата:
Array ( [0] => 1 [1] => Array ( [flerror] => [message] => Thanks for the ping. ) )

А так же через пару секунд заметите строчку 'Modam.ru' - на ленте http://ping.blogs.yandex.ru/
Шаг 3. Вставляем либо код вызова функции XMLRPC_request(); с инклюдoм файла 'xmlrpc.php', либо просто инклюд файла test.php (предварительно убрав строку print_r).
Вложения
Тип файла: txt xmlrpc.php.txt (15.9 Кб, 0 просмотров)

Последний раз редактировалось admin, 27.12.2007 в 21:58.
admin вне форума   Ответить с цитированием
Старый 26.12.2007, 21:09   #53
Guest
Как я понял, этот запрос поможет дать яндексу знать, что у меня появилась новая запись в он-лайн дневнике(блоге), а если у меня сайт(не связаный с дневником) и я хочу, чтоб меня быстрее проиндексировали, или появилась новая инфа на сайте этот запрос мне как-то поможет?
  Ответить с цитированием
Старый 26.12.2007, 21:12   #54
none
нет, только для блогов работает и возможно для форумов. и результаты будут показываться в поиске по блогам. А что бы попасть в поиск по блогам нужно иметь экспорт новостей в формате RSS. Если ты на своем сайте имеешь ленту новостей и сделаешь ее вывод в RSS, тогда можно
admin вне форума   Ответить с цитированием
Старый 27.12.2007, 00:25   #55
none
Так мануал для блога Wordpress (MU)

Шаг 1.
Скачиваем прикрепленный файл xmlrpc.php.txt (в первом посте). Переименовываем в xmlrpcyandex.php (так как xmlrpc.php уже есть в наборе Wordpress'a). Кладем его директорию /wp-includes/.
Шаг 2.
В директории wp-includes/ открываем файл post.php, находим:
PHP код:
function wp_insert_post($postarr = array()) {
    global 
$wpdb$wp_rewrite$allowedtags$user_ID
заменяем на:
PHP код:
function wp_insert_post($postarr = array()) {
    global 
$wpdb$wp_rewrite$allowedtags$user_ID,
$user_login
Дальше находим:
PHP код:
else {
        
$wpdb->query(
            
"INSERT IGNORE INTO $wpdb->posts
            (post_author, post_date, post_date_gmt, post_content, post_content_filtered, post_title, post_excerpt,  post_status, post_type, comment_status, ping_status, post_password, post_name, to_ping, pinged, post_modified, post_modified_gmt, post_parent, menu_order, post_mime_type)
            VALUES
            ('$post_author', '$post_date', '$post_date_gmt', '$post_content', '$post_content_filtered', '$post_title', '$post_excerpt', '$post_status', '$post_type', '$comment_status', '$ping_status', '$post_password', '$post_name', '$to_ping', '$pinged', '$post_date', '$post_date_gmt', '$post_parent', '$menu_order', '$post_mime_type')"
);
            
$post_ID = (int) $wpdb->insert_id;
    } 
заменяем на
PHP код:
else {
//ini_set('allow_call_time_pass_reference',true);
include_once('xmlrpcyandex.php'); 
 
$send = Array ( => $post_title=> 'http://'.$user_login.'.адресблога.ru/rss');
$result XMLRPC_request('ping.blogs.yandex.ru''/RPC2''weblogUpdates.ping(weblogname, weblogurl, changesurl=weblogurl, categoryname="none") returns struct;',$send);
//print_r($send); print_r($request); die;
        
$wpdb->query(
            
"INSERT IGNORE INTO $wpdb->posts
            (post_author, post_date, post_date_gmt, post_content, post_content_filtered, post_title, post_excerpt,  post_status, post_type, comment_status, ping_status, post_password, post_name, to_ping, pinged, post_modified, post_modified_gmt, post_parent, menu_order, post_mime_type)
            VALUES
            ('$post_author', '$post_date', '$post_date_gmt', '$post_content', '$post_content_filtered', '$post_title', '$post_excerpt', '$post_status', '$post_type', '$comment_status', '$ping_status', '$post_password', '$post_name', '$to_ping', '$pinged', '$post_date', '$post_date_gmt', '$post_parent', '$menu_order', '$post_mime_type')"
);
            
$post_ID = (int) $wpdb->insert_id;
    } 
Если выскакивает warning с требованием включить в INI опцию
'allow_call_time_pass_reference' - убераем слэши перед //ini_set('allow_call_time_pass_reference',true);
Если на http://ping.blogs.yandex.ru/ не появляется ваша запись убераем слэши перед print_r($send); print_r($request); die; и смотрим ответ сервера и отправленные данные.
Если Вы используете однопользовательский Wordpress то первую замену (где function) Вам проводить не нужно, а так же строчку
$send = Array ( 0 => $post_title, 1 => 'http://'.$user_login.'.адресблога.ru/rss');
необходимо заменить на
$send = Array ( 0 => $post_title, 1 => 'http://www.адресблога.ru/rss');

Последний раз редактировалось admin, 27.12.2007 в 22:00.
admin вне форума   Ответить с цитированием
Старый 27.12.2007, 22:01   #56
none
Внимание!!! Проверяйте отклик от Яндекса, так как он переодически меняет настройки - weblogUpdates.ping(weblogname, weblogurl, changesurl=weblogurl, categoryname="none") returns struct;
admin вне форума   Ответить с цитированием
Старый 06.02.2008, 19:18   #57
Super Moderator
 
Аватар для Sanyok
GTA - Привет из России :)

Выходит новая часть одной из моих любимых игр - GTA 6.

Vice City.. атмосфера солнечных 80 гг америки...
San Andreas.. атмосфера нигерских 90 гг..
Эта GTA вроде будет с русской атмосферой. Правильное решения рокстар геймс. )
Sanyok вне форума   Ответить с цитированием
Старый 06.02.2008, 23:10   #58
Guest
круть....когда выходит то???
и кто будет в россии представлять???
там наверно будут гопники в кэпках =))
  Ответить с цитированием
Ответ



Ваши права в разделе
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Часовой пояс GMT +5, время: 23:23.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2007, Jelsoft Enterprises Ltd.

Мы живем в Тольятти Rambler's Top100