wpbeginner WordPress Beginner
Don't add Custom Post Types in functions.php -> You should ALWAYS use a site-specific plugin - wpbeg.in/vcXr7j #wcraleigh

November 4, 2012     9 retweets #

jakemgold Jake Goldman
@wpbeginner disagree with this strongly

November 4, 2012 #

pippinsplugins Pippinsplugins
@jakemgold @wpbeginner care to elaborate?

November 4, 2012 #

jakemgold Jake Goldman
@pippinsplugins @wpbeginner 95% of time CPTs part & parcel of display layer (theme) & useless without. User should activate theme & b done

November 4, 2012     1 retweets #

pippinsplugins Pippinsplugins
@jakemgold @wpbeginner what if it's a CPT specific to your site (and assuming you have the knowledge to do them yourself)?

November 4, 2012 #

jakemgold Jake Goldman
@pippinsplugins @wpbeginner do whatever you want on your own site... :)

November 4, 2012 #

pippinsplugins Pippinsplugins
@jakemgold @wpbeginner when themes are changed? That is a major problem with building CPTs into themes

November 4, 2012 #

pippinsplugins Pippinsplugins
@jakemgold @wpbeginner Big difference between commercial and custom themes

November 4, 2012 #

jakemgold Jake Goldman
@pippinsplugins @wpbeginner not really. If I buy theme (custom or commercial) w portfolio feature, should "just work" when activated

November 4, 2012 #

pippinsplugins Pippinsplugins
@jakemgold @wpbeginner Yes agreed, but what if they then buy another portfolio theme w/ a diff CPT? They expect that to just work with

November 4, 2012 #

jakemgold Jake Goldman
@pippinsplugins @wpbeginner what r the chances those two theme devs built the CPT the same way or using the same name?

November 4, 2012 #

pippinsplugins Pippinsplugins
@jakemgold @wpbeginner all existing data. But it won't unless the theme's share CPT names

November 4, 2012 #

Rarst Andrey Savchenko
@jakemgold @pippinsplugins @wpbeginner CPT is overly generic concept to make hard rule where it goes. it's mechanism, not specific feature

November 4, 2012 #

pippinsplugins Pippinsplugins
@Rarst @jakemgold @wpbeginner agreed. Some CPTs belong purely in plugins, others don't matter nearly as much

November 4, 2012 #

jakemgold Jake Goldman
@pippinsplugins @rarst @wpbeginner of course there r use cases for CPTs in plugins. "Never" put it in a theme is very wrong, however

November 4, 2012 #

pippinsplugins Pippinsplugins
@jakemgold @rarst @wpbeginner That I agree with. There are always exceptions to all rules. Period.

November 4, 2012 #

zslabs Zach Schnackel
@pippinsplugins There you go with your triple periods again… :)

November 4, 2012 #

pippinsplugins Pippinsplugins
@zslabs ...

November 4, 2012 #

jakemgold Jake Goldman
@pippinsplugins @wpbeginner if dev wants to build totally new theme retaining old CPT (rare), not hard to bring CPT code over

November 4, 2012 #

jakemgold Jake Goldman
@pippinsplugins @wpbeginner in short, we shouldn't make a dev problem a user problem

November 4, 2012 #

pippinsplugins Pippinsplugins
@jakemgold @wpbeginner if you're a dev I don't think anyone really cares where you put your own code

November 4, 2012 #

jakemgold Jake Goldman
@pippinsplugins @wpbeginner but if your a user, your portfolio theme should just work when activated

November 4, 2012 #

zslabs Zach Schnackel
@jakemgold @pippinsplugins @wpbeginner CPT as plugins do make them more portable - but is more work for the end-user (if selling)

November 4, 2012 #

jakemgold Jake Goldman
@zslabs @pippinsplugins @wpbeginner portability is currently a pipe dream. No such coordination / standardization currently happening

November 4, 2012 #

zslabs Zach Schnackel
@jakemgold @pippinsplugins @wpbeginner Minimal styles with a good override system is a start. Separating style from function is key

November 4, 2012 #

jakemgold Jake Goldman
@zslabs @pippinsplugins @wpbeginner not to users! That car engine might be awesome, but it's meaningless to me with a nice car body

November 4, 2012 #

zslabs Zach Schnackel
@jakemgold @pippinsplugins There lies that balance of dev friendly compared to end-users. The trouble starts when users want to customize

November 4, 2012 #

pippinsplugins Pippinsplugins
@zslabs @jakemgold it's the pain of building products :D

November 4, 2012 #

jakemgold Jake Goldman
@zslabs @pippinsplugins I care less about users who are tinkering than those who just want their crap to work

November 4, 2012 #

zslabs Zach Schnackel
@jakemgold @pippinsplugins that’s why tgmpluginactivation.com just seems like a no-brainer “at the moment” for the best of both worlds

November 4, 2012 #

zslabs Zach Schnackel
@jakemgold @pippinsplugins Keep your own stuff organized while giving users what they want

November 4, 2012 #

jakemgold Jake Goldman
@zslabs @pippinsplugins the users I'm talking about want a site that just works and is easy to update

November 4, 2012 #

zslabs Zach Schnackel
@jakemgold @pippinsplugins Agree there.

November 4, 2012 #

zslabs Zach Schnackel
@jakemgold @pippinsplugins @wpbeginner General “never do this statements” are not helpful to anyone - there’s always specific use-cases

November 4, 2012 #

jakemgold Jake Goldman
@zslabs @pippinsplugins @wpbeginner I would say right now it's 50/50 use cases, so "never" is very bad info

November 4, 2012 #

zslabs Zach Schnackel
@jakemgold @pippinsplugins @wpbeginner It’s up to devs to decide the better fit per project - why we’re paid the big bucks :)

November 4, 2012 #

zslabs Zach Schnackel
@jakemgold @pippinsplugins I normally separate but there is a fine-line with packaged products. tgmpluginactivation.com is a good option

November 4, 2012 #

pippinsplugins Pippinsplugins
@jakemgold @wpbeginner but it is very, very much a user problem. How is a non-technical user to know that a CPT will vanish . . .

November 4, 2012 #

jakemgold Jake Goldman
@pippinsplugins @wpbeginner CPT will STILL vanish (to user) cause display layer is gone (single-....). Still in admin tho - confusing!

November 4, 2012 #

pippinsplugins Pippinsplugins
@jakemgold @wpbeginner haha, that's very true

November 4, 2012 #

jakemgold Jake Goldman
@pippinsplugins @wpbeginner this is crux of it. Good argument 2 b made 4 standardizing on common plugins for common CPTs (eg events)...

November 4, 2012 #

jakemgold Jake Goldman
@pippinsplugins @wpbeginner ...but many CPTs cater to edge cases theme specifically built for that r useless (even confusing) w/out theme

November 4, 2012 #

michael_silva Michael Silva
@jakemgold @pippinsplugins @wpbeginner 2 cases. 1. I installed new theme, I see all my data in dashboard but its not displaying...

November 4, 2012 #

michael_silva Michael Silva
@jakemgold @pippinsplugins @wpbeginner 2. Installed new theme OMG WTF DID I JUST LOSE ALL MY DATA?!?!?!

November 4, 2012 #

michael_silva Michael Silva
@jakemgold @pippinsplugins @wpbeginner which one is better user experience?

November 4, 2012 #

pippinsplugins Pippinsplugins
@michael_silva @jakemgold @wpbeginner I would rather see my data

November 4, 2012 #

michael_silva Michael Silva
@pippinsplugins @jakemgold @wpbeginner exactly because even non technical clients can deduct that the theme change won't display their data.

November 4, 2012 #

jakemgold Jake Goldman
@michael_silva @pippinsplugins @wpbeginner user will undo what they just did (turn old theme back on) - problem solved. Vs very confused

November 4, 2012 #

pippinsplugins Pippinsplugins
@jakemgold @michael_silva @wpbeginner it's tricky no matter which way you look at it

November 4, 2012 #

jakemgold Jake Goldman
@pippinsplugins @michael_silva @wpbeginner yes; just think if u build "tv listings" theme that edge case CPT functionality should b embedded

November 4, 2012 #

pippinsplugins Pippinsplugins
@jakemgold @michael_silva @wpbeginner definitely. Staff, FAQs, etc, should not (in my mind)

November 4, 2012 #

michael_silva Michael Silva
@pippinsplugins @jakemgold @wpbeginner +1 as well on both accounts

November 4, 2012 #

jakemgold Jake Goldman
@pippinsplugins @michael_silva @wpbeginner ideally, assuming not existent coordination starts happening, yes

November 4, 2012 #

curtismchale curtismchale
@jakemgold @pippinsplugins @michael_silva @wpbeginner if the new template stuff on Trac comes through you could also put fall back template

November 4, 2012 #

curtismchale curtismchale
@jakemgold @pippinsplugins @michael_silva @wpbeginner in the plugin which would handle display of the CPT

November 4, 2012 #

michael_silva Michael Silva
@curtismchale @jakemgold @pippinsplugins @wpbeginner that's awesome.

November 4, 2012 #

jakemgold Jake Goldman
@curtismchale @pippinsplugins @michael_silva @wpbeginner depends on CPT but excellent CPT display usually mandates tight theme integration

November 4, 2012 #

curtismchale curtismchale
@jakemgold @pippinsplugins @michael_silva @wpbeginner of course it would but with some styles in the plugin it would be a decent look still

November 4, 2012 #

michael_silva Michael Silva
@jakemgold @pippinsplugins @wpbeginner maybe VIP clients will. Your run of the mill SBO won't automatically think of that during panic.

November 4, 2012 #

jakemgold Jake Goldman
@michael_silva @pippinsplugins @wpbeginner your minimal SBO shouldn't change themes if they have custom functionality like CPTs

November 4, 2012 #

michael_silva Michael Silva
@jakemgold @pippinsplugins @wpbeginner assuming they know what a CPT is and that's it's custom. Testimonials, FAQs in biz theme not obvious.

November 4, 2012 #

jakemgold Jake Goldman
@michael_silva @pippinsplugins @wpbeginner this assumption wrong. "I installed the portfolio plugin - still shows in admin - where r they??"

November 4, 2012 #

michael_silva Michael Silva
@jakemgold @pippinsplugins @wpbeginner if a plugin is using shortcodes the data should actually still be visible on front end.

November 4, 2012 #

jakemgold Jake Goldman
@michael_silva @pippinsplugins @wpbeginner shortcodes also suck (for users)

November 4, 2012 #

michael_silva Michael Silva
@jakemgold @pippinsplugins @wpbeginner these users you speak of. I do not think it means what you think it means. - Inigo Montoya

November 4, 2012 #

jakemgold Jake Goldman
@michael_silva @pippinsplugins @wpbeginner publishers that don't want a reference manual to write something. Shortcodes far from intuitive.

November 4, 2012 #

pippinsplugins Pippinsplugins
@jakemgold @wpbeginner I have no problem with edge cases but I do feel standard things like FAQs should be plugin territory

November 4, 2012 #

pippinsplugins Pippinsplugins
@jakemgold @wpbeginner all of this just goes to show how important consistent CPT naming is

November 4, 2012 #

jakemgold Jake Goldman
@pippinsplugins @wpbeginner more complex than that, even. Could b named same but diff properties (meta fields, use of excerpt field, etc)

November 4, 2012 #

pippinsplugins Pippinsplugins
@jakemgold of course it's very unlikely but standardized names go along way to mitigating the problem

November 4, 2012 #

jakemgold Jake Goldman
@pippinsplugins a half working CPT (say events with same name but diff location meta fields) can b worse than not working at all

November 4, 2012 #

pippinsplugins Pippinsplugins
@jakemgold probably true and that's why things like events should be plugin only. Let the theme customize the display

November 4, 2012 #