1

I've been asked to create a WordPress blog where the home page has a "featured posts" section that looks like this:

-------------------------
|  A  |           |  D  |
|     |           |     |
-------     C     |------
|     |           |     |
|  B  |           |  E  |
-------------------------

where each of those blocks is a blog post. I can achieve that design with CSS, but the client has asked to have arbitrary control over which post goes into which slot. In other words, they aren't just getting laid out chronologically.

My question is: is this a reasonable ask for WordPress, and if so, is there a plugin or theme that could help implement this?

My first thought was to use tags. For example, I could create a subset of "hidden" tags that all start with some sort of prefix, like --home-feature-a, --home-feature-b, etc. This would require filtering out the hidden tags wherever they're presented to the user, but I'm not sure how else to flag content like this.

Any tips would be much appreciated!

1

I think it's a very reasonable 'ask' for Wordpress. If it were me, I'd use Advanced Custom Fields for this, and set up some fields on the homepage so that the user can easily choose the relevant posts they want to show on those spots. You can call them Spot A, Spot B, or whatever you want.

I'd set these up using the ACF Post Object field.

Once you've set these up, the user can choose the relevant post from an easy list (see below - however you'd just limit it to posts and not show pages and attachments etc).

In your backend, you then look for the relevant chosen post object to show.

Of course, there are myriad other ways, including tags etc. However, the tags will have some tricks and hurdles, and - to put it bluntly - can more easily be 'stuffed up' by your client.

Good luck, and let us know how you go!

choose a post object

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.