Jozsef

Profit: Custom design vs templates/themes

11 posts in this topic

Hi everyone, I'd like to start a conversation about your view and practices for profitable web design and development (unless there is already one that I didn't find). I use ProcessWire for most of my sites currently.

Wherever I look though I can see plenty of web design freelancers and even larger agencies running exclusively on WordPress and themes. Many people are running "web design" businesses even without any development skills. There are just so many that I started to doubt if that's the way to go.

- Do you use Wordpress + themes to cut cost and increase your bottom line? If yes, what is the middle ground? Is it worth to put up with WP?
- If not, what alternatives you use for micro/small businesses?
- And finally, how do you use ProcessWire to speed up small, basic brochure websites?

Clients care more about budget and results than "custom" design. I love working with ProcessWire but only if it doesn't mean lost opportunities.

Any opinions are welcome, especially from those of you who are advocates for themes yet are skilled developers.

1 person likes this

Share this post


Link to post
Share on other sites

Has been discussed before in several threads. I my self grow my own library with processwire themes. It takes time to grow your own library with processwire themes but it is worth it as you can adapt/modify/change a processwire theme into anything a client wants. After you finished a website, clients are always going to call you back and want something changed, modified or added. With processwire, having everything open, no problem. My experience with Wordpress is you depend heavily on plugins or need to learn how to "hack" a wordpress theme into what the client wants. All wasted time as you will never get it right 100% this way and you learn nothing useful new in coding. Besides that, wordpress theme support will never help you with code questions and is limited to functional support. This processwire forum is the best support you can ever wish for if you have any question about processwire.

5 people like this

Share this post


Link to post
Share on other sites

I use themes (both commercial and free), don't see any issues with it.

I use a custom theme engine module that sort of speeds up the whole process of integrating a pre-made design... (from any html source)

 

Share this post


Link to post
Share on other sites
1 hour ago, pwired said:

I my self grow my own library with processwire themes. It takes time to grow your own library with processwire themes

Because of this, I would be interested in a team effort to build some common grounds based on the new Markup Regions and UIkit 3. If there were enough of us to take this path, we should be able to build some unofficial "PW theme for developers".

1 hour ago, pwired said:

My experience with Wordpress is you depend heavily on plugins or need to learn how to "hack" a wordpress theme into what the client wants. All wasted time as you will never get it right 100% this way and you learn nothing useful new in coding.

I agree :) 

Share this post


Link to post
Share on other sites
29 minutes ago, Macrura said:

I use themes (both commercial and free), don't see any issues with it.

I use a custom theme engine module that sort of speeds up the whole process of integrating a pre-made design... (from any html source)

 

@Macrura, do you mean that you use PW with HTML themes?

Share this post


Link to post
Share on other sites

I build my sites on top of my existing PW site profiles I take from previous sites too if you can consider that as a theme. My question is more from the commercial side of things. 

I find myself spending much more time with simple projects than others and that's why I was wondering what you guys think of alternatives. On freelancer forums people tend to see only WP but I know that most of you are seasoned developers coming from other systems. 

Share this post


Link to post
Share on other sites

yes, for some projects, i use html themes, like from html5 up, themeforest, wrap bootstrap etc..

Share this post


Link to post
Share on other sites
On 15.3.2017 at 8:15 PM, Macrura said:

I use a custom theme engine module that sort of speeds up the whole process of integrating a pre-made design... (from any html source)

 

Would be great if you would that module with us.

Share this post


Link to post
Share on other sites

sure, so the (currently named) SimpleThemeEngine is basically a front end api, which is now in module form, but was previously a loose collection of functions that were used procedurally. I would probably recommend to use Spex since it released and proven to work; My module is probably too specific for general release at the moment...

It uses WireData class for storage and provides methods for:

  • Adding, manipulating assets (css/js)
  • outputting assets (css/js)
  • Getting and setting theme variables/settings (used for layouts, like show/hide page header, etc)
  • injecting inline js code in head/foot
  • simple web fonts management, loading etc
  • injecting markup into parts of the page (sort of layout hooks)

problem with releasing module is that it depends currently on ProCache being installed (future version would have setting to select the caching/min engine, e.g. AIOM or PC)... below is an example of the code that would be used in the head....

// $ste = $modules->get('SimpleThemeEngine');
echo $ste->headAssets();
echo $ste->getJsConfig();
echo $ste->gFontLoader('Open+Sans:300,400italic,400,600,700|Montserrat:700');
echo $ste->getInjects('header');


 

2 people like this

Share this post


Link to post
Share on other sites

Really nice features!

But sounds really not easy to use for everybody right away, maybe it could be a baseplate for theming in pw.

Maybe sharing a future version which is less specific would make more sense.

Share this post


Link to post
Share on other sites

it would probably need to be part of a site profile so that it could make sense, it also integrates with 3 other modules, ProcessGeneralSettings, SimpleSiteEngine and SimpleSiteMeta, which together complete the whole frontend api that i'm trying to develop...

3 people like this

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Harmen
      Hi all,
      I do have a form in the 'backend' of my website which has a fieldtype of ASMSelect. I gave all the options of that field a custom attribute with a value:
      foreach ($feature_group['features'] as $feature_id => $feature) { $field->addOption($feature_id, $feature['name'], array('data-feature_group' => $feature_group_id)); } How can I read out the value of that custom attribute named data-feature group?
      I've tried it with
      $selected_feature_groups = $form->get($category_id)->getAttribute('data-feature_group'); //AND selected_feature_groups = $form->get($category_id)->feature_group; but that doesn't work.
      How can I get this to work?
      ~Harmen
    • By Mick
      I am thinking about using processwire for a special task - I have a shopping site with many product categories stored in a category tree.

      For each category id I want to provide content elements (texts, pictures, etc.)
      So I would like to import the category tree into processwire and define a template there to hold the content elements.
      My shopping site then would (via api?) send the category id to processwire and retrieve the content elements for this category id - so far my idea.
      Is this possible and easy to realize with processwire?
      Thanks!
    • By MilenKo
      Hello. I am working on a culinary web project where I am aiming at listing all recipes with a pagination after reaching the recipe limit. As far as I already did the pagination on another project, I was quite happy to use the code and see it in action. However, my joy was not lasting long as far as the present pagination HTML code differs from the other and I was scratching my head today for several hours and yet no solution to precisely match the styling.
      I was able to apply the pagination, show the prev/next and numbers properly, however the active class is not applied properly and the design has the prev/next arrows at the both ends of the recipe block (image attached).
      Here is the pagination original html code:
      <!-- Pagination --> <div class="sixteen columns"> <div class="pagination-container"> <nav class="pagination"> <ul> <li><a href="#" class="current-page">1</a></li> <li><a href="#">2</a></li> <li><a href="#">3</a></li> </ul> </nav> <nav class="pagination-next-prev"> <ul> <li><a href="#" class="prev"></a></li> <li><a href="#" class="next"></a></li> </ul> </nav> </div> </div> And here is my pagination code (after making sure that the template pagination is enabled):
      <div class="sixteen columns"> <div class="pagination-container"> <?php echo $result->renderPager(array( "nextItemLabel" => __(">>"), "previousItemLabel" => __("<<"), "currentItemClass" => "current-page", 'listMarkup' => "<nav class='pagination'><ul>{out}</ul></nav>", 'itemMarkup' => "<li>{out}</li>", 'linkMarkup' => "<a href='{url}'>{out}</a>" )); ?> <nav class="pagination-next-prev"> <ul> <li><a href="#" class="prev"></a></li> <li><a href="#" class="next"></a></li> </ul> </nav> </div> </div> As far as the pagination active class is not applied on the <li> but on the <a href... > I tried to change the linkMarkup to: 'linkMarkup' => "<a href='{url}' class='{class}'>{out}</a>" however that shows that the {class} is not applied with linkMarkup but with itemMarkup. Tried to add the class to itemMarkup too, but the same result is showing.
      For sure the navigation is not an issue if it is next to the numbers, however I wanted to attempt to match fully the style and learn how can I move the prev and next pointers away from there or in other words to match the original theme.
      So any ideas how to achieve the proper functionality and obtain the previous/next page links? I read so many tutorials and manuals today mentioning to use prev() and next() but in my case the results are not coming from $page and the next page pointed to the next page in my admin but not the next results page.

    • By EyeDentify
      Hello Forum members.

      I just wanted to confirm with you PW gurus on here that i got the thinking behind regions in the latest blog post right:
      https://processwire.com/blog/posts/processwire-3.0.49-introduces-a-new-template-file-strategy/

      So my understanding from the quick glance of the article is that if i were to use the new regions functionality it would in simple terms work like this:

      The referenced HTML in any of my other page template files would be inserted at the designated place in the home.php template file instead of replace it with all HTML in that page template file that was requested ?
      And the home.php template file would become sort of a View, that used HTML from the other templates files to change acording to the needs?
      So that i would only need to put the HTML that changed in my other page template files and have the "full" HTML markup in the home.php ?

      I just wanted to see if i got it right.

      Thx in advance.
    • By wheelmaker24
      Hi,
      I was just playing around with the Repeater fieldtype and wondered if this might be a good fit for something I would call a "FieldCollection". In a FieldCollection the behavior should be exactly the same as in a Repeater fieldtype where minimum and maximum items are set to "1" – just the look and feel in the backend should be slightly different.
      Think of templates that share two or more fields for the exact same reason – e.g. a "published from" and a "published to" date field and a checkbox. Instead of adding those three fields to every template that needs them, why not create a FieldCollection? Changing the FieldCollection will change the fields on every page it is added to.
      The only caveat of using a Repeater item set to min and max 1 item is its appearance in the backend: Some of the Repeater features (delete item, add new item, ...) wouldn't be needed for that particular usecase.
      What do you think?
      Many greetings!
      Nik