hstanleycrow / easyphptowordpress
免费PHP库,用于从PHP向WordPress发布
dev-main
2023-05-02 23:51 UTC
Requires
- php: ^8.0
- hstanleycrow/easyphpcurlrequest: ^1.0
- vlucas/phpdotenv: ^5.5
This package is auto-updated.
Last update: 2024-10-03 02:48:26 UTC
README
Easy PHP To Wordpress
免费PHP库,用于从PHP向WordPress发布
关键特性
- 获取分类 - 获取WordPress站点的分类列表
- 获取标签 - 获取WordPress站点的标签列表
- 发布HTML内容,包括
- 特色图片
- 分类
- 状态:发布、草稿、待审等
- 所有图片都上传到WordPress,并使用WordPress URL替换图片URL
- 您可以在内容中包含YouTube视频
- 您可以在内容中包含推文
- WordPress URL验证器
- WordPress凭据(用户和应用程序密码)验证器
- 轻松处理错误
使用方法
# Clone this repository $ git clone https://github.com/hstanleycrow/EasyPHPToWordpress/ # install libraries $ composer update # or install using composer $ composer require hstanleycrow/easyphptowordpress
# define credentials # You need a Wordpress application password https://make.wordpress.org/core/2020/11/05/application-passwords-integration-guide/ #This examples are using [DotEnv](https://github.com/vlucas/phpdotenv) to configure the credentials, but you can setup it as you want. $wpSiteURL = $_ENV["WP_SITE_URL"]; $wpUsername = $_ENV["WP_USERNAME"]; $wpApplicationPassword = $_ENV["WP_APPLICATION_PASSWORD"]; # configure in your PHP script the timezone to the Wordpress timezone. This is important. date_default_timezone_set("America/El_Salvador"); # create an object $obj = new WordpressAPI($wpSiteURL, $wpUsername, $wpApplicationPassword);
示例
#Example to validate the URL if ($obj->validateURL()) : echo "URL resolve 200"; else : echo $obj->errorMessage(); endif; #Example how to get Wordpress Categories list echo "<pre>"; if ($categories = $obj->categories()) : print_r($categories); else : echo $obj->errorMessage(); endif; echo "</pre>"; #Example how to get Wordpress Tags list echo "<pre>"; if ($tags = $obj->tags()) : print_r($tags); else : echo $obj->errorMessage(); endif; echo "</pre>"; #Example how to validate credentials echo "<pre>"; if ($obj->validateCredentials()) : echo "Valid Credentials" . PHP_EOL; else : echo "Credentials not valid" . PHP_EOL; echo $obj->errorMessage() . PHP_EOL; endif; echo "</pre>"; #Example to publish into WP $content = <<<HTML <p><b> Hey</b> this is some text for the blog post</p> <h2><a id="user-content-documentation" class="anchor" href="#user-content-documentation" rel="nofollow noindex noopener external ugc"></a>Documentation</h2> <p>The documentation for this library is hosted at <a href="https://simplehtmldom.sourceforge.io/docs/" rel="nofollow noindex noopener external ugc">https://simplehtmldom.sourceforge.io/docs/</a></p> <p><img src="https://eluniverso.space/wp-content/uploads/1143px-The_Sagittarius_dwarf_galaxy_in_Gaias_all-sky_view_ESA399651.jpg" alt="Sagitarius dwarf galaxy" title="Sagitarius" > <h2>Youtube Video</h2> <p>https://www.youtube.com/watch?v=K4TOrB7at0Y</p> <h2>Tweet Thread</h2> <p>https://twitter.com/elonmusk/status/1645266104351178752?s=20</p> <p><img src="//eluniverso.space/wp-content/uploads/Positional-Schematic-of-the-Members-of-the-HR-8799-Exoplanet-System-777x777-1.jpg" alt="HR 8799 planet orbits" title="HR 8799 planet orbits"> <br><br> <p><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAApgAAAKYB3X3/OAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAANCSURBVEiJtZZPbBtFFMZ/M7ubXdtdb1xSFyeilBapySVU8h8OoFaooFSqiihIVIpQBKci6KEg9Q6H9kovIHoCIVQJJCKE1ENFjnAgcaSGC6rEnxBwA04Tx43t2FnvDAfjkNibxgHxnWb2e/u992bee7tCa00YFsffekFY+nUzFtjW0LrvjRXrCDIAaPLlW0nHL0SsZtVoaF98mLrx3pdhOqLtYPHChahZcYYO7KvPFxvRl5XPp1sN3adWiD1ZAqD6XYK1b/dvE5IWryTt2udLFedwc1+9kLp+vbbpoDh+6TklxBeAi9TL0taeWpdmZzQDry0AcO+jQ12RyohqqoYoo8RDwJrU+qXkjWtfi8Xxt58BdQuwQs9qC/afLwCw8tnQbqYAPsgxE1S6F3EAIXux2oQFKm0ihMsOF71dHYx+f3NND68ghCu1YIoePPQN1pGRABkJ6Bus96CutRZMydTl+TvuiRW1m3n0eDl0vRPcEysqdXn+jsQPsrHMquGeXEaY4Yk4wxWcY5V/9scqOMOVUFthatyTy8QyqwZ+kDURKoMWxNKr2EeqVKcTNOajqKoBgOE28U4tdQl5p5bwCw7BWquaZSzAPlwjlithJtp3pTImSqQRrb2Z8PHGigD4RZuNX6JYj6wj7O4TFLbCO/Mn/m8R+h6rYSUb3ekokRY6f/YukArN979jcW+V/S8g0eT/N3VN3kTqWbQ428m9/8k0P/1aIhF36PccEl6EhOcAUCrXKZXXWS3XKd2vc/TRBG9O5ELC17MmWubD2nKhUKZa26Ba2+D3P+4/MNCFwg59oWVeYhkzgN/JDR8deKBoD7Y+ljEjGZ0sosXVTvbc6RHirr2reNy1OXd6pJsQ+gqjk8VWFYmHrwBzW/n+uMPFiRwHB2I7ih8ciHFxIkd/3Omk5tCDV1t+2nNu5sxxpDFNx+huNhVT3/zMDz8usXC3ddaHBj1GHj/As08fwTS7Kt1HBTmyN29vdwAw+/wbwLVOJ3uAD1wi/dUH7Qei66PfyuRj4Ik9is+hglfbkbfR3cnZm7chlUWLdwmprtCohX4HUtlOcQjLYCu+fzGJH2QRKvP3UNz8bWk1qMxjGTOMThZ3kvgLI5AzFfo379UAAAAASUVORK5CYII="></p> <p><img src="https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/DroidSans-Bold.svg" alt="SVG Image"> HTML; $featureImagePath = "https://eluniverso.space/wp-content/uploads/Three-merging-galaxies-1-1024x511.jpg"; $categories = [58]; echo "<pre>"; if ($url = $obj->publishPost( "Title of the post", $content, $categories, $featureImagePath )) : echo $url . PHP_EOL; if ($obj->hasImagesErrors()) : print_r($obj->imagesError()); endif; else : #echo "Credentials not valid" . PHP_EOL; echo $obj->errorMessage() . PHP_EOL; endif; echo "</pre>";
限制
- 目前,您无法为帖子添加标签,但将在未来的版本中考虑。
下载
您可以从这里下载最新版本。
PHP版本
我仅在以下PHP版本中测试了此类。因此,如果您有旧版本且无法工作,请告知我。
致谢
此软件使用了以下开源软件包
支持
许可证
MIT
www.hablemosdeseo.net · GitHub @hstanleycrow · Twitter @harold_crow