aristath/gh-sponsors-list

在您的插件和主题中显示您的GitHub Sponsors列表。

v1.0 2020-10-03 07:17 UTC

This package is auto-updated.

Last update: 2024-08-29 05:31:13 UTC


README

所以,你是一名WordPress开发者,并且你有一个GitHub Sponsors账户?太好了。如果你还没有,你可以在github.com/sponsors上创建一个。
现在你已经有了账户和一些赞助商,你想表达你的感激之情,并将他们作为赞助商包含在你所有的开源项目中。
这正是这个简单的类发挥作用的地方。它从GitHub Sponsors API检索您的赞助商,并将它们打印到您想要的位置。

步骤 1:创建新的GitHub令牌。

首先,您需要在GitHub上创建一个新的个人访问令牌。要创建一个,请访问github.com/settings/tokens并创建一个新的令牌。
重要提示:不要给您的令牌添加任何权限。您创建的令牌将用于API身份验证,没有其他用途。因此,它不需要任何权限。我建议您不要给令牌添加任何权限。

复制此令牌,我们稍后会用到。

步骤 2:如果您的插件/主题在GitHub上,请对令牌进行编码

作为安全预防措施,GitHub会自动吊销在公共存储库中发现的令牌。因此,您需要对其进行编码,以便将其添加到产品中而不会引起GitHub的抱怨。
为此,打开浏览器中的控制台,并将以下内容粘贴到其中,将'YOUR_TOKEN_HERE'替换为您实际的令牌

function convert_token( token ) {
  let result = '';
  token.split( '' ).forEach( function( char ) {
		let charHex = parseInt( char, 16 ).toString();
		charHex = 1 === charHex.length ? '0' + charHex : charHex;
		result += charHex;
	});
	console.log( result );
}
convert_token( 'YOUR_TOKEN_HERE' );

完成后,您将在控制台中看到打印出的编码令牌。明白了?太好了。复制它,我们稍后会用到。

步骤 3:添加打印赞助商的功能

我们现在将创建一个新的功能来打印赞助商。

/**
 * Print GitHub Sponsors.
 *
 * @return void
 */
function my_plugin_or_theme_the_github_sponsors() {

	// Require the class.
	if ( ! class_exists( '\Aristath\GHSponsors' ) ) {
		require_once 'gh-sponsors-dashboard/Sponsors.php';
	}

	// Init the object.
	$sponsors = new \Aristath\GHSponsors();

	// Set the token.
	$sponsors->set_token( 'MY_ENCODED_TOKEN', true );

	// Set the username.
	$sponsors->set_gh_username( 'aristath' );

	// Uncomment this line to not add CSS.
	/* $sponsors->add_styles = true; */

	// Manually inject a sponsor.
	$sponsors->add_sponsor(
		[
			'name'    => 'aristath',
			'url'     => 'https://aristath.github.io',
			'img'     => 'https://avatars0.githubusercontent.com/u/588688?s=460&u=b2865bad64212673fc4ab425231e0a61aa9a2193&v=4',
			'classes' => 'round',
		]
	);

	// Get GitHub Sponsors from the API.
	$sponsors->add_sponsors_from_api();

	// Print the sponsors.
	$sponsors->the_sponsors_details();	
}

注意事项

  • 显然,my_plugin_or_theme_the_github_sponsors不是一个好函数名,选择一个更好的。
  • $sponsors->set_token()调用中,将MY_ENCODED_TOKEN替换为步骤2中获得的编码令牌。
  • $sponsirs->add_sponsor()调用可以用来手动注入赞助商。也许您的公司或亲戚赞助了您,但不是通过GitHub Sponsors。如果您想表达感激之情,这是您应该这样做的方式。

步骤 4

在任何地方调用您创建的功能。您可以在插件或主题的管理页面、关于页面或其他任何您想要的位置添加它。

我构建的一切都是开源的(查看誓言)。如果您喜欢这个项目,并以任何方式帮助了您,并想支持我,您可以成为赞助商。每一分钱都很有帮助,您可以访问github.com/sponsors/aristath来提供帮助并表达您的感激之情。