1. MONTREAL JUNE 30, JULY 1ST AND 2ND 2012
コンテンツマネージメントシステム、
ブログ と ”雪女”
WOWODC 2012 by Ken Ishimoto (K’s Room & A10-Objects)
12年7月5日木曜日
2. MONTREAL JUNE 30, JULY 1ST AND 2ND 2012
CMS / BLOG and SnoWOman
WOWODC 2012 by Ken Ishimoto (K’s Room & A10-Objects)
12年7月5日木曜日
3. MONTREAL JUNE 30, JULY 1ST AND 2ND 2012
Ken Ishimoto
10 years 4th Dimension Developer,
2 years Real Basic and
since 2008 WebObjects Developer
12年7月5日木曜日
6. Offline CMS
• Buy the App
• Create the Content on your Computer
• Deploy everything via FTP to a Server
• Any Changes?
You need your Computer to fix the changes and then you have
to deploy it, sometimes you have to upload every Page again.
12年7月5日木曜日
7. NICE
• Easy Solution
• We make the Custom Design.
• The Customer can use it. (Maybe)
12年7月5日木曜日
8. BUT...
• No way to connect it to a Database
CMS but static CMS
• Won’t work with Wonder
• We don’t make Money (only for some Design)
12年7月5日木曜日
9. Drupal : What’s nice about it
• Many Themes
• Lot of Languages
• Very Popular
• Open Source
• Lot of Plugins
12年7月5日木曜日
10. Custom Themes
• Create Custom Themes
(3 People worked 4 Months on it)
12年7月5日木曜日
11. Localize
• There are a lot of already Localized Templates
(most are only 40-60% done)
• We had a Plugin that wasn’t written for that and it took
(3 Person / 2 Days to Localize only a Menu Entry)
12年7月5日木曜日
12. Plugins
• Upgrade to New Version
• The User will upgrade because a nice new Feature is available
• But, old Plugin’s won’t work anymore and break
12年7月5日木曜日
14. Security
• BUGS, Security flaws
• The Community fix this Problems and the User has update every
few Months or sometimes every few weeks
• Most User have only a Site without a Contract for Maintenance
(This Site’s are now hackable)
• You can find Security issues easily on there Homepage's
(Everybody include Hackers know the security issues also)
12年7月5日木曜日
15. How can I use it?
• Learn PHP
• Learn MySQL
• Download Drupal and learn it
12年7月5日木曜日
16. Project Wonder
• Won’t work with Wonder
• If you are not using MySQL you need 2 Databases
• No way to use it with EOF, MVC and KVC
(everything we love)
12年7月5日木曜日
17. But Can I use it with WO?
• write PHP code and make Rest Calls to Wonder
• Maintenance two separate Systems now : PHP and Java-WO
(if you are a Power User maybe not a big deal)
12年7月5日木曜日
18. WordPress : WAY 1
• own Deploy ?
• Than it will like Drupal, you have to care
about everything, write PHP and dive into it.
12年7月5日木曜日
19. WordPress : WAY 2
• use the Service of Wordpress.com
• The take care about Security now^^ yeah
• But Custom Design cost Money and it is not allowed
to write PHP code and add features to it. No Connection
to WO anymore.
12年7月5日木曜日
21. Why a CMS?
• Written with Wonder
• Because we love WOF, EOF, MVC, KVC
• No need to learn a new Language
• Use a Database that you like
• Login to your Application and change the Context
12年7月5日木曜日
22. Easy Installation
• only add the Frameworks
• It will initialize itself and make also the default Pages
• Already in real use at 6 different Customer Locations
• In use now by 2 Developers in Japan (WOdka Project)
12年7月5日木曜日
24. WOKeyValueDataStorage
• one Entity KeyValue Storage
• The Data stored into this Entity
with Key & Value
• The Value Property Data is in .plist Format
• Try to Cache in Memory and refresh every Hour
• Can use with other Frameworks in the Future
12年7月5日木曜日
25. ERModernJQuery
• Input Field Validation
• Banner
• FlightBoards
• Picture / Video Viewer
• and more ...
12年7月5日木曜日
26. WOEmoji
• Usage of Emoji
• Yes, Japanese People loves that
• For now our User who writes Content
are 100% Mac or iPad Users
• But after it is written Windows User will see the Content
12年7月5日木曜日
28. ERMailManager
• This Framework is handling Newsletter
• Waiting for “Amedeo” Release
12年7月5日木曜日
29. SKIN_Sandvox
It reads the Original Templates from the
Sandvox App.
Only Buy the App and copy the Plugins to the
Framework
66 Templates ready to use
12年7月5日木曜日
47. Widget : News
• News : Displaying News Page
• NewsList : Displaying Links
to the latest News
12年7月5日木曜日
48. Widget : Blog
• Blog : Displaying Blog Page
• BlogList : Displaying Links
to the latest Blogs
12年7月5日木曜日
49. Widget : Survey
• Result :
• Text
• Textarea
• Single Select (with Options)
• Multi Select (with Options)
12年7月5日木曜日
50. Widget : Products
HTML 5 Canvas
• Menu for Cafe or Restaurant
• Add Size + Price + Description
• Picture
• Hot ?
• Ice ?
• New Product?
12年7月5日木曜日
51. Programming
• The CMSRequestHandler try to find the plist for the URL
• If he can’t find it a 404 Error comes back
• In the plist the Information of the Page with Skin & Widgets
Information are creating the Page
12年7月5日木曜日
52. Difficulties
• WOHyperlink
• WOImage
The Link will be stored into the Database
If Link is not correct a Runtime Error happens.
12年7月5日木曜日
53. The way of WO
HYPERLINK
<wo:hyperlink href="" actionClass="" directActionName="" pageName="" >XXX</wo:hyperlink>
Is the Link a http:// or https:// to a different Site, Is it a PageName or a DirectAction. Maybe a Link to an different CMS Page.
Makes it really difficult to store this Information into the Database and after refresh to build and bind the Information to every Context or
Widgets.
IMAGE
Link to an Image in the Application ? In an different Framework or maybe outside to an external location.
It is not easy to make a Call like because an Error occurs.
<wo:image framework="" filename="" src="" />
Every time
<wo:if condition="">
<wo:image framework="" filename="" />
</wo:if><wo:else>
<wo:image src="" />
</wo:else>
Makes it very difficult to create the Components.
12年7月5日木曜日
54. Static Resources
To create No Error in the CMS the HTML <img> Link and ERXStaticResource is used.
HTML :
<webobject name="PHOTO" />
WOD :
PHOTO : WOGenericContainer {
elementName = "img";
src = src;
}
JAVA :
public String src() {
String s = “http://www.xxx.com/image.png”;
return ERXStaticResource.urlForResourceNamed(context(), s);
}
External Images : http://www.xxx.com/image.png
Internal Images : static://<<FrameworkName>>:<<FilePath>> static://app:images/image.png
12年7月5日木曜日
55. Link Resources
To create No Error in the CMS the HTML <a> Link and ERXHyperlinkResource is used.
HTML :
<webobject name="LINK">
xxx
</webobject>
WOD :
LINK : WOGenericContainer {
elementName = "a";
href = href;
}
JAVA :
public String href() {
String s = “http://www.xxx.com”;
return ERXHyperlinkResource.urlForHyperlinkResource(context(), s);
}
External Link : http://www.xxx.com or https://www.xxx.com
Internal Link : da://<<actionClass>>:<<directActionName>> da://Main
cms://default
12年7月5日木曜日