开发者 | joytou |
---|---|
更新时间 | 2020年5月30日 11:11 |
PHP版本: | 5.4 及以上 |
WordPress版本: | 5.4 |
版权: | GPLv2 |
版权网址: | 版权信息 |
[show-repo src="{{code-managed plant}}" user="{{username that the repo want to display}}" repo="{{repository name that the repo want to display}}"/]
Example Code
[show-repo src="github" user="joytou" repo="WP-Bing-Background"/]
[show-repo src="gitee" user="joytouwu" repo="WP-Bing-Background"/]
Upgrade Notice
The './mod/' directory needs to be backed up before updating, it will be overwritten through the system update mechanism.
Steps to Upgrade
php
<?php
class SHOW_REPOS_MOD_{{PLANT_NAME}} {
public $api_url = '{{url}}'; //Plant api url that point to repo, usual it is such: https://{{url}}/{:user}/{:repo}
public $template_css = '{{css_file_url}}'; //Recommend to write it follow the format: css/{{plant name}}.css
public $template_js = '{{js_file_url}}'; //Recommend to write it follow the format: js/{{plant name}}.js
public $template_html = '{{html_file_url}}'; //Recommend to write it follow the format: {{plant name}}.html
public function data_format($original_data){
$data = array();
$data['name'] = $original_data['{{name}}']; //The api struct data key which get the repo's name.
$data['description'] = $original_data['description']; //The api struct data key which get the repo's description.
$data['url'] = $original_data['html_url']; //The api struct data key which get the repo's url, which link to the repo.
$data['download_url'] = 'http://github.com/'.$original_data['full_name'].'/zipball/master'; //The api struct data key which get the repo's download url, or the url that can download the repo.
$data['owner'] = $original_data['owner']['login']; //The api struct data key which get the repo owner's name.
$data['owner_url'] = $original_data['owner']['html_url']; //The api struct data key which get the owner's url, which can link to the owner.
$data['subscribers'] = $original_data['subscribers_count']; //The api struct data key which get the count of subscriber(s)/starer(s) about the repo.
$data['watchers'] = $original_data['watchers']; //The api struct data key which get the count of watcher(s) about the repo.
$data['forks'] = $original_data['forks']; //The api struct data key which get the count of has forked about the repo.
$data['home_page'] = $original_data['homepage']; //The api struct data key which get theurl of the repo's homepage.
$data['branch'] = $original_data['default_branch']; //The api struct data key which get the default branch name of the repo.
$data['ctime'] = $original_data['created_at']; //The api struct data key which get the repo's created time.
$data['mtime'] = $original_data['updated_at']; //The api struct data key which get the repo's last updated time.
$data['ptime'] = $original_data['pushed_at']; //The api struct data key which get the repo's last pushed time.
return $data;
}
}
3. Add and write the html template file in the directory './mod/template/', which want to display in the shortcode, and add such label where want to display the specified infomation:
{{name}} => Repo's name
{{description}} => Repo's description
{{url}} => Repo's url
{{download_url}} => The url that can download the repo
{{owner}} => Repo owner's name
{{owner_url}} => Repo owner's url
{{subscribers}} => The num of subscribing/staring the repo
{{watchers}} => The num of watching the repo
{{forks}} => The num of forking the repo
{{home_page}} => Repo's homepage url, which can link to repo's homepage
{{branch}} => Repo's default branch name
{{ctime}} => Repo's created time
{{mtime}} => Repo's last updated time
{{ptime}} => Repo's last pushed time
4. Add the css/js file to the directory './mod/template/css/' / './mod/template/js/' as if needed, and name it(s) to the plant name (format: {{plant name}}.js / {{plant name}}.css)