Давно хотел написать этот пост. На gfb неоднократно поднимался вопрос о авто постинге в wordpress. Пол года назад я задался тем же вопросом, когда строил схему работы с массовой генерацией постов.
В общем есть 3 способа добавления постов в wp.
1. Работать напрямую с БД, что довольно неудобно, так как частенько косяки вылазят. Также работая с БД мы не можем задавать категорию, по крайней мере так в версии 2.х было.
2. Написать скрипт который будет заходить в админку и создавать посты. Это очень удобно, так как можно задать нужную категорию, создать при необходимости, сменить урл поста на нужный и прочее. В общем в этом варианте все зависит только от вашего желания. Минусы этого способа время- и трудо- затраты. Сейчас есть готовые решения для такой генерации.
3. Создавать посты стандартными средствами wp. Это лучший способ генерации постов в вордпресс в случае когда не сильно важна категория. Ну в любом случае можно будет написать скрипт, что поменяет категорию.
Собственно код скрипта.
include (“wp-config.php”); // подключаем конфиг wp, скрипт должен лежать в корне, там же где и index.php
include (“gen_login_pass.php”);
include (“generator.php”);
include (“rezka.php”); // это библиотечки, которые я использовал в работе с ХЕ, см. посты ниже$time = time();
$vrema = time();$min = 50;
$max = 110;
$n = 3; // просто переменные, у вас могут быть своиfunction AddPost($Title, $Content, $Date) {
global $user_ID;
$PostArr = array(
‘post_status’ => ‘publish’,
‘post_type’ => ‘post’,
‘post_author’ => $user_ID,
‘post_content’ => $Content,
‘post_title’ => $Title,
‘post_date’ => gmdate(‘Y-m-d H:i:s’, $Date + get_option(‘gmt_offset’) * 3600),
‘comment_status’ => ‘open’,
‘ping_status’ => get_option(‘default_ping_status’),
‘post_parent’ => 0,
‘to_ping’ => ”,
‘pinged’ => ”,
‘post_password’ => ”);
return wp_insert_post($PostArr);
} // основной код для работы с БД// Ниже идет генерация поста. Часть я обрезал, так как она не имеет смысла. Код тут использовался тот же, что и при генерации дорвейного профиля.
for ($i=0; $i<2; $i++) {
$fname = ‘dating.txt’;
$f = file($fname);
$mm=”";
$kol = mt_rand($min, $max);
for ($x=0; $x<$kol; $x++) {$rnd = mt_rand(0,count($f)-1);
$cn = count($f);
$fop = fopen($fname, ‘w+t’);
for($zz=0; $zz<$cn; $zz++) fwrite($fop, trim($f[$zz]).”\r\n”);
fclose($fop);$title_file=file(“a_dating.txt”);
shuffle($title_file);
$key=trim($title_file[0]);$fwr = fopen(“a_dating.txt”, “w+t”);
for($a=1;$a
fwrite($fwr, trim($title_file[$a]).”\r\n”);
}$plusk = str_replace(” “, “+”, $key);
$pluskey = str_replace(” “, “_”, $key);$maxi = mt_rand(11600,18800);
$time = $time+$maxi;$aaa = AddPost($bol, $mm, $vrema); // добавление поста
echo var_dump($aaa);
}
Ну вот както так.
За 30 секунд на средненьком сервере выходит примерно 250-400 страничек в зависимости от объема поста.

немного не понял. почему нельзя через бд добавлять категорию? она что, не в бд хранится?
ссылки на скачку скрипта нету) толку мало от скрипта, основу которого, функцию постинга в вп, не показали)
Насколько мне известно создание и определение категорий при автоматизации в wp одна из основных проблем. Когда я работал с БД, там вроде было id категории, но заставить определять категорию при добавлении поста не получалось.
А вы бы пост раскрыли полностью и скрипт увидели.
Дак я вроде и раскрыл =)
заканчивается словами
“За 30 секунд на средненьком сервере выходит примерно 250-400 страничек в зависимости от объема поста.”
вот эти файлики я не увидел:
include (“gen_login_pass.php”);
include (“generator.php”);
include (“rezka.php”);
Эти файлики по сути вообще не нужны, но я давал на них ссылки когда писал о HumanEmulator.
Помойму кеи резать на 2-3-4 словные..
include (“gen_login_pass.php”); // генерирует логины и пароли, это я юзал для добавления никнеймов в создаваемых постах
include (“generator.php”); // этот файлик генерирует на сколько помню просто рандомные цифры в заданом интервале
include (“rezka.php”); // это вообще не помню зачем нужно.
Основа скрипта состоит из 3-х частей.
1. include (“wp-config.php”); // подключаем конфиг
2. function AddPost($Title, $Content, $Date) { … } – создаем пост
3. $aaa = AddPost($bol, $mm, $vrema); // добавление поста
[...] тут вариант автопостинга в wordpress и решил поделиться [...]