Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Plugin Feature
#1
Again this is already on roadmap but I think it'd be nice to make some suggestions for this implementation and gather maybe informations from more users.

#1 I'd say that components&plugin should be in a one tab. They're pretty much the same - enhancing the capabilities of system, each in a different way. So the tabs in admin would be:
Pages
Files
Theme
Plugins & Components (kinda need a general name for this loooong name Smile
Backups

#2 It definitely needs to work in a same manner themes does - it just loads the folders and instatly shows all the plugins in a certain directory

The rest after I study structure of this project Smile
Reply
#2
I think it will be best like this:

*Publish
-files
-pages
*Theme and layout
-theme
-maybe plugins?
*Settings
*Security
-backup
Reply
#3
With plugins a whole new type of integration framework might have to be add. That all depends I guess on how Chris wants it to be a competitor with wordpress
------
I can't design for shit but I can code the shit out of your design
Reply
#4
Derek Wrote:That all depends I guess on how Chris wants it to be a competitor with wordpress
Not sure how this "competes" with WordPress specifically given it's missing.. a blog feature, search, RSS etc. I believe it is in fact more of what Chris has billed it as - a simple CMS. WP has had to do a lot to just get things like "Pages" in place Smile

I'd like to see something to handle the missing page elements such as:
* Image / File / Attachments UI
* Component Managment

If this happens through Plugins or through the Core code, it probably doesnt matter to me - I only assume modularizing code into plugins would make it easier if someone wanted to make or enhance their own plug. FrogCMS as well as countless others have been down the same path...
Reply
#5
FFS no wordpress competitor please! just a simple CMS targeted at small bussiness sites!
Reply
#6
I do want GetSimple to be "pluggable" for certain things like the edit.php page, theme.php page, but other than that... I do not plan on adding many features to the core. I think if we do the Plugins/Modules right, then everyone wins b/c it will allow for developers to create plugins without bloating the internal code of GS.
- Chris
Thanks for using GetSimple! - Download

Please do not email me directly for help regarding GetSimple. Please post all your questions/problems in the forum!
Reply
#7
oh, and absolutely no competitor to WP - We will never win, and would just get lost in the crowd. There is a certain niche I want to target, and I believe that niche is very under-targeted. With a little hard work, we can become the defacto standard for small non-complicated/basic sites.
- Chris
Thanks for using GetSimple! - Download

Please do not email me directly for help regarding GetSimple. Please post all your questions/problems in the forum!
Reply
#8
I didn't ncessarily mean a competitor - I meant more as a viable alternative (if blogging is not needed)
------
I can't design for shit but I can code the shit out of your design
Reply
#9
I've been thinking a little bit about the way plugins could be added and there is solution that came to mi mind.
I really like components (and now it also supports php) so I was thinking why not to make it something similar. Imagine that you'd just put plugin to a certain folder like themes (that is pretty much in every CMS) but plugin would be divided into under the hood and views (you can as well take typical "model controller view"... that pretty much doesn't matter from point of a regural person). What is important is that this plugin would have just generated their own "components" where you coul simply create a new component or edit existing ones and it would only generate a simple function like components does (e.g. <?php get_component('tagline'); ?>). This could really easily fit into system. Even more "drastic" way would be to start considering components as plugins (so every single component would be a plugin) and they would be divided in admin also).
This way you could create "components plugin" for analytics (meaning batch of components containing analytics snippets) or "components plugin" for a small text all over the website, but also a real plugins like photogallery etc.
What i described so far is how you could prepare plugins for front end. I've been giving a thought to integrating plugins to admin a little too, but I haven't figured the moste efficient way to do that yet (just a bunch of average ones). The biggest problem in admin is how to decide which plugin should get its own tab for managing (like galleries or ecommerce solutions and stuff like that) and which shouldn't (so there would be a "plugin" tab with all the less important plugins (like a small statistics scripts or simple rss feed) it would be nice to get in touch with developers to talk about this and maybe find very effective solution for this too... or at least get their feedback.
Reply
#10
wow - thats a lot to take in... Let me think about this and see how it might work. thanks for the ideas!
- Chris
Thanks for using GetSimple! - Download

Please do not email me directly for help regarding GetSimple. Please post all your questions/problems in the forum!
Reply
#11
well it looks like it's difficult but all there is to it is to add a new tab a create folder + guidelines for developers how to create plugins. the way how to integrate more advanced components will be complicated, but nobody says it has to be right away... maybe you could make it possible to add a new tab by including file to a certain folder (in a similar manner themes does work) and it would depend on developers whether they would like to make their own tab or just manage plugin/component from component tab
Reply
#12
Please, no bloated code and frenetic upgrade pace! That's one big turn-off to WordPress, for theme and plugin developers, web designers and WP end users. You have to upgrade to fix a security patch every couple of months and then when you have major upgrades (which seem to happen once a year at least), you sometimes have to rip up your themes and plugins and start over.

GS lacks certain features of [insert your favorite CMS here], but that's it's appeal to me. If you find yourself wanting this or that feature, then perhaps GS isn't for you/your client. That's not to say that it can't grow and add new features of its own, but any time I see someone comparing one CMS to another, I say, well then go use THAT CMS.

Even the fact that there's no fancy file upload feature like WP or any of the other big dogs have, that's fine. I am currently working on two commercial GS sites; one I just launched yesterday (within HOURS of the domain purchase) and one I'm getting ready to start this weekend. Both end users (clients) are at least sophisticated enough to be able to upload a file via the Files tab, and then copy and paste that link URL into a page where they want it. (The beauty of Tiny MCE!)

GS's components feature is pretty powerful in a simple CMS. And it has a lot of potential. And it is the key in creating some pretty cool things with GS. I'm not trying to rain on anyone's parade or discourage development. I just wouldn't want GS to try to be something it's not. it's currently targeting a small, overlooked niche market. That's something that is long overdue, IMHO.
Pixelita Designs
http://www.pixelita.com
Visit Serbia's biggest and best internet forum!
http://www.burek.com
Reply
#13
Just some rough thoughts, inspired from jquery style plugins.

Code:
Class pluginName(){
$db = array(
   info = array(
    name = "",
    author = "",
    version = "",
    website = "",
    license = "",
    requires = array()    
   ),
   files = array(
    "users" = "users.xml",
    "sites" = "sites.xml"
   ),
   settings = array(
    blah = "lol"
   )
  )
  /* plugin admin screens */
  function optionsRender($key $value){
   /* render form
    *  key & value can be used to chage how / what the config form displays.
    */
  }
  function optionsProcess($key $value){
   /* process form
    *  operates on form values and runs the get & set below.
    */
  }
  function configSet($key $value){}
  function configGet($key $value){}
  
  /* plugin start logic */
  function init(){
   /* setup hooks */
  }

  /* hooks */
  function renderList($key, $value){}
  function renderItem($key, $value){}
  function doSomething($key, $value){}

  function install($key, $value){
    // do things required by the plugin to operate, possibly create a folder
  }
  function uninstall($key, $value){
    // reverse the installation process.
  }

  function healthcheck($key, $value){
    // make sure the plugin requirements are good.
  }

}

Those hooks in there are unique to the plugin.

Installation will create a manifest.xml file in the plugin folder. describing the steps taken.
Fear is mindkiller, the little death that obliterates.
Reply
#14
I wouldn’t want to be structured exactly like that. Wouldn’t XML-structured files go much better with how GetSimple functions? Especially when you want to include meta information about the plugin author.
“Don’t forget the important ˚ (not °) on the a,” says the Unicode lover.
Help us test a key change for the core! ¶ Problems with GetSimple? Be sure to enable debug mode!
Reply
#15
I'm new to GS, but if you are looking to add a plugin system take a look at ExpressionEngine's system hooks if you haven't seen them.
Reply
#16
Thanks litzinger. We've already developed the core of the plugin system, and it will be in the 2.0 launch. I am very excited about this because of the possibilities it will now open for GetSimple.
- Chris
Thanks for using GetSimple! - Download

Please do not email me directly for help regarding GetSimple. Please post all your questions/problems in the forum!
Reply
#17
Zegnåt Wrote:I wouldn’t want to be structured exactly like that. Wouldn’t XML-structured files go much better with how GetSimple functions? Especially when you want to include meta information about the plugin author.

Very true, what I posted was a indication of my desires for what a plugin could achieve.
Fear is mindkiller, the little death that obliterates.
Reply




Users browsing this thread: 1 Guest(s)