[WordPress] 外掛分享: Diana GreenConnect

首頁外掛目錄 › Diana GreenConnect
全新外掛
安裝啟用
★★★★★
5/5 分(1 則評價)
217 天前
最後更新
問題解決
WordPress 6.7+ PHP 7.4+ v1.0.9 上架:2025-09-02

內容簡介

**總結:**
Diana GreenConnect 是一個 WordPress 外掛,提供一個 Gutenberg 區塊,可將功能強大的 DianaWidget 活動運輸規劃工具無縫整合到 WordPress 頁面和文章中。使用者可以計畫從活動到運輸公共交通的路線,並設定特定的開始時間、結束時間和持續時間。

**問題與答案:**

1. 什麼是 Diana GreenConnect?
- Diana GreenConnect 是一個 WordPress 外掛,用於將 DianaWidget 活動運輸規劃工具整合到 WordPress 頁面和文章中。

2. 使用 Diana GreenConnect 可以讓使用者做什麼?
- 可以計畫從活動到運輸公共交通的路線,並設定特定的開始時間、結束時間和持續時間。

3. 如何管理安全的 API 認證?
- 可以在 WordPress 設定中存儲 Zuugle 服務的客戶端 ID 和客戶端密鑰,並在服務端使用這些認證來獲取 API 令牌。

4. Diana GreenConnect 有哪些功能?
- 提供 Gutenberg 區塊和短碼、自定義活動參數、動態小工具加載、分享功能、多個小工具實例以及回應式設計。

5. 如何設定 Diana GreenConnect 外掛?
- 在 WordPress 管理員區域中,前往「設定 > Diana GreenConnect」,輸入您的客戶端 ID 和客戶端密鑰,保存設置即可使用。

外掛標籤

開發者團隊

⬇ 下載最新版 (v1.0.9) 或搜尋安裝

① 下載 ZIP → 後台「外掛 › 安裝外掛 › 上傳外掛」
② 後台搜尋「Diana GreenConnect」→ 直接安裝(推薦)
📦 歷史版本下載

原文外掛簡介

Diana GreenConnect is a WordPress plugin that provides a Gutenberg block to seamlessly integrate the powerful DianaWidget Activity Transit Planner into your WordPress pages and posts. It allows users to plan public transport to and from activities with specific time constraints like start times, end times, and duration.
This plugin acts as a wrapper for the DianaWidget, a sophisticated JavaScript library designed for activity-based transit planning. By using the “Diana GreenConnect Widget” block, you can easily embed this functionality into your content, allowing your site visitors to:

Find transit connections to a predefined activity.
Specify their starting location with autocomplete suggestions.
Select a date for their travel using an adaptive calendar.
View connection results with clear timelines and transport modes.

The plugin handles secure API authentication with Zuugle Services by allowing administrators to store Client ID and Client Secret in WordPress settings. These credentials are then used server-side to fetch an API token, which is passed to the widget. Each block instance can be configured with unique activity details directly within the WordPress editor.
Features

Gutenberg Block & Shortcode: Easily add the widget anywhere using the block editor or a flexible shortcode for use in the Classic Editor, page builders, or theme files.
Secure API Credential Management: Store your Zuugle Services Client ID and Client Secret securely in WordPress settings. API tokens are fetched and handled server-side.
Customizable Activity Parameters: For each block instance, you can configure:

Activity Name and Type
Start and End Locations (coordinates or address)
Display Names for locations
Earliest and Latest Start/End Times for the activity
Activity Duration
Timezone and Language
Custom labels for start/end times
Multiday and date override settings

Dynamic Widget Loading: The widget script is loaded from the official CDN.
Sharing: Allows users to share their planned journey via a unique link.
Multiple Widget Instances: Supports multiple Diana GreenConnect blocks on a single page, each with its own configuration.
Responsive Design: Leverages the responsive capabilities of the core DianaWidget.

About the DianaWidget JavaScript Library
The core functionality is provided by the DianaWidget, a standalone JavaScript library. For more detailed information about the widget’s features, its own configuration options (which this plugin exposes), styling, and architecture, please refer to its GitHub repository:
https://github.com/zuugle-services/DianaWidget
Configuration
1. Getting Your API Credentials
To use the Diana GreenConnect widget, you first need a Client ID and Client Secret. These are used to securely connect to the Zuugle Services API.

Register on the Dashboard: Go to the zuugle-services.com dashboard and sign up for an account.
Application Creation: Once your registration is complete, an “Application” will be created for you in the Zuugle Services backend.
Find Your Credentials: Log in to your dashboard and navigate to the API credentials or application settings section. There you will find your unique Client ID and Client Secret.

The Client ID is a public identifier, but the Client Secret is confidential and must be kept secure. This plugin stores it safely in your WordPress database and never exposes it to the public.
2. Plugin Setup
Once you have your credentials:

Navigate to Settings > Diana GreenConnect in your WordPress admin area.
Enter your Client ID and Client Secret into the respective fields.
Save the settings. Your plugin is now ready to use.

How to Use
Using the Gutenberg Block

Add the Block:

Open a page or post in the WordPress block editor.
Click the + icon to add a new block.
Search for “Diana GreenConnect Widget” and select it.

Configure the Block:

With the block selected, use the Inspector Controls (sidebar on the right) to set the specific details for the activity.

Save and View: Save your page/post. The Diana GreenConnect Block will appear on the frontend.

Using the Shortcode
You can embed the widget using the [diana_greenconnect_widget] shortcode. This is ideal for the Classic Editor, page builders (like Elementor or Divi), or widget areas.
All attributes from the Gutenberg block are available. Convert the attribute name to all lowercase. For example, activityName becomes activityname.
Example:
[diana_greenconnect_widget activityname=”Museum Visit” activitydurationminutes=”120″ activitystartlocation=”Museum Address” activitystartlocationtype=”address”]
Important: For the user start location caching to work with a shortcode, you must provide a unique and stable widgetid.
Example with a stable ID:
[diana_greenconnect_widget widgetid=”main-museum-widget” activityname=”Museum Visit” …]
Example of how to use this function:
You can also render the Diana GreenConnect Widget block programmatically within your PHP code using the helper function diana_greenconnect_get_block_html().
Example:
'main-sidebar-hiking-widget',

// Required
'activityName' => 'Marktschellenberger Eishöhle im Untersberg',
'activityType' => 'Hiking',
'activityStartLocation' => '47.72620173410345, 13.042174020936743',
'activityStartLocationType' => 'coordinates',
'activityEndLocation' => '47.70487271915757, 13.038710343883247',
'activityEndLocationType' => 'coordinates',
'activityEarliestStartTime' => '08:00:00',
'activityLatestStartTime' => '14:00:00',
'activityEarliestEndTime' => '10:00:00',
'activityLatestEndTime' => '20:00:00',
'activityDurationMinutes' => '300',

// Optional
'activityStartLocationDisplayName' => 'Untersbergbahn Talstation',
'activityEndLocationDisplayName' => 'Eishöhle, Marktschellenberg',
'timezone' => 'Europe/Vienna', // Set timezone in which all config times are given
'activityStartTimeLabel' => 'Beginn',
'activityEndTimeLabel' => 'Ende',
'apiBaseUrl' => 'https://api.zuugle-services.net',
'language' => 'EN', // Currently supported: EN, DE, FR, IT, TH, ES
'overrideUserStartLocation' => 'Wien, Stephansplatz',
'overrideUserStartLocationType' => 'address',
'displayStartDate' => null,
'displayEndDate' => null,
'destinationInputName' => 'Destination Input Placeholder',
'containerMaxHeight' => '650px',
'hideOverriddenActivityStartDate' => true,

// Multiday parameters
'multiday' => false,
'overrideActivityStartDate' => "2025-05-20", // Can also be used for single-day date
'overrideActivityEndDate' => "2025-05-25",
'activityDurationDaysFixed' => 2,

// Caching & Sharing parameters
'cacheUserStartLocation' => true,
'userStartLocationCacheTTLMinutes' => 15,
'share' => true,
'allowShareView' => true,
'shareURLPrefix' => '',

// ClientID and ClientSecret are typically managed by the plugin's settings page.
// Only include them here if you need to override for a specific instance.
// 'clientID' => 'your_client_id_override',
// 'clientSecret' => 'your_client_secret_override',
];

$widget_info = diana_greenconnect_get_block_html( $my_widget_attributes );

// Output the HTML (e.g., in a template file or via a shortcode)
echo $widget_info['html'];
?>

When using this function, providing a stable widgetId is crucial for the caching feature to work correctly.
External Services
This plugin connects to external services provided by Zuugle Services GmbH to provide its transit planning functionality.

DianaWidget JavaScript Library: The core functionality of this plugin is provided by the DianaWidget, a JavaScript library that is loaded from a Content Delivery Network (CDN) at https://diana.zuugle-services.net/dist/DianaWidget.bundle.js. This script is loaded on pages where the Diana GreenConnect block is used to display the transit planning widget.

Zuugle Services API: To function, the widget needs to communicate with the Zuugle Services API, which has its main endpoint at https://api.zuugle-services.net. This plugin securely handles the authentication with this API.

What data is sent and when:

To obtain an access token, the plugin sends a Client ID and Client Secret (which are configured in the plugin’s settings) to the token endpoint at https://api.zuugle-services.net/o/token/. This happens on the server-side when a user visits a page containing the widget and a valid token is not already cached. No user data is sent in this step.
When a user interacts with the widget to find transit connections, the widget sends the user-specified starting location, the pre-defined activity location, and the selected date and time to the Zuugle Services API to retrieve transit information.

Terms and Privacy:

The use of these external services is subject to the provider’s terms and policies. You can find them here:

Terms of Service (Diana GreenConnect): Terms of Service
Terms & Conditions: Terms & Conditions
Privacy Policy: Data Privacy

文章
Filter
Apply Filters
Mastodon