Hilfe, ich versuche, einen neuen Beitrag in meinem Wordpress-Blog mit benutzerdefinierten Feldern mit dem folgenden Perl-Skript mit metaweblogAPI über XMLRPC zu erstellen, aber es scheint ein Problem mit den benutzerdefinierten Feldern zu sein. Nur das zweite benutzerdefinierte Feld (Breite) scheint jemals gepostet zu werden. Die "Höhe" kann nicht richtig veröffentlicht werden. Wenn ich ein weiteres Feld hinzufüge, erhalte ich die Fehlermeldung "Ungerade Anzahl von Elementen in anonymem Hash". Das muss etwas Einfaches sein - würde jemand, der gütig ist, meine Syntax überprüfen? Vielen Dank.Warum erhalte ich in Perl eine Warnung "Ungewöhnliche Anzahl an Elementen in anonymem Hash"?
#!/usr/bin/perl -w
use strict;
use RPC::XML::Client;
use Data::Dumper;
my $cli=RPC::XML::Client->new('http://www.sitename.com/wp/xmlrpc.php');
my $appkey="perl"; # doesn't matter
my $blogid=1; # doesn't matter (except blogfarm)
my $username="Jim";
my $passwd='_____';
my $text=<<'END';
This is the post content...
You can also include html tags...
See you!
END
my $publish=0; # set to 1 to publish, 0 to put post in drafts
my $resp=$cli->send_request('metaWeblog.newPost',
$blogid,
$username,
$passwd,
{
'title' => "this is doodoo",
'description' => $text,
'custom_fields' => {
{ "key" => "height", "value" => 500 },
{ "key" => "width", "value" => 750 }
},
},
$publish);
exit 0;
Siehe diese Antwort zum Kopieren eines Hashref http://StackOverflow.com/a/7083603/2015531 – ophidion