Jump to content


  • Posts

  • Joined

  • Last visited

  • Days Won


Everything posted by Philipp

  1. The repeater is basically a PageArray. So you can use the normal Page/WireArray methods. $myRepeater->first(); $myRepeater->last(); Look at the Cheatsheet under Page/WireArray. Hope this helps. Sorry read it to fast. But it's a PageArray and regarding to the documentation this might work: $myRepeater->last()->find("myRepeater.fieldname != '' "). Hopefully someone else can help.
  2. A "top pages" would be great. I would suggest that you make the top pages depending on the number of likes AND the time since the site was submitted. If not, there is the chance that only 3 or 4 pages will gain new votes while other pages can never reach that state. And great to see minimize.pw
  3. Everything you've mentioned is possible with ProcessWire. If there aren't any complete solutions avaible for Wordpress or Joomla then ProcessWire might be your best choice to build it by yourself. But remember that the great flexiblity comes from building your own "logic" and template rather than using 10 different modules from 10 developers. It takes more time but the result is customized for your problem then. Search and list the properties pages. No problem. Example pseudo-code $pages->find('template=house,sale=1"); Another view option for a list of properties. The detail page could be the template of the property. The gallery can be a field with multiple Images or a extra page linked to the property. There is a GoogleMapsMarker Fieldtype. Works fine with some JS libraries for front-end integration. Not sure about this one. Now we come to the weaker spot of ProcessWire. It's no problem to build a simple signup form and make basic user management. But depending on your requirements you will have to put a lot of effort into this topic. Fine if you only need it for a single user/session Just HTML/JS magic. No problem and nothing special to ProcessWire ... The backend might be your problem. Backend Editing is no problem. But building a Front-End live editor thing is a huge project. Whole teams are spending weeks developing such functionality for other plattforms. Here you can look into the Module directory. This is possible with PW Not sure. You would define a source for this pre-populated data. Maybe a combination of a simple module and Page-reference field? Image resizing is no problem, neither is the thumbnail creation one. You can add a watermark with Horsts PIM module. Overall this is a complex project. Especially the front-end editing and the user thing can take some time. A basic system where you can have properties listed with details is easy and should be your first step. If you can invest the time you will get an awesome and flexible site. Split the project into smaller milestones would be my last suggestion.
  4. Thanks Horst for the honest feedback. You're right, I didn't handle this situation and our conversation the right way. Yes, we keep the IPTC information. But please keep in mind, that we do some sort of compression that's not completely lossless. That's right and its already on the list for the next update. Like normal image variations in ProcessWire, the first time you load the page takes longer. The person uploading the images needs to open the page once. That's not perfect but was the fastest working method. See below. We only have one live site and some sites in developement. That's a problem, I know. Same thing as 4. Or should I be quoting myself? _ We sat down today and based on your feedback wrote down some features for the next module version. They should increase performance, make it more configurable and the integration will be easier. We also thought about developers like Horst that have thousands of images. Alternative hook after the image upload (based on selected fields). No need to call the mz() method or changing templates. Option to overwrite original files or to keep a variation. A pseudo "async" upload method. Images will be sent to our servers and then the site will render without the minimized images. If you open the site again, your PW will check if the minimized images are ready for download and replace/create the minimized files. No need to wait for our servers but results may take another page load before they appear. We don't want to open a "pipe" (e.g POST /receiveimages/) to write them back to the file system once compressed. Fallback to PW compressed images. On the server side we will then build a complete queue system for better scaling across multplie server instances. It also allows use to use the slower but better options of PNGQuant or JPEGOptim. The goal is to release this in the last february/first march week.
  5. Thanks for the feedback. Great thoughts. I think this should be our priority No. 1 for the next module update. Select the image-fields you want to minimize and done. We just have to decide what happens to image variants and how we can "catch" them. That was on my mind when writing the assumptions above. We couldn't clearly communicate the benefits of the module/service. That you will get faster page speeds because a webpage nowadays contains mostly (large)images. Question: Target more the developers or our "customers" (clients). As of today, the module will still work if our servers go down or your licence key expire. You just won't get minimized images because the module hands through the original PageImage. If you want to update your plan, buy another licence key... ? And again, the 1-click-solution as mentioned before. Got this one Our intention was never about "big money". The dev community here is small (compared to other plattforms) and we knew this. We could reach out to other CMS like Typo3 or Wordpress but thats not the plan and there are already other solutions out there. We just thought, that we would have more than a single "Free signup" after three weeks and maybe even a sale(!). We made the service commercial, to cover our server costs (currently a single instance for 20$/m) and maybe to get a little bit more to cover the costs for e.g. Ryans ProCache and FormBuilder for our own use. It's not for everyone to setup the scripts and a server to compress images. It should be as easy as possible and you should just have to focus on using the service rather than running it. It's hard to find prices and the right way to market your product. I think we still have to figure this out and see, where we will go. We will invest some more time but this might result in a better outcome for everyone (even other developers who might try to make a commercial service/module for ProcessWire).
  6. Thanks Nico. After three weeks, we want to share our experience and some informations about the module and service. We think that an open and honest approach on this topic might help others to develop great commercial (and free) modules. minimize.pw started as an internal solution for a problem. Working with an agency with large PNGs, we searched for a way to compress them with PNGQuant. We thought that other developers would be interested in this kind of a service and that lead us to the decision to make it a commercial service. We have to pay for the servers and maintenance. The whole developement took around 3 days with some additional hours in writing backend jobs like backups and payment management. As today, 21 days after launch, we've only got a single "Free" signup and zero licences sold. We got some E-mails and questions but nothing more. Beside our internal usage on three client sites not much happened. We didn't expect much, but we thought there would at least be more free signups. So what went wrong? Well, we made some assumptions: There is no interest in this kind of service. The pricing is to high and the free plan isn't worth a look. Our website could't convince visitors to use the service To many open questions because there isn't a FAQ or something similar We just have to wait longer The module missed some important features We hope that the first point isn't true. With some feedback from twitter, we think that there is a market for some developers to use this service. The same applies to the last point - at least we should have some more signups. So we might have to improve the remaining 4 assumptions. In the next week, we will update our service/site: An improved and better free plan: You will get 1000 images per year and you don't have to renew after a month. More images on new paid plans (replacing the old monthly model):Standard with 30 000 images / year and up to three sites for 39€ Large with 100 000 images / year and ten sites, 99€ A new webpage with better examples and a FAQ. We will later add a case study with a larger site. Planned features for the module itself:Compression while uploading images Replace images instead of making variants (as an option) Usage with the Thumbnails module (CropImage) (An Async performance modus) But before doing this, we would be glad to hear what the community thinks about this. We would appreciate some feedback and/or your thoughts on the service and the module. P.S. Here is a special key with unlimited images and sites, valid for the next four weeks: zE1DptpPYN
  7. I'm not sure if your code snippet is right. Is the template name really "article"? Wouldn't it be easier to hook after a page with the template is saved and then change the name of the page according to the date field? 1) Hook after page is saved 2) Change name of the page to startdate_oldname 3) save the page.
  8. You should be able to change title to TextLanguage field type. This should help.
  9. Thanks for ProcessWire. The new admin theme really makes it feel years ahead of the old version and the new API features and little improvements are great. Maybe you can update and extend the Roadmap?
  10. The root page of all other pages, or called by it's path/name "/". Normally with the template "home". The URL for the home page ist the prefix for all language URLs. Normally, home doesn't have an url because it's url is the trailing slash /.
  11. Thanks for trying it - it was just written from scratch here in the forum. The guide was just simple and you should just try to follow the steps. Don't be confused with stuff like LanguageTranslationFiles or the FielChangeWarning. That's the dirty part of the guide
  12. Quick 'n' dirty guide if you want a single page tree with the same content in different languages. The URLs will then look like example.com/en/my-article or example.com/de/mein-artikel 1:) Download and install ProcessWire 2:) Install the modules you find under the "Language" Tab. 3:) Go To Setup->Languages and add new languages. Please note, that the default one is also the default language of your site* 4:) For every field type text or textArea change the Type to TextAreaLanguage or TextLanguage. (e.G. body with TextArea becomes body with textAreaLanguage). You fields should now have multiple tabs for each language, if you edit a page. 5:) Go to the root page (/) and look under "Settings" Setup an URL for every language, e.g. en,de,ru,... . Looks like this: http://take.ms/34Tq5 6:) Create pages and fill in the content. You can build a front end language switch as described in Ryans API Language page. ProcessWire will take care of changing URLS (e.g. /en/example to /de/beispiel) and you can access the current language via $user->language; *It's possible later to define another language as the default language.
  13. Thanks Manfred. Fixed. Images are cropped using apeisas Thumbnails (CropImage) Fieldtype . I upload the largest image and then I just crop the smaller versions. The thumbnail name is also the prefix of the file name.
  14. Hey folks, just wanted to add this side project to the list of incredible ProcessWire sites. http://www.brenztapete.de/ http://www.brenztapete.de/2013/oggenhausener-sonnenuntergang/ It's a site where you can download Wallpaper, taken in my home town Heidenheim. The idea was to ask more photographers to add pictures but thats currently only a future plan. The whole site didn't took any longer than one evening. ProcessWire 2.3.x dev with ProCache Apeisas Thumbnailmodule for the cropped variations of the image Some Lazyloading JS magic Responsive CSS Grid. Anyone interested in a site profile from this page?
  15. It minimizes the images the same way thumbnails (e.g. ->size(120,60)) are generated. The image takes the trip to minimize.pw and returns. So the first time, your page loads you will notice the longer page loading speeds. After that, the minimized image is served from your disc. It takes around 15seconds to compress 5MB PNGs to 1.3MB PNG or to compress two 6MB JPGs to 3MB JPGs. The next milestone for the module is a feature where it will replace the image directly after upload - so the minimized version will be the only version on your disc and the performance should be better. Another plan includes an async method to send the images back "behind" the scenes - but only if there is a need for such a function.
  16. Update 09.05.2014: new version of minimize.pw released. I've updated this post and you can read more here. ProcessImageMinimize A service and module to make images lightweight: minimize.pw Our new commercial service for ProcessWire: minimize.pw With minimize.pw, you can shrink your images (JPG and PNG) without noticeable visible differences up to 80%. This makes pages load faster and helps you to work with people not familiar with command line image compression. You can try it for free. Learn more Download the module Github Page Module features Hooks into any Pageimage with ->minimize() (short ->mz() ) Automatic compression with a 1-click-setup (new) Overwrites original files or keeps both versions (new) Image compression with minimize.pw Fail-safe mode so that your visitors won't notice any problems if we're offline or you have no volume left. Usage with templates First, download and install the module. You have to enter a license key. Get a free license key hereTo embed a minimized image into your web page, simply call the method mz() or minimize() on your Pageimage-object. Please note, that is has to be a single Pageimage. We also support apeisa Thumbnails module. $img = $page->image; $img->minimize(); Or put in context $img = $page->image; echo "<img alt='A minimized image' src='{$img->minimize()->url}'>"; You can also use it combined with other Pageimage methods: $image->size(300,400)->mz()->url; Read more at Github Pricing While the module is free, our service is fee-based. We have to pay for servers and traffic With this version we've dropped our year-based pricing structure and introduce a new volume-based pricing. Everyone gets 2000 images for free and you can buy additional volume anytime. Free: 1000 images once 5000 images / 19€ 15000 images / 39€ 50000 images / 89€ Buying more volume will also drop the site limit of three. Questions Feel free to ask any question you might have.
  17. Running PHP Version 5.3.27, memory limit set to 64M and max_execution to 60 seconds. Trying it with 128MB now. Looking through the logs, I've found some suspicious entries. Time it little bit off: [Thu Jan 16 20:12:50 2014] [error] [client 87.165.***.***] mod_security: Access denied with code 406. Pattern match "cc:" at POST_PAYLOAD [severity "EMERGENCY"] [hostname "redacted.com"] [uri "/processwire/page/edit/?id=22354"] If this is the issue, Ryan was right. Thanks. Looking into mod_security now. EDIT: Solved! Google spit out some interessting links for "POST_PAYLOAD" and mod_security. I've deactivated the POST filtering for mod_security. Just add this to your .htaccess file: <IfModule mod_security.c> # Should mod_security inspect POST payloads SecFilterScanPOST Off </IfModule> Taken from this site (more info)
  18. Sorry for pushing this old post. Been quiet some time but have to report back with some research. Not solutions but some useful intel for other people having the same problems as me. Using a normal ProcessWire 2.3 download and installing it without any 3rd party modules produces the problems too. I've looked through the php.ini, all configs and every switch I could find. Found nothing that could possible cause the problems. Limits are way over the file sizes. File name, file content etc. isn't a problem. Tried several combinations. This problems especially occurs with PDF files and images. It's a problem with our server, not ProcessWire I've found one problem with JPG files saved in Adobe Photoshop: Open a 16bit JPG/TIFF file (e.g. from Lightroom) Saving it as a JPG with "Save as..." will cause the upload to fail. Stuck at 100%. Converting the image to 8bit in Photoshop by changing the image modus helps. Save it again and the upload works. Reproducable No idea why it happens, but this fixes some images. I've started to look closer to the PDF files and tried the same thing here: PDFs are saved with Adobe Illustrator CC via "Save copy as..." Saving a PDF with either 8bit or 16bit JPG included doesn't make a difference. Uploads fails with the default Adobe settings. Removing all meta data (previews, editable paths) doesn't help Changing the PDF version from 1.3 to 1.5 doesn't help. Specify a output color profile doesn't help But: Removing all meta data AND specify a color profile makes the upload work. Didn't get stuck with 100%. PDF 1.3 to PDF 1.5 That's all I could figure out. If you have another idea let me know. Thanks.
  19. There was a thread with ProcessWire logos attached as vector files. On page 3 you can find some variants of a square icon. http://processwire.com/talk/topic/1920-processwire-logos-download/page-3
  20. Couldn't you just use the current page number and generate the URLs according to this? $input->pageNum gives you the current page. Example: $nextURL = $config->httpHost . "page-" . $input->pageNum + 1; Of course, you would need to deal with the last and first page.
  21. Thanks. I've corrected the home page to verhilft. Sounds better. Copywriting was done by both of us and we think it works. Yesterday, our first client contacted us via the contact form without knowing us from friends/business partners/... .
  22. Update on the site. www.conclurer.com We've launched an overhauled version last month. Large image, simple navigation and a responsive design. I've tried to keep the site simple an clean. Behind the scenes is the new dev version of ProcessWire, the Justify CSS Grid and Typekit Fonts. Of course, the site is cached by ProCache. _ You can still see the old, 2012 version here: https://v2.conclurer.com/ (ignore the SSL error)
  23. Just did some fixes to the site. They uploaded PNG images which still were around 500kb in size for the news thumbnail. Beside this fix, I've tried to minify the CSS and delay the load - but unfortunaley, we didn't the cleanest work in the JS files back in March. The slider won't render with defered loading and there were some little issues. Now the JS is minifed but not combined into a single file. ProCache off: http://tools.pingdom.com/fpt/#!/eIFQpm/http://weg.conclurer.com Turned on and created a cached version before the test: http://tools.pingdom.com/fpt/#!/c09R0Y/weg.conclurer.com The pingdom test is kinda strange. I've got a better score with slower times from the benchmark. My own "feeling" test resultet in a much faster page respond speed. I think, the real benefit of ProCache is also the ability to save the server ressourcen. If you alot of traffic suddenly, your site might still be running fast. EDIT: Minified the HTML Output and run the test again with ProCache turned on. Yet another result: http://tools.pingdom.com/fpt/#!/dmmWLi/http://weg.conclurer.com/ EDIT2: The min.css wasn't minified after all. Saved another 9.6KB. http://tools.pingdom.com/fpt/#!/s2kZ5/http://weg.conclurer.com/ Pingdom really depends on the time of the test and their own server response time. Google now downgraded me to 89 and 94. I know that the prefixfree blocks CSS rendering (but it helps me alot to develope sites and its quite fast). Some images uploaded by the users need optimization. The goal is to get below 500kb and one second
  24. Tested a website with ProCache activated. I also did some other stuff like gzip compression and some tweak for the htaccess I've found around the net. Don't forget about a clean and lightweight html markup and compressed CSS/JS/Images. Got a 90/100 + 95/100 Google Page Speed. http://developers.google.com/speed/pagespeed/insights/?url=weg.conclurer.com I didn't add a JS loader or integrated CSS for the "above the fold" category. Here's a nice guide to do that http://www.feedthebot.com/pagespeed/prioritize-visible-content.html EDIT: It's funny, that google does critize its own Webfont CSS Loading...
  25. I've run into this issue again: When uploading a PDF file, the upload stops at 100% and no file is saved. This is problably not a problem with the server configuration: I've checked the php.ini settings and I can easily upload some other PDFS or large iamages without any problems. It only occures with some PDF files. Some PDFs work, some don't. I've attached an example. The PDFs were created on Mac OS X (using Adobe software). Saving the files again with the preview.app on OS X helped once. Tried uploading them from another computer / OS - without success. I can upload larger files, other file types or other PDFs to the installation without problems. Two users had those problems. Just using a standard file field. Can someone maybe try to upload the PDF? If it's possible, it might be the server configuration. If not, I'm note sure where to look for a solution. Might be a wrong structure of the saved pdf. There is nothing special in the ERROR Log or in the debug view. Thanks for help. (Removed the attachment)
  • Create New...