Jump to content
hettiger

Cooking-Couple.de

Recommended Posts

Today I want to tell you about my most recent Project: Cooking-Couple.de

Maybe you've already seen it.
I've got it listed in the ProcessWire Sites section for quite some time now.
Also it has been mentioned by ProcessWire Weekly as the Site of the week:

ProcessWire Sites Section: https://processwire.com/about/sites/list/cooking-couple/
ProcessWire Weekly: https://weekly.pw/issue/137/

What is this website all about? Why did I make it?

I'm using ProcessWire at my day-to-day job and this project is my private playground for learning.
Besides of that of course it's actually really what it claims to be.
We seriously love cooking and I hope we'll find the time to get enough content together so that all the powerful search capabilities make sense after all. :-)

Technical depth

@teppo has already provided a great technical overview to the project.
In this thread I want to give you the opportunity for digging even deeper.
Want to know how I've implemented a specific feature on the site?
No problem, I'll try my best giving you detailed answers about it so that you can build something similar.

What happened since the review on ProcessWire Weekly got published?

  • I updated Vue from 1.x to 2.x
  • The faceted search has become even more intelligent and easy to use. (Especially on mobile devices)
  • I've added suggestions on the detail page that respect content types and tags to show actually really relevant content instead of just showing some random pages.
  • The website is no longer using the built in template cache. I've switched completely to ProCache. (Since template cache was already carefully implemented the whole switch was a breeze and the site is now blazingly fast)
  • All the assets are now being served by a CDN (thanks again to ProCache)
  • Several minor CSS improvements

Now that I've made these updates I think the website is actually a very good showcase for the power of ProcessWire.
Just have a look at the source code of some of the pages and you can see what is actually being cached. (<body ... class='ProCache'>)
This alone is a huge proof of the scalability of this system. Almost every single page is being cached with static files thanks URL segments caching.

Yes I'm really excited about ProcessWire and it's optimization opportunities. :-[

Roadmap

Most of the features I've initially planned for this project are already implemented.
Anyways there are some more ideas I find quite interesting:

  • Adding some more filters (time, difficulties)
  • Negating specific search filters (show recipes without specific ingredients)
  • Rating recipes
  • iOS and Android apps that are reading the data from ProcessWire

I'm not exactly sure which of these I'll implement or if other ideas will come to my mind that I like even more.
Maybe you also got some input for me? :-)

When it comes to the apps I'm actually pretty excited about that idea. I've even started building a simple API:
https://www.cooking-couple.de/api/v1/recipes/ (Yes that's cached with ProCache as well O0)

Anyways I might wait until we get the Front-end JS $pages API mentioned at: http://processwire.com/blog/posts/roadmap-2017/

Conclusion

So I guess you get the idea. I'm really excited about ProcessWire and am willing to share the knowledge I've obtained while building this website.
I'm looking forward to your questions, feedback and / or input.

Have a great time and thanks for being part of the community! :-)

 

  • Like 5

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 Greg Lumley
      Hi! I'm busy building a blog into my first test/learning/free/clients/project 😁

      I've had a look at all the blog examples and there seem to be different ways of doing it. (the point of Processwire, I know)

      It seems this is generally how it's done:
      Master Blog Page
        - Blog Post Child Page
        - Blog Post Child Page
        - Blog Post Child Page What I'm particularly interested in is the Categories. What would you advise?
      Repeater Field?
      Tags?

      I think I've even seen Categories set up as Children of a master Category page too. The pages were hidden containing no 

      What would you recommend? 

      Thank you! 
      Greg. 

      Bare with me, I'm bashing my way through while I learn. 
    • By abdulqayyum
      Hy Processwire community,
      There are some problem in fileCompiler cache.
      when i change under the directory \site\templates\ it must change under the directory /site/assets/cache/FileCompiler/site/templates/
      but it does not update and functionality working with /site/assets/cache/FileCompiler/site/templates/ directory.
       
      In this case please suggest me how i clear fileCompiler cache?
      what i have to clear it manually?
      Thanks AbdulQayyum.
    • By abdulqayyum
      Hy everyone,
      i am using loginRegister module for front-end user login.
      In this module user can login with Email/username, i am showing with Email. done
      but not showing Email in Forgotton Password section. there still showing with username.

      i want to show Forgotton Password with Email instead username. and should reset with email.

      please help me in this section, how i can set it with Email.

      Thanks AbdulQayyum.
    • By abdulqayyum
      Markup-Google-Recaptcha is not working with LoginRegister module in Forgotton Password Form.
      Here is my code
      wire-> modules -> process -> ProcessForgotPassword.php
      protected function step1_renderForm() {
              $form = $this->modules->get("InputfieldForm");
              $form->attr('action', './?forgot=1');
              $form->attr('method', 'post');
          
              $field = $this->modules->get("InputfieldText");     
              $field->attr('id+name', 'username');
              $field->attr('class', 'redesign-field forgotPassFeild');
              $field->setAttribute('placeholder', 'Username');
              $field->required = true;
              $field->label = $this->_("Forgotton Password");
              $field->description = $this->_("If you cannot remember your password to access the affiliates portal. simply provide your username in the box below and we'll send you a reset link via email.");
              $form->add($field);
               
             // Calling MarkupGoogleRecaptcha Module.
              $captcha = $modules->get("MarkupGoogleRecaptcha");
             //  rendering form with recaptcha
              $captcha->render($form);
         
              $submit = $this->modules->get("InputfieldSubmit");
              $submit->attr('id+name', 'submit_forgot');
              $form->add($submit);
              $this->session->userResetStep = 1;
               
              // rendering form
               $out .= $form->render();
          
              // getting captcha script
              $out .= $captcha->getScript();
              return $out;
          }

      I am following this one example.

      please suggest me how i can show MarkupGoogleRecaptcha in forgotton password.
      Getting log error


      Thanks,
      Abdul Qayyum
    • By Mithlesh
      Hi there,
      My form is not getting submitted, it is showing:
      Unable to verify successful email delivery of this form submission.
      Attaching for your reference as well: 

      In the Backend, it is showing Connection timed out with smtp.gmail.com
      Pl guide me how to resolve that
×
×
  • Create New...