Wordpress Functionality: Custom Theme or Plugin? - wordpress

I am new to Wordpress (using roughly 6 months) and just now getting into development when I decided I would attempt to replicate a project I have going currently and after reading multiple blogs regarding plugin development and custom post types, I am thoroughly confused as to which direction I should go. I am in need of creating a site that has back-end management (admin only) and then end-user management where the end-user should have a page that allows them to manage their items.
With custom post types, I am able to create the objects that I will need to use but that doesn't give me total control when it comes to allowing the end-user to modify them from a front-end interface.
With a plugin, I think I am able to create exactly what I need but not sure how to yet but at the same time, thinking through the structure of Wordpress, everything is basically a post, correct? So, if that's the case, my plugin would need to have the ability to register new custom post types. Does it sound like I am on the right track or am I way off here?

Custom Post Types can add a lot of power, especially if you dress up the Custom Fields with meta boxes. You can always use a role-scoping plugin to limit the access of end-users to only be able to use these Custom Posts and nothing else. CPT are a great way to handle inventory management and not rely on a plugin that will either cost $ or potentially break months down the road.
That said, many plugin you would find would most likely just create a Custom Post Type anyway. Take a look around on the codex for info on creating CPT, and if you're interested, look at jaredatch's work on Github.
http://codex.wordpress.org/Post_Types
https://github.com/jaredatch/Custom-Metaboxes-and-Fields-for-WordPress

Related

Wordpress post view format for filter grid

I am a complete newb to wordpress. I am trying to help a friend out. She asked me to help her move her wordpress instance to another hosting provider.
I have done that for the most part. My issue is the original provider implemented a not-so-obvious way of an isotope filter on some UI elements.
Specifically the object is a company. Each company has a logo, the name of the company, a short description and a contact name / email.
These companies service states / areas and the idea behind the page is to select the state and only the companies for that state are visible.
From the brief searching I have done - there seems to be an overwhelming amount of plugins to support this.
I have tried creating a simple post with a featured image and adding in the text in the excerpt.
My problem is the links. I don't want the links to go back to the post - rather I want the links to go to a custom URL.
Is there a plugin that will allow me to define a custom post type (to include categories) and then filter on it similar to Isotope type of filtering?
There are many free plugins but if you are using the Elementor page builder. I am not advertising my product but as I saw your requirement matches a plugin that I am selling in the market.
The frontend filtering feature is not yet available to the released version but will be released soon. It basically allows you to build a custom grid as you like.
Is it something similar?
https://demo.geekygreenowl.com/elementor-387/
You have to create a custom post, there should be a custom field(custom URL) as well.
Or, You may create a WordPress query. https://developer.wordpress.org/reference/classes/wp_query/
also, coding will be required for filtering

Wordpress - form to capture the values for the custom post type

I want to add a new entity named "ideas" having different fields. I want to add this to the admin side, where a logged in user can add/edit new "idea", which can be published/unpublished to the site.
I don't want to edit via php and make things complicated, instead do it from the wp-admin log in front-end. Is there a plugin for this? I need 3-4 such entities to be created, and define fields for each such entity.
New edit:
Custom Post Type is the best option I feel. Can anyone suggest, a free plugin for form to capture the values for the custom post type?
According to this WCK - Custom Fields and Custom Post Types Creator plugin you can achieve this.
WordPress Creation Kit consists of three tools that can help you
create and maintain custom post types, custom taxonomies and most
importantly, custom fields and metaboxes for your posts, pages or
CPT's.
WCK Custom Fields Creator offers an UI for setting up custom meta
boxes with custom fields for your posts, pages or custom post types.
Uses standard custom fields to store data.
WCK Custom Post Type Creator facilitates creating custom post types by
providing an UI for most of the arguments of register_post_type()
function.
WCK Taxonomy Creator allows you to easily create and edit custom
taxonomies for WordPress without any programming knowledge. It
provides an UI for most of the arguments of register_taxonomy()
function.
Hope it helps you.
You can use a combination of two plugins to fit your needs:
The Custom Post Type UI (https://wordpress.org/plugins/custom-post-type-ui/) makes it possible to generate Custom Post Types (like "Posts" or "Pages") and Custom Taxonomies. This is how you can create your entity "ideas" which will show up in the admin menu.
With Advanced Custom Fields (https://wordpress.org/plugins/advanced-custom-fields/) you can define additional content fields for your "ideas"-posttype and others. It also can handle relations between your added custom-post-types
Using the SWIFT Templates as proposed in Touqueer Shafis answer will be sufficient when you only have smaller bits of information to display on the page or if you just want to display archives of your custom-post-types. But you will quickly reach the borders of these templates when it comes to single-pages.
I recommend altering the PHP of your template files manually: you will have more control where and when to display the contents of the custom-post-types and custom-fields you added on your page.
Well, I'm not really gonna give you the answer you want to hear but I want to give you an advice from my own experience.
Using a plugin will make things usually much more complicated than doing it manually. Consider some things:
1) The plugin may not be supported for ever (or long), so if the author decides that he or she wants to be a gardener instead of a developer you're screwed. Unless you want to wrap your head around the plugin code and proceed developing it on your own. This is especially true for "underground"-plugins which are not so popular and/or maintained by a single person. Although I think you CAN rely on the "big" players like "Advanced custom fields"
2) At some point you may find that the plugin you are using doesn't support some sort of customization that you really need and quite a few plugins are built in a way that makes it hard to extend them or break out from the way they work.
So I recommend you to wrap your head around custom taxonomies and post types and just add them with PHP in your functions.php or a custom plugin. It's very very easy (it's really just arrays with arguments). You could use this visual code generator as a starting point:
http://generatewp.com/post-type/
And for adding custom fields I recommend using Advanced custom fields. You won't need any other plugin for backend management customization and it's built in a way that you can even export your custom fields as php so if they ever drop support you still have a good starting point.

How to create a listing of Social networks' posts with Drupal

I want to achieve something like this: http://curatorsofsweden.com with DRUPAL
Here different people post over the same twitter-Account for one week. The Twitter-stream is published on the Website and you can also „time travel“ via the archive to see what which people posted in which week/days.
I want to achieve the same with DRUPAL and with a Twitter AND Instagram Account (and maybe FB too). My Idea is to import those streams with the feeds-module to treat the posts as DRUPAL-content. This way is more flexible to work with the content afterwards. But how to "automatically" map this to different users (or maybe treat a user as own content-type instead of normal DRUPAL-user?)?
What modules - or combination of modules - would you use to realize this? Im open for any suggestion!
Thanks
St.
Edit the view/config page of the feed to include a "user reference" using terms or taxonomy. This might require using a custom hook_form_alter to tweak it a bit.

WordPress Plugin Development Idea? Is this possible? Am I on the right track?

I'm very new to WP development. I host a website which needs a list of trails (hiking, biking, etc) and I'd like to write a WordPress plugin to do it.
Can someone please tell me if I'm taking the right approach, and if what I'm proposing is possible.
I'd like the site to end up with an auto-generated and filtered index at http://example.com/trail-guide, and the discrete trail info pages at http://example.com/trail-guide/trailname. This data would all be stored in a single database table holding info for each trail, with an admin page for adding, editing, and deleting entries from here.
Is a WP plugin the best way to go about doing this, or should I be looking at something else?
From the way you're describing, your best bet would be to Register A Custom Post Type. This can be done by adding to your existing theme's Functions.php file, or by creating a plugin.
If you don't plan on changing themes, my advice would be to just hardcode everything into your functions.php file. Otherwise, creating a plugin for this particular job would be the safest alternative.
Using this functionality in tandem with Custom Meta Boxes and Custom Taxonomies will allow you to keep everything organized within the Wordpress Framework with your own special data.
This means that these new posts can also be queried at any time through the standard Wordpress Loop or search box.
If you are uncomfortable with writing your own functions to extend your existing framework, you might want to look into some plugins like GD Custom Posts And Taxonomies Tools to manage your own.
Hope this helps.

WP: writing an admin plugin for managing custom content

A client of mine has a site in wordpress, with one section being a directory of agents that each have different text and videos associated with them.
The client wants to be able to easily add/remove/change these agents from within the wordpress admin interface. There will be anywhere from 50-75 of these agents, so doing each page manually is not very attractive.
We currently have 3 agents added as posts, and i understand that we can store additional information inside the post itself, so that is not a problem. What we would like to create is a simpler way of managing those pages where the content cannot be changed by the maintainer, and the additional fields on the post are hard coded so there would be no room for user error.
What i am interested in is if anyone has done something similar in the past and can share their approach and experience, or if anyone can point me in the right direction as to how i can accomplish this and what i need to be aware of.
Thanks.
Yes, Custom Post Types are a perfect fit for your needs. Here are some links to articles explaining them:
http://justintadlock.com/archives/2010/04/29/custom-post-types-in-wordpress
http://www.wpbeginner.com/wp-tutorials/how-to-use-custom-post-types/
http://thinkvitamin.com/dev/create-your-first-wordpress-custom-post-type/
You can use a plugin like Custom Post Type UI or just add the register_post_type() calls to your theme's functions.php file:
http://wordpress.org/extend/plugins/custom-post-type-ui/
Then you can use a plugin like "Simple Fields" to add metaboxes to your Agent post type (although there are numerous plugins offering similar functionality; I'm building one myself!):
http://eskapism.se/code-playground/simple-fields/
Hope this helps...
Have you thought about using custom post types? You could create type called Agent and then each agent would be like a post. That way you could search for specific agents easily in the admin and then go in to the post for each agent to change their details.

Resources