Вычислить корень WP в базе блогов - Форум успешных вебмастеров - GoFuckBiz.com
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB93.7196
BTC/USD63806.9447
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 09.05.2011, 23:48   #1
HwoR
Senior Member
 
Аватар для HwoR
 
Регистрация: 08.06.2007
Сообщений: 1,080
Бабло: $2147483647
Отправить сообщение для HwoR с помощью ICQ
По умолчанию Вычислить корень WP в базе блогов

Есть база блогов. Нужно привести всю базу к корневой папке блога. Например, имеем:

http://example.com/blog123/?p=123 нужно получить http://example.com/blog123/

И так со всеми уллами, в не зависимости в каких папках лежит блог и с какими пермалинками. Это возможно? Может кто подскажет решение...
HwoR вне форума  
Старый 10.05.2011, 00:08   #2
deschain
Senior Member
 
Аватар для deschain
 
Регистрация: 01.11.2007
Сообщений: 2,269
Бабло: $288535
По умолчанию

Заходишь на урл, смотришь, где лежит /wp-content/. Для 99% блогов сработает.
deschain вне форума  
Старый 10.05.2011, 00:22   #3
Данилка
Senior Member
 
Аватар для Данилка
 
Регистрация: 23.11.2009
Сообщений: 142
Бабло: $35285
По умолчанию

$s = "http://example.com/blog123/?p=123";
$arr = explode("/", $url);
$outs = '';
for($i=0; $i<count($arr); $i++){
$outs .= $arr[$i];
if($i == count($arr)-1) break;
}


поидее так можно
Данилка вне форума  
Старый 10.05.2011, 00:25   #4
xcrew
Senior Member
 
Регистрация: 25.06.2009
Сообщений: 803
Бабло: $141790
По умолчанию

Цитата:
Сообщение от Данилка Посмотреть сообщение
$s = "http://example.com/blog123/?p=123";
$arr = explode("/", $url);
$outs = '';
for($i=0; $i<count($arr); $i++){
$outs .= $arr[$i];
if($i == count($arr)-1) break;
}


поидее так можно
не сделаешь так, универсальное решение без открытия сайта не выйдет
xcrew вне форума  
Старый 10.05.2011, 00:30   #5
Drunk Monk
Je suis moine ivre
 
Аватар для Drunk Monk
 
Регистрация: 03.03.2009
Сообщений: 15,268
Бабло: $797172957
По умолчанию

Цитата:
Сообщение от Данилка Посмотреть сообщение
$s = "http://example.com/blog123/?p=123";
$arr = explode("/", $url);
$outs = '';
for($i=0; $i<count($arr); $i++){
$outs .= $arr[$i];
if($i == count($arr)-1) break;
}


поидее так можно
милостивый иисусе!
Drunk Monk вне форума  
Старый 10.05.2011, 00:31   #6
deschain
Senior Member
 
Аватар для deschain
 
Регистрация: 01.11.2007
Сообщений: 2,269
Бабло: $288535
По умолчанию

Код:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);
curl_setopt($ch, CURLOPT_TIMEOUT, 120);
$c = curl_exec($ch);
curl_close($ch);
$c = substr($c, 0, 10000);
if (preg_match('%(http[A-Za-z0-9/.-_]*/wp-content/)%i', $c, $m)) {
	$m[1] = str_replace("/wp-content/", "", strtolower($m[1]));
	$link = parse_url($m[1]);
	if (!empty($link['host'])) $wp = $m[1];
}
deschain вне форума  
Старый 10.05.2011, 00:38   #7
HwoR
Senior Member
 
Аватар для HwoR
 
Регистрация: 08.06.2007
Сообщений: 1,080
Бабло: $2147483647
ТС -->
Отправить сообщение для HwoR с помощью ICQ
автор темы ТС По умолчанию

Спасибо большое, а как это в рабочий скрипт привести? Не силен в php...
HwoR вне форума  
Старый 10.05.2011, 01:37   #8
y4b53
:(
 
Аватар для y4b53
 
Регистрация: 25.11.2008
Сообщений: 759
Бабло: $94392
По умолчанию

В файл urls.txt ссылки, результат будет в файле out.txt
Код:
<?php
set_time_limit(0);
##########################
$urls = file('urls.txt', FILE_IGNORE_NEW_LINES);
##########################
foreach($urls as $url) {
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, trim($url));
	curl_setopt($ch, CURLOPT_HEADER, false);
	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
	curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);
	curl_setopt($ch, CURLOPT_TIMEOUT, 120);
	$c = curl_exec($ch);
	curl_close($ch);
	$c = substr($c, 0, 10000);
	if (preg_match('%(http[A-Za-z0-9/.-_]*/wp-content/)%i', $c, $m)) {
		$m[1] = str_replace("/wp-content/", "", strtolower($m[1]));
		$link = parse_url($m[1]);
		if (!empty($link['host'])) {
			$fp = fopen("out.txt","a");
			fwrite($fp, $m[1] . "\n");
			fclose($fp);
		}
	}
}
?>
__________________
Знать путь и пройти его — не одно и то же. Pharmcash & PharmcashUSA - знаем, проходили... Лидеры в фарме
y4b53 вне форума  
Старый 10.05.2011, 02:00   #9
HwoR
Senior Member
 
Аватар для HwoR
 
Регистрация: 08.06.2007
Сообщений: 1,080
Бабло: $2147483647
ТС -->
Отправить сообщение для HwoR с помощью ICQ
автор темы ТС По умолчанию

Цитата:
Сообщение от y4b53 Посмотреть сообщение
В файл urls.txt ссылки, результат будет в файле out.txt
Спасибо, работает правда как милионную базу с такой скоростью чекать я еще не знаю))
HwoR вне форума  
Старый 10.05.2011, 02:03   #10
Drunk Monk
Je suis moine ivre
 
Аватар для Drunk Monk
 
Регистрация: 03.03.2009
Сообщений: 15,268
Бабло: $797172957
По умолчанию

Мультикурлом
Drunk Monk вне форума