podscms framework by tom hermans (wordcampnl)
DESCRIPTION
Presentation on annual WordCampNL on how to use WordPress as a CMS with PodsCMS.Contact me for more info or consulting.TRANSCRIPT
![Page 1: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/1.jpg)
Use WordPress as a CMSUse WordPress as a CMS
withwith
Pods CMSPods CMSFrameworkFramework
by Tom Hermansby Tom Hermans
![Page 2: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/2.jpg)
Tom HermansTom Hermans
I'm @tomhermans on Twitter
Designer/Developer/WP
Freelance & Contract
www.tomhermans.com
![Page 3: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/3.jpg)
HanneHanne& Kaat& Kaat
![Page 4: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/4.jpg)
Is WP a CMS ?Is WP a CMS ?
ContentContentManagementManagement
SystemSystem
![Page 5: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/5.jpg)
Yes, WP = CMSYes, WP = CMS
Good at PublishingGood at PublishingEasy InterfaceEasy Interface
Powerful ThemingPowerful ThemingWYSIWYGWYSIWYG
Flexibility : Post MetaFlexibility : Post Meta
![Page 6: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/6.jpg)
No CMSNo CMS!Backend UI Customization!Backend UI Customization
Same Post TypesSame Post TypesCustom Fields ComplexityCustom Fields Complexity
““Just another WP Blog”Just another WP Blog”
![Page 7: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/7.jpg)
WordPressWordPress
Content ?Content ?
![Page 8: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/8.jpg)
ContentContentPostsPages
CommentsMediaLinks
![Page 9: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/9.jpg)
Multiple PossibilitiesMultiple Possibilities
Custom FieldsCustom FieldsCustom Post TypesCustom Post Types
Plugins..Plugins..PodsCMSPodsCMS
![Page 10: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/10.jpg)
PODS ?PODS ?WTF ?
![Page 11: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/11.jpg)
SimpleSimpleScalableScalable
CMSCMSFlexibleFlexible
ConnectiveConnectiveFrontEnd + BackEndFrontEnd + BackEnd
Customizable UICustomizable UI
![Page 12: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/12.jpg)
POD =POD =Piece Of DataPiece Of Data
![Page 13: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/13.jpg)
Build Your Own Build Your Own Content TypeContent Type
PodsCMSPodsCMS
![Page 14: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/14.jpg)
Why ?Why ?● Sorting, Filtering,
Relating Data● Easier for Clients● Better than Custom
Fields● More options than
Custom Post Type
![Page 15: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/15.jpg)
Ski regionSki region● Ski Villages● Number of Slopes● Number of Lifts● Geo-Location● Hotels● Weather Info● Picture(s)● Etc.. etc...
![Page 16: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/16.jpg)
PodsCMS InstallPodsCMS Install
Download plugin atDownload plugin atpodscms.org or podscms.org or
wordpress.org/extend/wordpress.org/extend/
![Page 17: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/17.jpg)
How does it workHow does it work
MVC-likeMVC-likeController : PodsCMSController : PodsCMS
Model : TemplatesModel : TemplatesView : PagesView : Pages
![Page 18: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/18.jpg)
Get StartedGet Started
1 Setup1 Setup2 Manage Content2 Manage Content3 Package Manager3 Package Manager4 Menu Editor 4 Menu Editor (deprecated)(deprecated)
5 Add Pod Item5 Add Pod Item
![Page 19: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/19.jpg)
Setup : Start to PodSetup : Start to Pod● Pods● Templates● Pages● Helpers● Roles● Settings
![Page 20: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/20.jpg)
1 Setup : Create Pod1 Setup : Create Pod● Add New Pod● Name● Columns● Pod Labels● Helpers
![Page 21: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/21.jpg)
1 Setup: POD1 Setup: POD
● Create DB Fields● Top Level Menu● site.tld/label● site.tld/label/*● Helpers
Pod = Group of Input Fields
Pod = Group of Input Fields
![Page 22: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/22.jpg)
Closer Look SetupCloser Look Setup
![Page 23: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/23.jpg)
Pod ColumnsPod Columns● Machine name (db)
lowercase● Label● Column type● Attributes● Helpers● Comment● ...
![Page 24: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/24.jpg)
Field TypesField Types● Date (w/ datepicker)
● Number
● Boolean (checkbox)
● Single Line Text
● Paragraph Text (Multiline, HTML)
● Code (Multiline)
● File Upload (WP Lib)
● Permalink (slug, auto)
● Relationship (pick)
![Page 25: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/25.jpg)
Pick FieldsPick FieldsRelate a Pod
● to another Pod● to a Page● to a Post● to a User● to a Taxonomy
= very powerful !
![Page 26: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/26.jpg)
PagesPagesRetrieve Data ?
● Pod Page● WP Page Template
● Shortcode
![Page 27: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/27.jpg)
Pod PagePod Page● Edit in Pods Admin● Supports Wildcard URLs. ● Pod Page “events” = list of events● Pod Page “events/*” =
default handler for all pages beginning with "events/".
● PHP
![Page 28: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/28.jpg)
Pod Page CodePod Page Code● Define Pods Object● findRecords (SQL)● showTemplate/loop● Pagination● Precode● Link to Template
![Page 29: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/29.jpg)
Pod Page Code Up ClosePod Page Code Up Close
![Page 30: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/30.jpg)
WP Page TemplateWP Page Template● WP Theme file● PHP● WP template tags● Pod Class● findRecords● showTemplate or
custom loop
![Page 31: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/31.jpg)
WP Page CloserWP Page Closer
![Page 32: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/32.jpg)
Use Pods ShortcodeUse Pods Shortcode● Simple syntax to
include Pod Data● Display That Many
Pod-items in that Order
● Template● Select * Where● Universally usable
![Page 33: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/33.jpg)
TemplatesTemplates● Display Output● HTML● Magic Tags● PHP● Loop-like
![Page 34: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/34.jpg)
More Template CodeMore Template Code
● $this->get_field('skidorp.name')● $this->get_field
('pickcolumn.columnname');
● {@field.column}● {@field, helper}
![Page 35: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/35.jpg)
ExamplesExamples
![Page 36: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/36.jpg)
Detail PagesDetail Pages// pull URL segment
$slug = pods_url_variable('last');
// pass slug as parameter when defining Pods object
$Record = new Pod('podname', $slug);
echo $Record->showTemplate('hotel_detail');
![Page 37: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/37.jpg)
Example Detail PageExample Detail Page
![Page 38: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/38.jpg)
Example Detail PageExample Detail Page
![Page 39: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/39.jpg)
HelpersHelpers
Manipulate DB DataManipulate DB Dataat Inputat Input
at Displayat Displayat Saveat Save
![Page 40: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/40.jpg)
Uses of HelpersUses of Helpers● Format Date (dd-mm-yy)● Radio / Checkbox Fields● Rounding Numbers● Edit Value before Saving (http:// )● Send Mail after Update Pod● ...● Various Helpers for d/l on pods-site
![Page 41: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/41.jpg)
Manage ContentManage Content
Browse/edit all the content in Browse/edit all the content in the Pods database tables.the Pods database tables.
![Page 42: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/42.jpg)
Manage ContentManage Content
![Page 43: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/43.jpg)
Edit ContentEdit Content
![Page 44: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/44.jpg)
Example Pick FieldsExample Pick Fields
![Page 45: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/45.jpg)
PackagesPackages
Built in import/export system Built in import/export system
![Page 46: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/46.jpg)
PackagesPackages● Import● Export● Pods● Pages● Templates● Helpers
![Page 47: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/47.jpg)
PackagesPackages● Import/Export● Pods● Templates● Pod Pages● Helpers● Repository on
podscms.org
![Page 48: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/48.jpg)
Pods UIPods UI
Develop plugins Develop plugins that look like WP's ownthat look like WP's own
![Page 49: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/49.jpg)
Pods UIPods UI● Develop Custom Backends
for Various Users● Extremely Powerful
with Role Managers● PHP + WP Template Tags + Pods● More options in 2.0
![Page 50: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/50.jpg)
Pods UIPods UI
![Page 51: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/51.jpg)
Pods UI : ManagePods UI : Manage
![Page 52: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/52.jpg)
Pods UI : EditPods UI : Edit
![Page 53: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/53.jpg)
Pods UI PossibilitiesPods UI Possibilities
Which Fields Can They See ?Which Fields Can They See ?Which Fields Are Editable ?Which Fields Are Editable ?
Which User Can Access ?Which User Can Access ?Can the User Add Fields ?Can the User Add Fields ?
Can the User Delete Fields ?Can the User Delete Fields ?Duplicate Fields ?Duplicate Fields ?
![Page 54: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/54.jpg)
Pods UI + RolesPods UI + Roles
Combine this withCombine this withA Role Manager Plugin*A Role Manager Plugin*
=> Mega Power <==> Mega Power <=*e.g. Members by Justin Tadlock*e.g. Members by Justin Tadlock
![Page 55: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/55.jpg)
Pods UI : Short HowtoPods UI : Short Howto
Fire Up PodFire Up PodDefine Edit/Add FieldsDefine Edit/Add Fields
pods_ui_managepods_ui_manage
Next slide : code exampleNext slide : code example
![Page 56: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/56.jpg)
![Page 57: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/57.jpg)
BenefitsBenefits● Seperate Tables● Performance● Ease of Use
![Page 58: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/58.jpg)
Pro / ContraPro / Contra● Separate Tables >
No WP Functions(comments/akismet)
● Smaller Community● UI (but wait for 2.0 ;) )
● for Developers
● Seperate Tables● Performance● Ease of Use
Issues will be addressed in Pods 2.0
![Page 59: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/59.jpg)
Pods 2.0 ?Pods 2.0 ?● More Functions● Better Interface● Easier to Use● More Styling Options● Also for non-developers● Integration with CPT & WP functions● Expected end of 2010 / begin 2011
![Page 60: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/60.jpg)
Pods AddonsPods Addons● Packages● Helpers
● CSV Importer● C-Gen● PodsCMS Widgets● Pods SEO Titles● ...
![Page 61: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/61.jpg)
More ?More ?
PublicFormsPublicFormsPodsAPIPodsAPI
SQLSQL
![Page 62: PodsCMS Framework by Tom Hermans (WordCampNL)](https://reader033.vdocuments.net/reader033/viewer/2022051513/545318e7af795904308b51ea/html5/thumbnails/62.jpg)
Tutorials & HelpTutorials & Help● podscms.org● ui.podscms.org
● mondaybynoon.com
test