Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Plugins are class library which extend the functionalities in BeYourMarket. It allows easy modification, customization, and enhancement in BeYourMarket. Instead of changing the core programming of BeYourMarket, you can add functionality with BeYourMarket Plugins. For example, Payment Plugin to accept/pay using Stripe, or Widget Plugin to add GoogleAnalytics script.

Plugin Name

Plugin should be simple and short to describe what the Plugin will do. The naming convention should be Plugin.{Group}.{Name}. {Group} is your plugin group (for example, "Payment"). {Name} is your plugin name (for example, "Stripe")

Plugin Location

To create a plugin, first thing is to create a new Class Library project with the Plugin Name in the solution. The Plugin shall be placed under Plugins directory in the solution (NOT the Plugins subdirectory located in \BeYourMarket.Web directory which is used for already deployed plugins).

Plugin build path

In order for the BeYourMarket.Web to detect the plugin, the compiled dll and corresponding View files needs to be copied to the Plugins directory in BeYourMarket.Web.

Post-build Event can be configured to copy the files to the Plugins directory.

For example, to copy compiled GoogleAnalytics plugin to BeYourMarket.Web\Plugins, set the Post-build event with the following line.

xcopy /S /Q /Y "$(TargetDir)*" "$(SolutionDir)BeYourMarket.Web\Plugins\Plugin.Widget.GoogleAnalytics\"

Plugin manifest

For each plugin, manifest.json is required to describe the meta information of the plugin. It would be used by Plugin Manager in BeYourMarket.Web to get the information of the plugin.

For example, manifest.json for Plugin.Widget.GoogleAnalytics

{
    "Group": "Widget",
    "SystemName": "Plugin.Widget.GoogleAnalytics",
    "FriendlyName": "Google Analytics",    
    "Version": "1.0",
    "SupportedVersions": ["1.0"],
    "Author": "BeYourMarket",
    "DisplayOrder": "1",
    "PluginFileName": "Plugin.Widget.GoogleAnalytics.dll",
    "Description":  "Add Google Analytics script with the tracking id in your marketplace!"
}
  • No labels