App-html2wp
view release on metacpan - search on metacpan
view release on metacpan or search on metacpan
lib/App/html2wp.pm view on Meta::CPAN
package App::html2wp;
our $DATE = '2020-05-01'; # DATE
our $VERSION = '0.004'; # VERSION
use 5.010001;
use strict;
use warnings;
use Log::ger;
use POSIX qw(strftime);
our %SPEC;
$SPEC{'html2wp'} = {
v => 1.1,
summary => 'Publish HTML document to WordPress as blog post',
description => <<'_',
To use this program, first create `~/html2wp.conf` containing the API
credentials, e.g.:
proxy=https://YOURBLOGNAME.wordpress.com/xmlrpc.php
username=YOURUSERNAME
password=YOURPASSWORD
You can also put multiple credentials in the configuration file using profile
sections, e.g.:
[profile=blog1]
proxy=https://YOURBLOG1NAME.wordpress.com/xmlrpc.php
username=YOURUSERNAME
password=YOURPASSWORD
[profile=blog2]
proxy=https://YOURBLOG2NAME.wordpress.com/xmlrpc.php
username=YOURUSERNAME
password=YOURPASSWORD
and specify which profile you want using command-line option e.g.
`--config-profile blog1`.
then:
% html2wp post1.html
(You should provide blog post title in your HTML in the `<title>` or `<meta
name="title" content="...">`. You can also put categories in `<meta
name="categories" content="cat1,cat2,...">` and tags in `<meta name="tags"
content="tag1,tag2,...">`.)
The above command will create a draft post. To publish directly:
% html2wp post1.html ... --publish
Note that this will also modify your HTML file and insert this element at the
beginning of the document:
<meta name="postid" content="1234">
where 1234 is the post ID retrieved from the server when creating the post.
After the post is created, you can update using the same command:
% html2wp post1.html
You can use `--publish` to publish the post, or `--no-publish` to revert it to
draft.
To set more attributes:
% html2wp post1.html ... --comment-status open \ --extra-attr
ping_status=closed --extra-attr sticky=1
Another example, to schedule a post in the future:
% html2wp post1.html --schedule 20301225T00:00:00
_
args => {
proxy => {
schema => 'str*', # XXX url
req => 1,
description => <<'_',
Example: `https://YOURBLOGNAME.wordpress.com/xmlrpc.php`.
view all matches for this distributionview release on metacpan - search on metacpan
( run in 0.490 second using v1.00-cache-2.02-grep-82fe00e-cpan-2c419f77a38b )