在Wordpress post-new.php中创建新帖子时添加自定义php代码

时间:2014-06-17 17:48:53

标签: php wordpress-plugin wordpress

我有一个PHP代码,可以创建一个html文件,插入一些数据并将其上传到文件夹中。 如何在post-new.php中添加我的自定义php代码,以便在发布帖子时执行此操作...

此外,我需要获取帖子后期图片路径,发布网址和发布标题。

谢谢大家!

我的代码是:

$my_file = 'myindex.html';
$handle = fopen($my_file, 'w') or die('Cannot open file:  '.$my_file); //implicitly creates file

$stringData = "<!doctype html>\n";
fwrite($handle, $stringData);
$stringData = "<html>\n";
fwrite($handle, $stringData);
$stringData = "<head>\n";
fwrite($handle, $stringData);
$stringData = "<meta charset='utf-8'>\n";
fwrite($handle, $stringData);
$stringData = "<title>MyYiyle</title>\n";
fwrite($handle, $stringData);
$stringData = "<meta property='og:type' content='Article' />\n";
fwrite($handle, $stringData);
$stringData = "<meta property='og:image' content='' />\n";
fwrite($handle, $stringData);
$stringData = "<meta property='og:image:width' content='640' />\n";
fwrite($handle, $stringData);
$stringData = "<meta property='og:image:height' content='360' />\n";
fwrite($handle, $stringData);
$stringData = "<meta name='image' content='' /> \n";
fwrite($handle, $stringData);
$stringData = "</head>\n";
fwrite($handle, $stringData);
$stringData = "<body>\n";
fwrite($handle, $stringData);
$stringData = "</body>\n";
fwrite($handle, $stringData);
$stringData = "</html>\n";
fwrite($handle, $stringData);

if (fclose($handle)){


// FTP access parameters
$host = 'xxx';
$usr = 'xxx';
$pwd = 'xxx';

// file to move:
$local_file = './' . $my_file;
$ftp_path = '/newposts/' . $my_file;

// connect to FTP server (port 21)
$conn_id = ftp_connect($host, 21) or die ("Cannot connect to host");

// send access parameters
ftp_login($conn_id, $usr, $pwd) or die("Cannot login");

// turn on passive mode transfers (some servers need this)
//ftp_pasv ($conn_id, true);

// perform file upload
$upload = ftp_put($conn_id, $ftp_path, $local_file, FTP_ASCII);

// check upload status:
print (!$upload) ? 'Cannot upload' : 'Upload complete';
print "\n";

/*
** Chmod the file (just as example)
*/

// If you are using PHP4 then you need to use this code:
// (because the "ftp_chmod" command is just available in PHP5+)

/*
if (!function_exists('ftp_chmod')) {
   function ftp_chmod($ftp_stream, $mode, $filename){
        return ftp_site($ftp_stream, sprintf('CHMOD %o %s', $mode, $filename));
   }
}
 */

// try to chmod the new file to 666 (writeable)
/*
if (ftp_chmod($conn_id, 777, $ftp_path) !== false) {
    print $ftp_path . " chmoded successfully to 666\n";
} else {
    print "could not chmod $file\n";
}
 */
// close the FTP stream
ftp_close($conn_id);


}

1 个答案:

答案 0 :(得分:3)

查看Wordpress的Action钩子,并将它们包含在您的主题中:

http://codex.wordpress.org/Plugin_API/Action_Reference

&#39; publish_page&#39;,&#39; publish_post&#39;或类似的东西可能就是你所需要的。

&#39; save_post&#39;添加帖子时发生,包括帖子对象(网址/标题,标题等)