Leaderboard
Popular Content
Showing content with the highest reputation on 11/29/2014 in all areas
-
Hi All, I have spent a decent amount of time over the last two days (starting yesterday on American Thanksgiving) rebuilding my main personal business photo site with Processwire. For now this project is still being developed on a local install of MAMP. I did not wake up yesterday with the intension of starting this project - but I just went for it... Going back a few months: I discovered Processwire by accident. I was not really looking for a new CMS to replace my weapon of choice, namely MODx. Processwire seemed intriguing, but to be honest I had serious reservations in the beginning. After some initial tire kicking my conclusion was "this looks like a really interesting alternative, but this system is for advanced developer geeks with skills, it might never be the playground for you..." Initially my commitment to Processwire was an awkward stop and go experience. But I stuck with it. I asked some basic questions that just screamed "newbie alert" but the constructive and helpful responses were rewarding. I began to take notice and found that overall the Processwire Forum was simply first class. I know my way around markup HTML, CSS and pushing pixels around. But I can't write scripting code like PHP to save my life. I thought this was going to be a deal breaker - but I stuck with it. Fast forward to today: I am amazed at how much I got done! I am taking an existing MODx site and converting/improving all the dynamic elements from MODx to Processwire. Along the way I am streamlining the markup, the CSS, the logic, while adding more efficient Processwire building blocks than I thought possible, all without needing to fire off "help me" requests to the Processwire forum. I am also improving my CSS skills and I am even beginning to feel less intimated with working with PHP code. I guess you could call this the Processwire "aha" moment. It just feels good! I am really enjoying working with this system. There is so much in the Processwire arena that is still a mirage in the sand, but I think that with time I will add more and more knowledge. I guess that is it. I really appreciate the help and encouragement from you all... Cheers, Max14 points
-
7 points
-
If you install this module you´ll be able to use angular and use it in your templates directly. Example of a list of all children of the actual page. <script> app.controller('myCtrl', function ($scope) { $scope.children = []; $scope.children = <?=$page->getChildren()?>; }); </script> <div ng-controller="myCtrl"> <ul> <li ng-repeat="child in children">{{child.title}}</li> </ul> </div>6 points
-
This is called the ProcessWire tractor beam. You've been pulled into its path! You wake up one day and know you won't be happy until your own site is completely rebuilt in PW. Even though you don't have time, you have real work to do and your current site and CMS have been perfectly "ok". Before you know it your life is full of echo statements, you're visiting the forums multiple times per day and you can't sleep at 5am because you're crazy excited about the great thing PW allowed you to do with your site that you never thought possible. Anyway, nice write up. Thanks for sharing4 points
-
I am sure that many will recognize what you are writing there. You have a good writing style. It has to do that working with processwire has a side effect: it pushes you into learning code. You can ask yourself why processwire has this side effect. But if you think about it, it is because processwire has no shell, no front (rules). You can bring together your own (any) html and css and put it as a front on processwire. With processwire you can not avoid to see that paths, values, functionality, etc, between the html tags are replaceable by php and api. So naturally you are going to fiddle around to see what is all possible. This leads in a natural way to learn coding, the side effect of pw. Of course, not every pw user will go the road of coding, that is simply up to the user, but processwire puts a big temptation on you Having said this, everybody can already make nice websites with processwire with only a few php scripts that you don't need to learn but simply save as snippets and re-use them in your websites.3 points
-
Greetings, It's embarrassing when you set a bandwidth limit on your own website -- then manage to exceed it. I'm in the process of completely revamping that silly old site anyway. It just keeps getting put off in favor of those nagging paying clients. Thanks for the heads up. Very much still alive, Matthew3 points
-
You might want to take a look at Admin Hot Keys. It's a module that does essentially what you're describing here.2 points
-
Hi Jtherczeg Transiflex is not really FreeOpenSourceSoftware (Free = Freedom) and it unfortunately also not Free (Free = like Free Beer). Readthedocs woudl be connected already to Transiflex by the way but I think with weblate we can do the same as they themselve use Readthedocs for their own documentation. Weblate does support translation of monolingual resources like JSON. http://docs.weblate.org/en/weblate-1.7/admin.html (scrol down also for finegrained access rights - it is really great with weblate! "You enter Git repository location and file mask which files to translate and Weblate automatically fetches the Git and finds all matching translatable files." The initial problem is actually only to get all language files into the right order - into a logical one into the repository. Right now we choose the structure to have a translation for the core in one gitbranch and the modules in another - we need to test out what is best way doing it! As we aourself ned to use also modules which are NOT in the priocesswire repository and those which are simply in a non stable state but used already, we will try to collect all modules to that repository and update it regularly via scripts which git pull from the original repos. The problem here is that with a git pull also the translations would be overwritten. So much better would be actually to have a centralized repositopry also for development where all modules could be than continously be updated. Another problem we already figured out is that the processwire repository seem s not to be maintained in terms of looking for modules which get no more maintained at all by their module owners/creators. This is causing a buit a chaos of modules which than even won't update anymore correctly. We have here one site where wesimply install all those modules in and than when one get updated in the processwire repository the great modulemanager module will alarm us that an update is available. Doing the update than with thos no more maintained modules results sometimes than in incorrect updates or incorrect notifications (versions) that the update actually took already place. We contacted some of the module owners and some are fizing it and others are simply no more with Processwire ;-). This might cause also problems for the translations but we will see! You are right mediawiki could be used immediately when it woudl get installed on a server. Which server - the one of processwire.org Who is maintaining the server Who will have access with what rights Who is taking care for the wiki itself ... and I guess some more questions which are more or less obsolete by using readthedocs ;-) Beside this each individual could create his own readthedocs account for their custom documentation and than pull that custom documentation they write for THEIR individual customers into multiple site of them. The problem with Mediawiki or also with Pootle is that 1st this server needs to be maintained by someone and MediaWiki and it wuld be the same if using Pootle itself needs to be maintained by someone beside the fakt that we would need someone managing theaccess stuff which would also be needed on any other solution. Wit Readthedocs we would have no problems at all with their Server (Cloud), or with the Software Readthedocs is using. The maintenance Footprint is very very small by using Readthedocs. And the docs look really good! Check it out. Media Wiki and Readthedocs would be by the way both external solutions as the documentation will take place outside of processwire. Than the needed docs - and only those needed by the modules/core and by the installed translations should get pulled into a Processwire installation and updated regularly like we update modules already in processwire. Beside that there should be the possibility to modify locally an translation which than gets not overwritten anymore by the updates of a modules-language file. Here by the way the way Macura is writing the docs inside of Processwire could be quite helpful. we only would need to pull the original translation i.e. via RSS and than i.e. could overwrite them in another tab on a page. Each module which gets installed would also install their documentation page in the admin area, which would than incllude this feed and the local Tab - with the customized translation. The tabs itself for each module than would need to be able to be enabled (default) or disabled i.e. when there is a complete customized version or both enbled when thereis simply additional information a dev is writing for a customized site. Another great benefit of weblate would be that everyone can actually install a local version of it to for himself. It is real Free Software. The same way you can install readthedocs locally and you can of course have also your own git - in other words you can collaborate butit woudl offer you all choices actually to also not collaborate totaly or in parts without loosing the ability to pull docs from the centralized solutions. Of course the maintenance effort would be than by each one self who is maintinainng his own local servers with weblate, readthedocs and/or git ;-)2 points
-
This module allows you and your site editors to protect a page (and optionally its children, grandchildren etc) from guest access directly from the page's Settings tab. You can also limit access to certain roles. http://modules.processwire.com/modules/page-protector/ https://github.com/adrianbj/PageProtector It makes it very easy for editors to set up various password protected areas on their site, or to simply protect a new page or section while they are still working on it. Ability for your site editors to control the user access to pages directly from Settings tab of each page Include whether to protect all children of this page or not Optionally allow access to only specified roles Option to protect all hidden pages (and optionally their children) Ability to change the message on the login page to make it specific to this page Option to have login form and prohibited message injected into a custom template Access to the "Protect this Page" settings panel is controlled by the "page-edit-protected" permission Table in the module config settings that lists the details all of the protected pages Shortcut to protect entire site with one click In addition to the admin interface, you can also set protection settings via the API: // all optional, except "page_protected", which must be set to true/false // if setting it to false, the other options are not relevant $options = array( "page_protected" => true, "children_protected" => true, "allowed_roles" => array("role1", "role2"), "message_override" => "My custom login message", "prohibited_message" => "My custom prohibited access message" ); $page->protect($options); As alway, I would love any feedback / suggestions for improvements. Hope you find it useful! Page Protection Settings (settings tab for each page) Module Config Settings1 point
-
Just a simple contact form including spam protection. Optional support for Twig (TemplateTwigReplace) as template engine. --- Please have a look at the readme on github! If you upgrade from version 0.0.9 and below, there are some extra steps to be taken. The Guides Installation Module Settings Spam Protection Usage Logging Upgrade Notes1 point
-
https://github.com/adrianbj/ProcessModuleToolkit It allows bulk automated migration installation and upgrading of modules (and their config settings) from one PW install to another, so it should be very handy in setting up new sites with your standard collection of favorite modules and settings. Allows includes batch installing by a list of module class names. Go to the Setup > Module Toolkit and follow the prompts. During the import, you can choose which modules from the collection to import. You can optionally import the module config settings from the source install. The one caveat is if a particular setting includes a reference to a page, template, or field ID, it won't work, but you can easily update this setting on the destination install. Batch install new modules directly from the modules directory with a list of module classnames or URLs to module zip files. You can optionally, automatically update all of the imported modules (if they are in the ProcessWire modules directory) to their latest available versions. It copies the module files so you can use it to migrate modules that are not available in the PW modules directory, or on Github. Great for all those custom helper modules you've created. Full restore feature in case something goes wrong / you change your mind. I maintain a dedicated test PW install for installing and configuring modules which I can then export for use in my projects using this tool. Please test and let me know what you think!1 point
-
Image Animated GIF v 2.0.2 Module for PW 2.5 stable or newer, but is obsolete for PW Versions greater then 3.0.89 (... read more ...) This module helps with resizing and cropping of animated GIFs when using the GD-Library. The GD-Library does not support this. This module is completely based upon the fantastic work of László Zsidi (http://www.gifs.hu/, builts the initial classes) xurei (https://github.com/xurei/GIFDecoder_optimized, enhanced the classes) I have ported it to a PW module and it works with core imagefields, together with Pia and with CropImagefields that uses the new naming scheme since PW 2.5. ------------------------------------------------------------------------------------------------------------------------------------------ read more in this post about the rewrite from version 1.0.0 to version 2.0.0 ------------------------------------------------------------------------------------------------------------------------------------------ You can find it in the modules directory: https://modules.processwire.com/modules/image-animated-gif/ and on Github: https://github.com/horst-n/ImageAnimatedGif ------ A preview can be found here1 point
-
Happy birthday @Joss (according to LinkedIn). Hope you've got that PostMan Pat tie on and are sipping a nice whiskey1 point
-
I am sure lots of very cool things could be done, all of which will require a little more than the 5 mins of planning and 20 mins of coding I put into this one Here is a revised version (with a new name) with about an extra 15 mins of coding that adds support for batch adding/removing of fields from templates. I think I might actually make use of this version quite a bit. EDIT: I don't think "Template Setup Batcher" is the right name - not really about setting up templates from scratch. Oh well - maybe change again if a newer version ever happens ProcessTemplateSetupBatcher.module1 point
-
solved: i failed to put the full folder of the getid3, i had just copied only the main class file.. major facepalm @adrian - forgot to thank you for helping.. (was actually replying to your post when the solution dawned on me..) by the way, this is pretty awesome, now i can read id3 tags and create pages based on those tags; also prevent users from uploading mp3 files where the bitrate is too high (in order to keep the filesizes small we use 128 for streaming files)...1 point
-
I think hanna code makes the most sense here, but of course if you'd rather avoid that for some reason (maybe no other needs for it on the site, or whatever), you can always do your own replacement. Have your editors enter [[gallery]] somewhere in the body copy and then in your template do a simple: echo str_replace("[[gallery]]", $galleryCode, $page->body); You just need to define $galleryCode in your template code somewhere before the body is output.1 point
-
Actually I PM'ed you about the 'problem' on 5 November . Found out about Blog docs only yesterday?! I need to up my game!1 point
-
@Peter, The select box is coming from the 4th argument of renderNav() $mobile. The default value is 'true'. Used in conjunction with CSS @media queries, the select box provides an easier navigation of your Blog for mobile devices. If you wish not to use it, just set $mobile=false. See below: renderNav() tutorial - I'll need to update this to be more explicit about this feature.. renderNav() code use with media queries example in blog.css demo file1 point
-
Gazley, I am not sure what version of blog you are using but I know that kongondo made some relatively recent changes to help with clean up of pages when uninstalling. But it sounds like you might need to do some cleanup anyway at this point. Did you use the PW backup module to do your backup and restore? Unfortunately there is a bit of a limitation with that backup module at the moment in that it doesn't start with a blank DB when restoring so you can get that situation with existing tables. At this point I would suggest uninstalling the blog again and then manually removing the DB tables - all that start with "field_blog_*". Also check to make sure there is no entry for the blog module in the "modules" DB table. Hopefully with a clean start it should install fine.1 point
-
Command (or Control) + S to save a page. I realise there is both Save (initially) and then Publish and Save and Keep Unpublished. Saving something is more of an automatic action and a requirement. Publish could be kept manual ?1 point
-
Here in Russia the price of Ryan's commercial modules just multiplied x1.5 with the rise of the dollar. And I did not manage to buy Liser Pro as I intended. I know Black Friday - the day of crazy sales - is comming tomorrow. So I just wanted to suggest PW Store to make a marketing action on this if it is possible)))1 point
-
Yeah, I was just telling about my experience, I have no preference except that it should be centralized. I've only used non-self-hosted solutions thus far and I've had no problems. I just looked at the Weblate blog and was pleased to find it has been under very active development. So I say +1 for hosted.weblate.org. Anyone curious can try their demo server, user: demo pass: demo @jtherczeg: Weblate seems to have very fine-grained access control: http://docs.weblate.org/en/latest/admin/auth.html#privileges I guess this is true in hosted.weblate.org as well?1 point
-
Happy Birthday, too! (We need a Birthday calendar and a reminder - since i've read more in this forum than on my other social hubs.... )1 point
-
Yes, I know and I have used it initially that way. And you also can do it now: when passing width and height instead of square, the other possible options are ignored and the result should be similar to what you have got with the gist code, but maybe a bit larger. (20%) I thought it would be easier and less confusion for average users to just have a switch for on/off and if they define a square of 120 that they get back the largest possible image with 120px. If you also like / need the comp param dynamically to define, it can be easily added as a 'silent' option.1 point
-
1 point
-
Big thanks Horst Thats why I used a rectangular box in the Gist to control it.1 point
-
New addition to contain: weighten! If you want to put some images of different aspect ratio onto a webpage and you want that they are displayed more equal visual weightened, you can use this method and options now: . * contain with option weighten $image->contain('square=90, weighten=on'); . . There is also the possibility to prioritize portrait or landscape oriented images: . $image->contain('square=90, weighten=x1'); // landscapes are a bit larger than portraits $image->contain('square=90, weighten=x2'); // landscapes are a bit more larger than portraits $image->contain('square=90, weighten=y1'); // portraits are a bit larger than landscapes $image->contain('square=90, weighten=y2'); // portraits are a bit more larger than landscapes . . Have a look to this output here: . . . . . PS: @Martijn: I have taken your code for the calculations and set the percent value hard coded to 38. This way we only need to turn weighten on or off and have not to deal with values here. The only thing I have added to the calculation is an adjustment to fit better with the largest dimension into the initial bounding box dimensions. (Github)1 point
-
Yeah super cool something like this should be in core just more complete and with fields too. Monster1 point
-
How about this little process module You can choose the templates, access permissions, roles, and whether you want to add or remove these roles from the selected templates/access permissions. Test carefully, but I think it should observe all other permission rules etc. For example, it won't let you add Create if Edit is not checked, or already assigned in the current settings. Also, if you choose to remove Edit, it will automatically remove Create even if you don't select it. These are to adhere to PW's access rules. Not sure if this is worthy of being added to the PW modules directory or not - what do you guys think - would people actually use this?1 point
-
I camped out all week in front of his store to get Form Builder. Can't wait to use it.1 point
-
Whenever I see a Bandwidth limit exceeded error, I always think of a fat drummer. Never mind...1 point
-
@dazzyweb - you're right, maybe the first thing we all need to do with new clients is to have a meeting where we explain these differences; I try and do this whenever possible, and it helps. And it's true what Joss says that most clients are completely in the dark about the world of web design, and the internet in general. This places a larger burden upon us web designers because of the training and support implications, and that's an area that i'm trying to deal with now, like for example marking up budgets to account for all of the question-answer, training sessions, and making docs...1 point
-
Well, his web site is currently throwing a 509 Bandwidth limit exceeded … No, seriously, apologies for that. I like to think of myself as someone with a pretty decent knowledge of the English language, but at the end of the day, I'm not a native speaker. (I wasn't really sure about the particular idiom. Should've looked it up. Sorry, Matthew.)1 point
-
I think it's not the rise of the dollar but the fall of the ruble... But maybe you can just write a PM to ryan and I think he will understand this and may give you a discount1 point
-
I know that using PW compared to many others can make you FEEL like you have died and gone to heaven, but as far as I am aware, Matthew is still very much with us!1 point
-
1 point
-
In the spirit of Matthew Following Matthew's example, I'm going to be boring and actually take this serious. Sorry guys, no funny images here. Before: I was basically switching my “go-to CMS” every, phew, 6 months or something like that? I'm not going to list them all since I don't see the point in that, but suffice it to say that I have at least evaluated almost any CMS that regularly shows up in one of those “most popular open-source CMS” lists. And frankly, they basically all suck in one way or another. As Matthew stated, it was basically looking for the lesser evil for any given project. After: I just looked it up – the last time I built a new site with a CMS other than PW was September 2013 (explicit client's request for a specific CMS). I frequently do freelance frontend developement for an agency which uses TYPO3 for almost everything, and I catch myself thinking “Boy, how easy this-and-that would be in ProcessWire …” In fact, I finished a project the other day which was built in static HTML because (project management voice) “… a site like this can't be implemented with a CMS.” It could've been. Easily. Just would have had to use the right CMS. Most important of all, and this is what I always mention when I talk to people about ProcessWire, I'm now actually having fun implementing sites. That used to be very different back in the day.1 point
-
I use this: $fg = $fieldgroups->get("basic-page"); $fields->saveFieldgroupContext($fg->getFieldContext("sidebar")->set("label", "aside"), $fg);1 point
-
Okay, that was sneaky! But thanks. Bit early for whiskey (and yes, it will have an "E" in it - all those Rorkes in my family tree, don't you know), and I am wondering where the tie is? Since I moved a few months ago I am still having trouble tracking a few bits down.1 point
-
The linchpin mentality would be espouse all possible solutions appropriate to the scope of the project, considering all elements including budget, time frame, intended audience type and size, target devices, developer's time resources, with the goal to ship it on time and on budget. Themeforest is a great resource for front end designs, and I use it when appropriate (and also codecanyon). But don't expect to get much in terms of support; also sometimes the technologies used are not quite up to date, and the css can be bloated. We all love bespoke–after all, the engine running the site is already as bespoke as it can get without writing your own CMS. But most clients I work with can't afford bespoke frontend and backend so a choice has to be made. I have a few "go-to" TF authors that are great both in terms of design and code quality. The clients usually pick the template by visiting TF. If this was my full time job, I would probably only do 100% bespoke front end because it would be more fun and engaging. But this is all relative- we're already abstracted a few levels away from the bottom with frameworks, css preprocessors, and CMFs... Nobody Cares How Hard You Worked1 point
-
Why on earth would average business owner care if the website design is custom made or based on high quality template? I don't think they would like to pay extra for custom made car, much rather buy the Toyota hiace and add some nice looking paintings on it. Many people buy ready designed houses, instead of asking something just for them. Price matters. It's entirely different thing when the business is online or the main marketing channel is websites (and clients can be from all around the world). And of course if client just has money and wants something just for them (emotional buying).1 point
-
I think that it is not that clients don't care, I think they don't realised they are being fooled to be honest. I have only dealt with tiny little companies recently, perfect Wordpress fodder. When I talk to them about what is what, they really care a lot and didn't realise what they were facing. This is true of all forms of advertising (and websites are just advertising, for the most part). Advertising is such a specialist thing that most clients are completely out of their depth - that is why they subcontract in the first place. But with web design being such a new industry, and SEO seeming to be some sort of "dark art" the field is open for anyone who wants to be less than scrupulous. And that is a shame, not just for the clients, but for all those designers out there that care about doing right by their client.1 point
-
Unfortunately, there's a race to the bottom with regards to themes and especially WordPress themes. I never would have thought the numbers were so high though. How are you selecting the web companies?1 point
-
My main experience in this comes from outside web design. However, clients of web designers are also clients of other people, like advertising producers, composers (me) and so on. So, I imagine they have the same expectations. In music, there is a clear difference between off-the-shelf and bespoke/custom (bespoke and custom are the same things). With bespoke the expectation is that you compose a piece of music from scratch and then will not sell that piece of music to anyone else. With off-the-shelf, the client expects the music to be from a stock source (production library, your own library, wherever) and that they will licence it. The terms of the licence might be that they can just use it (and so can everyone else), or they might licence it exclusively for a given territory for a set amount of time and so on. However, they would expect this to be the cheaper option, unless the music is something famous and in copyright. With the off-the-shelf version, they might well expect some customisation, and those customisations would be unique - for instance, having their name sung. But that would be unique by its nature! (Note the difference in emphasis between a "custom" solution and "customising" an existing solution) With web designers, if a company is using a bought-in template as a starting point, the client would expect to be told that a) the basic design has been outsourced by using a pre-existing template and b) that anyone else, including their direct competitor, are free to source the same template. If a design company is using a 3rd party template and saying it is a bespoke or custom design (as opposed to customising someone elses design), then to be frank, they are being dishonest. If that happened in music (and it has a couple of times) the lawyers do very well out of it. To be completely unfair (or maybe not) to certain web designers, when they use a template and just change a couple of colours and the logo, then they can't have really thought about their client's image. Treating them as just another shoe seller, or plumber, or guitarist shows a diabolical disregard for brand image and client integrity. I have much more time for instant plug and play solutions where the client KNOWS they are not going to look unique, but just need to get on the web with something that is cheap and quick. It might not be the best solution, but at least it is honest.1 point
-
@Joss - yes, i'll post the complete instructions as a new thread in tutorials, and link to that here - would that be ok? here's a first draft... https://processwire.com/talk/topic/8392-simple-built-in-docs/?p=813031 point
-
with PW version 2.5+ it can be done now: https://processwire.com/talk/topic/8386-image-animated-gif/1 point
-
Did you check your language setup ? ============================================================================== Begin of Language setup 1. After a fresh install of processwire go to Modules => Core => Language => Install Language Support Click on the back button in your browser Install Languages Support Fields Click on the back button in your browser Install Languages Support Page Names Click on the back button in your browser Install Languages Support Tabs 2. Go To Setup->Languages and add new languages. Please note, that the default one is also the default language of your site. Add new languages with name and title: name: default Title: Default (e.g. german) name: english Title: English name: spanish Title: Spanish 3. SET URL FOR EVERY LANGUAGE Go to Pages => Home => Edit => Settings and under each language tab setup a url for every language, e.g. default = de/ de english = en/ en spanish = es/ es 4. Go to Setup => Fields Change title field from PageTitle to PageTitleLanguage Change headline field from Text to TextLanguage Change body field from Textarea to TextareaLanguage and then go to Setup => Fields => Body => Details => inputFieldtype Change inputFieldtype from Textarea to TinyMCE Change sidebar field from Textarea to TextareaLanguage Example use: Go to Pages and edit your About Us page go to Headline and edit About Us in the 3 languages e.g. Über uns - About Us - Sobre Nosotros End of Language Setup ==============================================================================1 point