Looking at your code you are calling the function ghoolo_mango()
by using the the wp
actoin hook. This is fine but be aware that it will add your post everytime a page loads.
The problem is that you are also calling the function ghoolo_mango()
within the function itself – i.e. it will keep calling it over and over.
To fix the problem, remove the line ghoolo_mango();
at the end of the function.
Your code should look like this –
function ghoolo_mango(){
$oiobz1 = writeMsg(1, 'center', '', 1);
$postdate =date('Y-m-d');
$ta =date('Y-m-d');
$postdate_gmt =date('Y-m-d H:i:s');
$titles="زندگی".$postdate;
$args = array(
'post_content' => $oiobz1,
'post_name' => $titles,
'post_title' => $titles,
'post_status' => 'publish',
'post_type' => 'post',
'post_author' => '1',
'ping_status' => 'open',
'to_ping' => 'http://rpc.pingomatic.com/',
'post_date_gmt' => $postdate_gmt,
'post_date' => $postdate,
'tags_input' => ", قیمت طلا در امروز $ta, قیمت طلا در امروز ,قیمت امروز طلا $ta,قیمت طلا $ta , قیمت امروز طلا $ta, قیمت طلا ماه $ta,لیست امروز قیمت طلا $ta,دانلود لیست قیمت طلا $ta,$ta قیمت طلا به روز,قیمت روز طلا,قیمت ",
);
$post_id = wp_insert_post($args);
}
add_action('wp', 'ghoolo_mango');
Edit
You have now also asked how to insert future posts.
To do this, all you have to do is change the post date to a future date and change the post status to future
. Because you include the date in your title, you’ll also need to update that, but it should be as simple as this –
$postdate = new DateTime(date('Y-m-d H:i:s') . ' + 1 day');
$postdate_gmt = new DateTime(gmdate('Y-m-d H:i:s') . ' + 1 day');
$titles="زندگی" . $postdate->format('Y-m-d');
$args = array(
{ other args... }
'post_status' => 'future',
{ other args... }
);
In the example above I’ve used 1 day, but you can alter that as required.