我有一个发布到WordPress的bash脚本。它做得很好,但我想让它为帖子添加标签。它使用WP-CLI,似乎没有办法从帖子中添加标签。
澄清一下,我说的是帖子标签,而不是HTML标签。 此外,此bash脚本正在托管WordPress站点的同一台服务器上运行。
我还找到了blogpost.py,但它似乎也没有标记功能。
从我读过的内容来看,我认为我能够以某种方式使用XML-RPC完成我想要的工作,但我几乎一无所知。
这是我一直在使用的WP-CLI命令。哪个有效,但不添加标签。
wp post create --post_title="This is the title" --post_content="This is the post" --post_status=future --porcelain
绝望中,我尝试添加--post_tags="these are tags"
,但它没有用。我几天来一直在寻找答案。
我只是希望能够通过cronjob制作带有标签和类别的WordPress帖子。我熟悉bash,所以这是最好的,但是如果你知道使用其他语言的任何解决方案,那也是受欢迎的。
感谢。
答案 0 :(得分:5)
正如您所知,帖子标签是名为post_tag
的WordPress taxonomy(如类别)。
您需要一组wp post
的子命令,特别是wp post term
来编辑它们。
您还需要WP-CLI v0.18.0或更高版本 - 旧版本没有它。
在所有这些示例中, 1 表示帖子ID。
将一个或多个标记添加到任何现有标记
用空格分隔多个标签(不是逗号。)
wp post term add 1 post_tag foo
Success: Added term.
“设置”一个或多个标记
这将替换(覆盖)帖子的任何现有标签
您可以使用此代替remove
,然后使用add
(需要少一个命令。)
用空格分隔多个标签。
wp post term set 1 post_tag bar baz
Success: Set terms.
列出当前代码
wp post term list 1 post_tag
+---------+------+------+----------+
| term_id | name | slug | taxonomy |
+---------+------+------+----------+
| 7 | bar | bar | post_tag |
| 5 | baz | baz | post_tag |
+---------+------+------+----------+
删除代码
wp post term remove 1316 post_tag baz
您也可以将其用于类别或任何其他分类。
答案 1 :(得分:0)
现在可以更简单地完成此操作。在当今最新的wp-cli(2.4)版本中,tags_input是wp post创建和更新的选项。因此,您可以使用
animal.addAll([{ "display": "Ferret", "value": "3",}, {"display": "Bird", "value": "4",}]);
或
wp post create file --tags_input="Tag1,Tag2,Tag3.."