Storage of Meta tags

I’m wondering if the implementation of meta tags should be changed? I would prefer to have the data serialized in a column. This would make it easier to add additional tags.
There are several tags which would make sense for SEO and social media sharing, which are not implemented yet.

As well I’m wondering if it would makes sense to put the rendering in a module and bind it to cbui_beforeHeadEnd event?

What do you think?

Hi Gunnar,

Are you talking about the HTML description and keywords? Have the ability to define more?

Have you considered using the custom fields for this?

Luis Majano
CEO
Ortus Solutions, Corp
www.ortussolutions.com

ColdBox Platform: http://www.coldbox.org
Linked In: http://www.linkedin.com/pub/3/731/483
Social: twitter.com/ortussolutions | twitter.com/coldbox | twitter.com/lmajano

Hi Luis,

we discussed this, but imagine 100 pages and you have to add to all of them custom fields. If there would be something like global custom fields, then it would be ok,
but since description and keywords have been implemented it would make sense to keep the information together.

I would just prefer to have it in one field. If you suggest to do it in separate columns it would be ok as well.

I just think there are some important fields for SEO and Social Media missing and we would be happy to implement it however it will be designed.

Cheers,

Gunnar

Gunnar, are you talking like maybe adding a third field called: Extra Metadata or something like that? But in the UI how would things be stored? JSON, name value pairs, or do we need to add a something else?

I guess I don’t quite remember this.

Maybe we need to expand more.

signature0.jpg

Luis F. Majano
CEO
Ortus Solutions, Corp
www.ortussolutions.com

ColdBox Platform: http://www.coldbox.org
Linked In: http://www.linkedin.com/pub/3/731/483
Blog: http://www.luismajano.com
IECFUG Manager: http://www.iecfug.com

Social: twitter.com/lmajano facebook.com/lmajano

Hi Luis,

I have implemented it in our fork, please have a look at:

I have changed as well the samples (there was a bug for page meta tags anyhow).

There are as well three new meta tags which are required for social media sharing (Google+, Twitter and Facebook)

Gunnar

Hi Luis,

could you check the pull request? I think I submitted it to the wrong branch since all the git stuff is pretty new to me.
Does the addition make sense or do you want to dump it?

Gunnar

I saw a little but have not gotten to it yet. Did you submit it to the development branch.

Luis Majano
CEO
Ortus Solutions, Corp
Toll Free/Fax: 1-888-557-8057
Direct: 909-248-3408
www.ortussolutions.com
Twitter: @lmajano, @ortussolutions

Personally I think the Social Media Meta Tags for Google+ and Facebook to name a few, should be custom modules or widgets. Which are very easy to write and manipulate then, and be customisable for those who want it or not.

Having a separate module, allows for quicker changes and fixes without changes to ContentBox.

I have already written a module to do this, still needs more work but it is exactly what you’re asking.

My view let ContentBox do what it is designed to do, and use a 3rd party module to then give you the information you are looking for. If you require some knowledge on how I did it then please contact me.

The intention was to extend the meta tags, I have added so far:

meta property=“og:title”
meta property=“og:image”

meta property=“og:description”

I think it makes sense to keep them together with meta description. There are some more I would like to add for SEO purposes.

I don’t and it is a personal reason, because a user then has no control on when to add these things.

All of this can be done with the Social Module that I have been working on, which covers twitter, FaceBook and Google+ at the moment and I am adding some more when I get the time.

As much as I agree something needs to be written to support this, I don’t think the current approach your doing is the best solution, and is best suited to a custom module and widget.

I should also add that I have just recently added the other og tags that allow people to have reviews and ratings, which still needs a bit of work…

Please have a look on the code, my intention was, if the field is empty it will not be displayed.
The implementation is in the layout, so the user has full control first in the page admin, second in the layout.

I have posted a link to the commit before.

Do you have a Github repo that I can see how your approach is? How do you store the tag information?

Yes but your also talking about Social Meta tags, and by your own words you’re using the description to add these extra meta tags.

The point I am making to you is that you solution is a half baked fudge, with a whip of not going to work.

The social tags your talking about, especially if you use the recipes and reviews, you need to get extra information to then add to the tag so that it displays say rating: 3.5 with 128 reviews.

How are you going to control something like that with your option?

My view is very straight forward, if ContentBox is going to support these tags out of the box, then the solution you are talking about is not going to be a long term solution as it can’t support all these extra meta tags.

So why do something half baked in the first place?

Actually I didn’t thought about reviews and recipes. For me it looks like recipes need a custom content type.

I don’t care so much if my approach is dumped, if there something else what works fine. If we can help and you can
outline what needs to be done I will discuss it with the others here.

As you indicated interceptors are your best option, especially for the visual display to users anyway. Which will allow you to add the required tags, and if you need to pull data from the DB to add extra information then you have the ability with better ease.

If you need an Administration for this, then you could easily add your own module to add this functionality to provide global settings. However one thing that is missing is a per page type setting, for example I am trying to solve how to decide if a post is a post and not a review post? I do have a solution but I don’t think it is a great solution at the moment.

But Luis, if you’re reading ContentBox needs the ability to provide a hook to add extra information to a settings page for page types and post types. For example WordPress has this now, which allows people to add extra tags and provide a settings option as well, for example a picture that can be used for other posts or pages that is not the image to be used, sort of profile image for the content.

Going off track but I think if you look at how WordPress allows me to add settings to say a post settings page, then a user could then hook into the page and add settings for different Meta Tags that suit that page and then the custom module can take care of settings it needs to know about.

How about just creating an SEO tab alongside the custom fields, that work the same way but storing metadata, This way it is open?

signature0.jpg

Luis F. Majano
CEO
Ortus Solutions, Corp
www.ortussolutions.com

ColdBox Platform: http://www.coldbox.org
Linked In: http://www.linkedin.com/pub/3/731/483
Blog: http://www.luismajano.com
IECFUG Manager: http://www.iecfug.com

Social: twitter.com/lmajano facebook.com/lmajano

No I have other ideas where a hook is better, for example I have the need to apply an image to a piece of Content but the only way to add this is to add it to the Content. So like WordPress again where I need to attach the image, I can’t because ContentBox will not allow for this feature.

I have been trying to work on a photo gallery plugin, and one of the WordPress modules I am modelling this off has the option to add (WordPress default option) to add an image that can be either a thumb nail, or other sized image from the library.

Same as I would like to add one image and have ContentBox provide options for the allowed sizes so that the image could be resized to these sizes as well in one hit. I like the way WordPress does this, because it takes much of the multiple uploading and traffic away from the site by allowing one image, to then be resized.

So a hook for Image Uploading could work here as well, for a custom module to easily do this for themes etc.

But these are just a few of the things that I am thinking about, so I still would prefer seeing the ability to be able to hook to add content to these pages for Custom Modules either way, so that authors can provide extra functionality settings to certain pages.

Works very well for WordPress authors, so I would really like to see the same for ContentBox eventually.

signature0.jpg

I guess you are talking about other fields, I am talking about content HTML metadata attributes.

Also,t he file browser has hooks already for file uploads so you can tap into that.

// HTML Events
“fb_preTitleBar”, “fb_postTitleBar” ,“fb_preLocationBar” , “fb_postLocationBar”, “fb_preBottomBar”, “fb_postBottomBar”,
“fb_preFileListing”,“fb_postFileListing”,“fb_preUploadBar”,“fb_postUploadBar”, “fb_preQuickViewBar”, “fb_postQuickViewBar”,
// folder creation
“fb_postFolderCreation”,“fb_preFolderCreation”,
// removals
“fb_preFileRemoval”, “fb_postFileRemoval”,
// renameing
“fb_preFileRename”, “fb_postFileRename”,
// downloads
“fb_preFileDownload”, “fb_postFileDownload”,
// Uploads
“fb_preFileUpload”, “fb_postFileUpload”

Also, the editor for pages has hooks already in place as well so you can display any form elements you want.

cbadmin_pageEditorSidebarAccordion,

cbadmin_pageEditorSidebar

cbadmin_pageEditorSidebarFooter

cbadmin_pageEditorInBody

cbadmin_pageEditorFooter

Then tap into the save page events:

cbadmin_prePageSave

cbadmin_postPageSave

signature0.jpg

Luis F. Majano
CEO
Ortus Solutions, Corp
www.ortussolutions.com

ColdBox Platform: http://www.coldbox.org
Linked In: http://www.linkedin.com/pub/3/731/483
Blog: http://www.luismajano.com
IECFUG Manager: http://www.iecfug.com

Social: twitter.com/lmajano facebook.com/lmajano

signature0.jpg

I’m using pageEditorSidebar and prePageSave for the module I’m developing. Makes it pretty simple to add in extra fn to pages.

signature0.jpg

signature0.jpg

Damn, and here I was thinking a had read all the hooks :frowning:

Yeah I think the problem is going to be what Meta Tags you’re going to support this way and how, a lot of the og meta tags that Google have adopted, require data to come from the database how would you work that into the solution for ContentBox?

signature0.jpg