AutoBlogger

AutoBlogger
Рейтинг
128
Регистрация
05.10.2011

Кэш фидов есть не только в опере, но и в других браузерах (в том же FF, например). Удерживание клавиши "shift" во время рефреша, решает проблему.

И кстати, замените это:

if ($publ>10)
{$b=11;}
else
{$b=$publ+1;}
for ($m=1; $m<$b; $m++)
{$t=$publ-$m+1;
include('publ/'.$t.'.php');

На это:

($publ > 10) ? $b = $publ - 10 : $b = 0;
for ($m = $publ; $m > $b; $m--) {
include("publ/$m.php");

Так, для прикола ) Это конечно в том случае, если я понял идею работы вашего скрипта, ибо написан он несколько витиевато...

hexacell:
Консоль/Записи/Все записи, там где колонки "Заголовок" "Автор" "Рубрики" "Метки" "Дата"... добавить еще одну - "Внешние ссылки" и выводить кол-во внешних ссылок - "1", "3", "18"...

Вот в таком виде, к сожалению, скорее всего не получится. Нет такого хука, чтобы перехватить вывод списка постов в админке. По крайней мере, я о нем не знаю. В общем, подсчитать ссылки в постах-то можно, а вот вывести их в стандартную таблицу админки не получится.

HarleyDavidson:
AutoBlogger, здравствуйте. Есть неплохой плагин для создания мультиязычных блогов ZdMultiLang. Правда в нем не хватает функции редактирования title и description переведенных записей и страниц. Идея как раз и заключается в создании этой функции. Поможете? :)

Как я вижу выше, это вопрос Вы уже решили.

Teff:
ТС, а насколько сложно сделать плагин, который выводил бы в нужном месте поисковую форму, через которую можно было бы искать файлы на файлообменниках или торрентах?

П.С. по примеру сайта zavisaem.net

Совершенно несложно. Только для этого нужно сначала купить сам скрипт парсинга ссылок с http://zavisaem.net/ за $30. А уж прикрутить его к WP можно будет при помощи пары строчек кода.

Код, который работает:

<?php
class GooglePageRankChecker {

// Track the instance
private static $instance;

// Constructor
function getRank($page) {
// Create the instance, if one isn't created yet
if(!isset(self::$instance)) {
self::$instance = new self();
}
// Return the result
return self::$instance->check($page);
}

// Convert string to a number
function stringToNumber($string,$check,$magic) {
$int32 = 4294967296; // 2^32
$length = strlen($string);
for ($i = 0; $i < $length; $i++) {
$check *= $magic;
//If the float is beyond the boundaries of integer (usually +/- 2.15e+9 = 2^31),
// the result of converting to integer is undefined
// refer to http://www.php.net/manual/en/language.types.integer.php
if($check >= $int32) {
$check = ($check - $int32 * (int) ($check / $int32));
//if the check less than -2^31
$check = ($check < -($int32 / 2)) ? ($check + $int32) : $check;
}
$check += ord($string{$i});
}
return $check;
}

// Create a url hash
function createHash($string) {
$check1 = $this->stringToNumber($string, 0x1505, 0x21);
$check2 = $this->stringToNumber($string, 0, 0x1003F);

$factor = 4;
$halfFactor = $factor/2;

$check1 >>= $halfFactor;
$check1 = (($check1 >> $factor) & 0x3FFFFC0 ) | ($check1 & 0x3F);
$check1 = (($check1 >> $factor) & 0x3FFC00 ) | ($check1 & 0x3FF);
$check1 = (($check1 >> $factor) & 0x3C000 ) | ($check1 & 0x3FFF);

$calc1 = (((($check1 & 0x3C0) << $factor) | ($check1 & 0x3C)) << $halfFactor ) | ($check2 & 0xF0F );
$calc2 = (((($check1 & 0xFFFFC000) << $factor) | ($check1 & 0x3C00)) << 0xA) | ($check2 & 0xF0F0000 );

return ($calc1 | $calc2);
}

// Create checksum for hash
function checkHash($hashNumber)
{
$check = 0;
$flag = 0;

$hashString = sprintf('%u', $hashNumber) ;
$length = strlen($hashString);

for ($i = $length - 1; $i >= 0; $i --) {
$r = $hashString{$i};
if(1 === ($flag % 2)) {
$r += $r;
$r = (int)($r / 10) + ($r % 10);
}
$check += $r;
$flag ++;
}

$check %= 10;
if(0 !== $check) {
$check = 10 - $check;
if(1 === ($flag % 2) ) {
if(1 === ($check % 2)) {
$check += 9;
}
$check >>= 1;
}
}

return '7'.$check.$hashString;
}

function check($page) {

// Open a socket to the toolbarqueries address, used by Google Toolbar
$socket = fsockopen("toolbarqueries.google.com", 80, $errno, $errstr, 30);

// If a connection can be established
if($socket) {
// Prep socket headers
$out = "GET /tbr?client=navclient-auto&ch=".$this->checkHash($this->createHash($page)).
"&features=Rank&q=info:".$page."&num=100&filter=0 HTTP/1.1\r\n";
$out .= "Host: toolbarqueries.google.com\r\n";
$out .= "User-Agent: Mozilla/4.0 (compatible; GoogleToolbar 2.0.114-big; Windows XP 5.1)\r\n";
$out .= "Connection: Close\r\n\r\n";

// Write settings to the socket
fwrite($socket, $out);

// When a response is received...
$result = "";
while(!feof($socket)) {
$data = fgets($socket, 128);
$pos = strpos($data, "Rank_");
if($pos !== false){
$pagerank = substr($data, $pos + 9);
$result += $pagerank;
}
}
// Close the connection
fclose($socket);

// Return the rank!
return $result;
}
}
}

$rank = GooglePageRankChecker::getRank("searchengines.ru");
echo $rank;

?>

У меня же есть подпись, а на форуме работает ЛС :)

Добавтье в .htaccess:

AddDefaultCharset On
AddDefaultCharset windows-1251
KoDmAn:
Не кипятитесь Вы так. Начнете предоставлять платные услуги - я одним из первых напишу положительный отзыв.

Ну так я же их и так предоставляю :)

KoDmAn:
Поэтому и шла речь о выводе с помощью функции, которую можно было бы вручную вставить в single-slug.php.

Вот теперь суть понятна - Вам нужна была всего лишь функция, а не плагин. Тогда, wpquote_content() это как раз то, что Вам нужно. А проверки is_single() и is_page() можно сделать непосредственно в single-slug.php. IMHO.

KoDmAn:
Т.е. я неправильно понимаю, что

дадут на выходе не

.... контент....
<div id="wp_quote">бла-бла-бла</div>

?

Правильно. А как Вы вы хотели? В Вашем описании функций плагина нет никакой конкретики по данному вопросу. По сути, ТЗ как такового тоже нет.

KoDmAn:
Потому что итак все на костылях

Хм... Что значит "на костылях"? Вы называете "костылями" WordPress API, или что-то другое? Поясните свою мысль, пожалуйста.

KoDmAn:
и фильтры на the_content и the_excerpt чреваты внезапным появлением <div id="wp_quote">бла-бла-бла</div> там где и не надо (фид, форум и т.д.).

Вообще-то плагин изначально задумывался так, чтобы вставлять цитаты во все посты и страницы, включая их вывод на главной, а так же, в архивах и в RSS фиде. Вам нужно было как-то иначе? Почему не уточнили этот момент? Я ж не ясновидящий и чужие мысли читать не умею.

KoDmAn:
Но, все равно, большое спасибо. Допилю сам

Ну как допилите - выкладывайте в этот топик, посмотрим. Лично мне реально интересно увидеть, как именно Вы себе представляете работу данного плагина, и как реализуете его "не на костылях" :)

KoDmAn:
Спасибо, но не то. Мне ненужна привязка вывода wpquote сразу после the_content().

Это как, интересно? Поделитесь секретом? :)

KoDmAn:
да и фильтры подключать без проверки на if(is_single()) в function wpquote_content как то очково.

Почему?

KoDmAn:
Уважаемый ТС.

У мя давно и неспешно крутится в голове мысль о создании плагина в стиле Hello Dolly, но только более полезного. Суть в следующем: есть некий файл с набором n-го количества фраз по 100-200 символов каждая. Есть шаблон поста (синг.пхп). Необходимо, что бы после записи некая функция выводила "Знаете ли вы о том, что [вывод случайно фразы из списка]".

Описал, вроде, доступно. Реализация, вроде, не должна создать проблем ;-)

Готово, забирайте: WP Quote :)

AutoBlogger добавил 25.10.2011 в 21:51

SeVlad:
AutoBlogger,
1. Был такой отличный плаг для мониторинга нагрузки wptuner, но к сожалению на 3-ке уже не работает (валит ВП вообще).
Вот если бы ты взялся или поправить его или свой аналог написать - много юзеров бы были тебе благодарны.

Зaчем изобретать велосипед, если есть TPC! Memory Usage for WordPress?

Всего: 428