Search

I haven't come across anything listed elsewhere, so I will start this discussion.

I am always looking for extensions to create, as part of a work initiative and also wanting to better the community, but I can never think of anything that would be useful. Or I think of an ingenious idea that will blow everyone away in it's awesomeness... but some deceptive ninja has beaten me to it.

So! People should list their ideas/wants here (or if an area already exists, then it should be easier to find!). Then I/developers can come on here and say "ooo damn what an ingenious idea, dibs on creating {insert extension here}".

...GO! Someone list something asap!

If you're wanting a good extension to build, I began work on the Twitter Notifier extension, but have since put it on hold until I learned more about extensions.

My time is limited now, as I am taking more responsibilities with other parts of Symphony, so if you want it, the code is here.

It is very bare at present, but the Wiki has the gist of what I was trying to achieve.

It would be a great addition to Symphony IMO to be able to notify a user's Twitter account from the backend, and frontend.

Feel free to take a look.

Also, in the near future, I intend to start work on organising and updating how we see and use our extensions in the context of this site. There are no concrete plans as of yet, but this thread will definitely help out in the quest.

Keep your eyes peeled for some announcements from the Symphony Team and Working Groups in the near future...

Keep your eyes peeled for some announcements from the Symphony Team and Working Groups in the near future

Ditto. This is something the UX Working Group have spoken with Allen/Craig about, so we should bash our heads together.

but I can never think of anything that would be useful. Or I think of an ingenious idea that will blow everyone away in it's awesomeness... but some deceptive ninja has beaten me to it.

Those ideas usually come in the most bizarre circumstances — while you're taking a shower, or driving to work. Only a small number of extensions are born from "coolness". The vast majority are born out of necessity — our projects or clients require a certain piece of functionality that doesn't exist, and it needs to. So your starting point should be what do you need? Remember, if you release an extension you're generally expected to support it over time, so it's a commitment.

I keep a list of new ideas and extensions that need love. There are some concepts that start as screenshots or proof of concepts but never get any further, because they are complex or the developers don't have time to commit. Off the top of my head Symphony needs:

  • a decent image upload field, a few exist so be sure to check, but the ability to specify min/max dimensions, sizes etc (I've started this but never finished, and had some more ideas)
  • Internet Explorer styles for the backend. We never bother testing, but some clients ask for it
  • Google Analytics integration

What do you need for your own sites?

What do you need for your own sites?

That's part of the problem unfortunately. At work, we build our projects around what Symphony can already do. So the opportunity or circumstance never arises. Whereas Brendan was saying today that your work was completely different in that you'll custom build anything to meet the clients requirements.

That would be awesome from a development point of view, but for the client it just adds time and money.

I was actually looking into the possibilities of GA integration yesterday but I very quickly got lost in all the documentation and struggled to find a solid starting point.

@designermonkey: thanks, I will take a peak at your extension tomorrow :)

A Google Analytics extension would be neat, especially if it could tie into the dashboard as well.

Related thread: Extension ideas needed

GA integration can be done in two ways. In its simplest form it could be a dashboard panel, pulling in a small report summary of statistics. This is "nice" but in itself not particularly useful, since statistics are only relevant given context (which you can only really get by looking at GA itself). Maybe something with sparklines showing trends might be nice.

The problem is, it doesn't know anything about the structure of your site. What if you could tie GA to specific entries, so that you know visitor numbers for each of your blog posts, or referral sources for each of your products. This is the context that makes stats more useful.

I had an idea a while back that this could be done through a Google Analytics Field that you add to a section. So GA works on URLs, whereas Symphony works on entries. Usually an entry has a known URL on your site (either by a handle or an ID in the URL), so the two can be tied together. You could use the Entry URL Field as a start. This field lets you specify the URL structure that represents an entry on the frontend of your site. So when you create a new entry, the URL string is stored and a clickable link created in the backend. This same URL could be passed to the GA API (as a report filter) to get statistics back.

If you were to cache these results into the field's table in the database, you would then be able to sort this field (in the backend, as well as in a data source) by the value you get from the API (visits?), thereby providing the possibility of a "most popular" thing, based on GA data. This is already doable using the Increment Number field, but using GA feels more powerful.

But, as I said before, it depends on what you need for your own requirements. If it's useful to you and your clients, it'll be useful to us and our clients :-)

If you want a real challenge then a taxonomy system would be nice :-P We've got Nested Categories and the new Breadcrumb field, but there was talk of other ideas but nothing came of it.

I was actually looking into the possibilities of GA integration yesterday but I very quickly got lost in all the documentation and struggled to find a solid starting point.

I've often thought it would be nice to have Symphony integration with Mint. Similar concept to GA, but perhaps more manageable. Might also serve as a way to introduce Symphony to a different audience.

If you want a real challenge then a taxonomy system would be nice :-P

I had a chat with Marco (alpacaaa) right yesterday concerning a future "Taxonomy" extension! ;)

Ideas I have on my to-build list:

Field obfuscator

Lets you choose other fields in the Section to hide. I.e., they can be hidden but still editable if users really want to.

Maybe a "Show hidden fields" checkbox or something?

Slug field

Allows for a persistent handle for a another field in a Section. I.e., Title > Slug, title changes but slug remains the same (unless you override).

Customisable text-formatter

Build using Makrell. Would let you define a series of Makrell templates that you can then use for format text with.

Build using Makrell. Would let you define a series of Makrell templates that you can then use for format text with.

Makrell is very cool!

Makrell is very cool!

Yeah, was thinking that it could be used to "rebuild" Markdown syntax with some extra bits for the use cases that Markdown doesn't provide for. Plus per-project things that you might want to enable your users to do.

I don't get how your GA field idea would work...That is, I understand your concept, but every piece of documentation I have come across only allows for account/property/profile IDs. So from what I understand, it would only be possible to show information specific to a profile or account, i.e stats based on an entire website...

Maybe I should stay clear of APIs haha I've never really had to deal with them before and they confuse the jeebus out of me :s

Hope you don't mind @makenosound but I quite liked your obfascator idea so I ran with it :) I named it differently though...Field Suppressor. Just because a lot of people probably won't know what obfuscate means!

I have put it on github so if you want to take credit it for it, go right ahead.

@touchstone: Awesome work. No need to credit me, after all I didn't really do anything. Put it up!

Makenosound, "Slug field" can be implemented using Reflection field (and maybe checkbox if You really want to have an easy to use option to override previous handle).

Makrell sounds like a great addition for templated text formatters. Thank You for mentioning it :).

"Slug field" can be implemented using Reflection field

Oh really? I was under the impression that the Reflection field would update every time the Entry is saved. My thoughts on a Slug Field were to try and make URLs a little more persistent — or at least make Authors actively aware that they could be breaking dependencies.

Makrell sounds like a great addition for templated text formatters.

Awesomecake. You rock.

Since we're on the subject and people seem keen to build things. I've been musing over another extension for a little while. Vague idea is a way to do simple password protect either Entries or Pages. Think basic auth but within the Symphony ecosystem.

Here are my notes:


Want a way to easily password protect resources a resource. Authentication can be super simple, just a password and nothing else.

Requirements:

  • Admins can enter a password for a specific resource
  • Unauthenticated users get an error when trying to access a protected resource
  • Authenticated users can see the content
  • Returning authenticated users can see the content
  • Incorrect password shows an error

Options:

  • Per-Entry protection
  • Per-Page protection
  • Regex-URL protection

If anyone feels like taking a stab a reusable extension that does something along lines, go for it!

Oh really? I was under the impression that the Reflection field would update every time the Entry is saved. My thoughts on a Slug Field were to try and make URLs a little more persistent — or at least make Authors actively aware that they could be breaking dependencies.

Hmm... You're right. It will not have access to its own old value. So it would require two reflection fields (latest version from github). First would act as a temporary cache and copy value of second one. Second one would be "slug field" and would compare value of first one with value of "main" field (whichever You want to be main) and if it differs and if checkbox field is set, it would select new value (value of "main" field). Otherwise it would select value of first reflection field. A bit hacky but doable ;).

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details