dtbaker/envato-wp-theme-setup-wizard

此包的最新版本(dev-master)没有可用的许可信息。

ThemeForest项目的WordPress安装向导,在激活主题后运行。

dev-master 2020-04-17 08:45 UTC

This package is not auto-updated.

Last update: 2024-09-18 17:17:21 UTC


README

在ThemeForest主题激活后运行的逐步安装向导。

视频演示

最好观看此视频演示,以确切了解此插件的功能:ScreenShot

设置说明

  • api文件夹复制到您的Web服务器上(例如,您的网站.com/envato/api/) - 如果它在SSL上托管,则最佳。
  • 此API文件夹将处理oAuth登录,以便在(新)Envato Market插件中自动更新主题。
  • http://build.envato.com注册一个新的应用(勾选“下载用户购买的项目”和“查看用户购买的应用程序创建者项目的权限”)。将server-script.php的完整URL作为确认URL输入。
  • api/server-script.php顶部填写您的Envato应用的值和server-script.php的完整URL。
define('_ENVATO_APP_ID','put-your-envato-app-id-here');
define('_ENVATO_APP_SECRET','put-your-envato-app-secret-here');
define('_ENVATO_APP_URL','http://yoursite.com/envato/api/server-script.php');
  • envato_setup文件夹复制到您的私有$envato_usernameheme文件夹中。
  • 在主题的functions.php中,通过过滤器设置您的Envato用户名和server-script.php文件的完整URL:
// Please don't forgot to change filters tag.
// It must start from your theme's name.
add_filter('twentyfifteen_theme_setup_wizard_username', 'twentyfifteen_set_theme_setup_wizard_username', 10);
if( ! function_exists('twentyfifteen_set_theme_setup_wizard_username') ){
    function twentyfifteen_set_theme_setup_wizard_username($username){
        return 'dtbaker';
    }
}

add_filter('twentyfifteen_theme_setup_wizard_oauth_script', 'twentyfifteen_set_theme_setup_wizard_oauth_script', 10);
if( ! function_exists('twentyfifteen_set_theme_setup_wizard_oauth_script') ){
    function twentyfifteen_set_theme_setup_wizard_oauth_script($oauth_url){
        return 'http://yoursite.com/envato/api/server-script.php';
    }
}
  • 确保TGMPA在您的主题中启用、配置并正确运行(请参阅http://tgmpluginactivation.com/)。此向导与最新版本的TGM集成,以查找需要安装哪些插件。
  • 确保将Envato Market插件添加到TGM中所需插件列表中,可以像这样添加:
        array(
            'name' => 'Envato Market',
            'slug' => 'envato-market',
            'source' => 'https://envato.github.io/wp-envato-market/dist/envato-market.zip',
            'required' => true,
            'recommended' => true,
            'force_activation' => true,
        ),
  • envato_setup/js/envato-setup.js是处理“加载按钮”动画(非常简单且酷)以及处理每个默认安装操作的ajax请求的脚本。
  • ajax请求发生在两个查询中。第一个ajax查询从javascript获取要显示的“加载”文本(例如,“安装页面”)以及执行实际ajax任务的URL和数据。然后javascript执行第二个ajax任务以执行实际操作。然后进行第三个ajax请求以确认它是否成功。
  • envato_setup/content/包含在向导期间将加载的默认内容。例如,envato_setup/content/default.json包含所有文章和自定义文章类型。
  • 如果您将&export=true添加到第一个页面设置向导的URL中,它将输出所需的json数据到envato_setup/content/文件夹,它还将媒体文件放入本地images/stock/文件夹。
  • 如果您想更改要导出的元字段,请查看这里:https://github.com/dtbaker/envato-wp-theme-setup-wizard/blob/master/envato_setup/envato-setup-export.php#L54
  • 如果您需要替换存储在帖子元字段中的帖子ID、URL或短代码内容,请查看这里的_elementor_id_import函数:https://github.com/dtbaker/envato-wp-theme-setup-wizard/blob/master/envato_setup/envato_setup.php#L1890
  • _parse_gallery_shortcode_content函数用于替换URL、画廊短代码ID和contact-form-7 ID。此函数在一些元字段上也运行(例如,Elementor可以存储短代码和部分内容在元字段中,需要在此处替换内容)

网站样式

ScreenShot

您可以为您的网站设置多种样式。这样可以导出不同的内容/图片/选项/帖子等,用户可以在设置向导中挑选他们想要的样式。

安装程序会读取dtbwp_site_style主题模块值,如下所示

get_theme_mod( 'dtbwp_site_style', $this->get_default_theme_style() );

在此处更改envato_setup.php中的可用样式

$this->site_styles = array(
    'style1' => 'Style 1',
    'style2' => 'Style 2',
);

如果您只有一个样式,可以将此设置为空数组。

将每个样式的标志/缩略图放入envato_setup/images/styleX/文件夹。

Envato Market 插件

Envato Market 插件非常新。详情请见:[GitHub链接](https://github.com/envato/wp-envato-market)。默认情况下,Envato Market 插件需要用户生成用于 API 的个人令牌。对于新用户来说,这可能既耗时又令人困惑。此envato-setup.php脚本与/api/中的代码结合,向 Envato Market 插件添加了一些挂钩,以启用单点点击 oAuth 登录进行更新。这远非完美,但这是使 oAuth 登录与更新一起工作的唯一方法。

请随意拆分我的 oAuth 代码。您会发现这是一种将购买代码重新带回 WordPress 主题的方法。所以如果您只需要购买代码用于其他目的,您可以使用这个 oAuth 跳转轻松获取。

警告

此脚本与我的当前主题(美丽的水彩画)高度集成,通过引入配置变量并运行在主题中定义的一些其他挂钩/函数。这个向导不会直接使用。但希望它给您一些灵感:)

更多详情。

请随意提交改进的拉取请求。

请随时在论坛[链接](https://forums.envato.com/t/fully-automatic-plugin-install-default-content-oauth-theme-updates-in-a-wizard/20504)提问或在此 GitHub 上创建问题。