Leaderboard
Popular Content
Showing content with the highest reputation on 11/14/2017 in all areas
-
When someone first introduced me to Processwire, I spent about 20 minutes reading the documentation and I knew enough to start building things with it. In contrast, I spent about two hours reading Wordpress documentation, and I still didn't find it incredibly clear if I wanted to build a site from scratch as opposed to just grabbing an existing theme and plugins. If you come from a CMS where you can just install ready-made themes and plugins, Processwire can seem a bit minimalistic, but once you work out how fields and templates work, you realise you can do what other systems can require multiple plugins for out of the box, built into the core CMS. There are modules (in place of plugins) that can speed up development. I found the SITE PROFILE EXPORTER module very handy, as once I'd built a few sites, I could duplicate much of the setup quickly and easily from an existing site if I really wanted to copy anything.6 points
-
I've been mostly a designer too. Up until the end of 2015 I was creative director and my coding days were more than 10 years behind me. I wouldn't suggest anything else. It's super flexible and the API is so straightforward that you'll need little more than to learn how to use a foreach loop in PHP to get on with it. You also have a great community willing to help in this forum, something that frankly I haven't seen anywhere else, coding related or not.5 points
-
I absolutely understand the position you are in. In my 20 years I saw a lot of CMS, switched because they took a wrong turn in development, or were overcomplicated. With PW I finally feel at home. Let me give you some advice in the steps you should take: Install PW locally with the intermediate profile Look at the templates, especially _main.php, _func.php and what's going on in there Then take a look at Selectors. Read for a while and play with them in your template Create new fields, add them to templates and use your new knowledge with selectors! Look at imagefields, text and textarea It won't take long untill your first Aha-experience! Play with the structure of your pages and adapt your selectors(select parents, parent->parent and children) Bookmark the Cheatsheet and look at it often It won't take long - believe me. And a whole new world of possibilities will open up to you! I have been there.5 points
-
That reminds me of when I first came to ProcessWire. My impression was that PW was really powerful so I expected it to be difficult to use and so I thought "I'll only use PW for really complex sites that need it". But as soon as I had built my first site I knew I was never going to use anything but PW from that point on, even for basic brochure sites. Once you have understood the basics then development with PW is super fast. For developing custom sites (i.e. excluding off-the-shelf themes tied to a specific CMS, and who wants to work on those anyway?) I think PW is the fastest, most intuitive and most elegant framework out there.5 points
-
@rafaoski, do you know about the Site Profile Exporter module? You can make your own profile (or edit an existing one) and add in whatever technologies you want, then export it and use it for new PW installs. I'm not sure why any of the things you are requesting need to be connected with the PW core as everyone's preferences are different. When it comes to profiles that are bundled with the core I'd like the number to reduce (to, like, 1 maximum) because for me I never use them and it's just unnecessary megabytes that have to be downloaded and unpacked with every new core release. Currently nearly half the size of the PW downloadable core is made up of site profiles that for some users (most?) will just be immediately deleted. I'd rather see each "official" profile in it's own GitHub repo where they can be downloaded only if needed.4 points
-
@fractalflux welcome to the forum. I was a designer with plenty of css/html experience. 16 months later after starting with PW, built 5 sites and have improved JS and PHP skills. Go for it! Was well worth it for me, plus the forum has amazing members. You can also check out my tutorials site which is aimed at beginners/designers just starting out.4 points
-
The below works for me with AJAX updates. In /site/init.php: $wire->addHookAfter('InputfieldPageTable::renderTable', function(HookEvent $event) { $out = $event->return; // Add checks here for specific PageTable fields, specific templates, etc. // Your table header replacements $replacements = [ 'Title' => 'Foo', 'Headline' => 'Bar', ]; foreach($replacements as $find => $replace) { $out = str_replace("<th>$find</th>", "<th>$replace</th>", $out); } $event->return = $out; });4 points
-
Good starting point - https://processwire.com/docs/tutorials/but-what-if-i-dont-know-how-to-code/ Golden rule with PW (at least when you are starting out) the solution is probably easier than you are expecting.4 points
-
7.1 introduces a number of backwards incompatible changes, so 7.0 support might not necessarily imply 7.1 support. @Mirza, please report any issues you see via the processwire-issues GitHub repository or this forum so that we can deal with them. Thanks!4 points
-
I sort on my site straight inside the selector by field 'postDate' which is a datetime field: <?php $entries = $pages->find("template=blog-entry, sort=-postDate"); ?>3 points
-
preview of upcoming version with some new features: 1) upcoming version lets you place the prev/next links either in the tabs area or in the breadcrumbs (so far only on UiKit): so they look like this (using native UiKit classes): the labels go away for smaller screens: also, supports wrap-around pagination for first and last items: Overall i like the pagination up there in the right of the breadcrumbs, better than down in the tabs; This is only possible currently on UiKit theme, because the breadcrumbs are hookable; thanks to @tpr for the idea of the wraparound pagination, and the idea of moving the links out of tabs; The new version of AOS also has an option for page navigation and is a great alternative to using this module. this implementation is different in that it is using a hook and changing the markup, rather than adding the links by javascript; also this implementation does allow you to selectively show prev/next pagination based on the template, and the placement of the links it static, in the upper right, whereas the AOS version would move around next to the title. Also this version tooltips the titles of the linked pages. Edit: The links can now also be moved on Reno Theme:3 points
-
Wow, i am blown away by all the nice and helpful replies on this thread. I spent last night reading the tutorials and it all makes a lot of sense, in fact to be honest it sounds amazing. It already feels like i have been stumbling around in the dark with using other CMS'es. I have got a local version on my lamp stack which i am playing around with and the logic behind everything makes a lot of sense already. I haven't been this excited about using new software in a long time. Thanks for all your replies and i would like to say what a friendly and welcoming community this is!3 points
-
I can guarantee you you will find PW easier than Joomla, I used to code in Joomla3 points
-
Hi Fractalflux, I'm also a designer with a lot of HTML/CSS experience but very minimal PHP. It can be challenging, but once you wrap your head around where to place the processwire/php tags, you can do quite a bit. I was really struggling when I got started, but with some help from the forums I'm wrapping up a website that has a lot of functionality. I chose this route because as someone who is more confident just writing my HTML and CSS by hand, I was looking for a CMS that would let me do as much by hand as possible, and I didn't want to get into WP etc. and something where all my options were pre-cooked modules that I had to code AROUND. I've had enough of coding around pre-made systems. I think once you know the basics of how to create your templates, and how to make sure your links/images show up correctly, it's basically back to HTML/CSS mode.3 points
-
Edit: Because of the great response to this topic I wrote a guest blogpost: https://processwire.com/blog/posts/building-custom-admin-pages-with-process-modules/ One of the hidden treasures of processwire seems to be the creation of custom admin pages. Technically speaking those pages are ProcessModules - but i guess that's the reason why so many people out there seem to be afraid of building them... it sounds so hard! You've never created a module for ProcessWire? You have never created a plugin for any other CMS? You have no clue about OOP with all its classes, methods and properties? No problem! I'll show you how simple you can start: <?php class CustomAdminPage extends Process { public static function getModuleinfo() { return [ 'title' => 'Custom Admin Page Example', 'summary' => 'Minimalistic ProcessModule to show that nobody has to be afraid of building custom admin pages.', 'href' => 'https://processwire.com/talk/topic/17709-how-to-create-custom-admin-pages-aka-processmodules-yes-its-that-simple/', 'author' => 'Bernhard Baumrock, baumrock.com', 'version' => 1, // page that you want created to execute this module 'page' => [ 'name' => 'customadmin', // your page will be online at /youradmin/setup/customadmin/ 'parent' => 'setup', 'title' => 'Custom Admin Page Example' ], ]; } public function ___execute() { return 'This is the most simple Admin-Page you have ever seen :)'; } } Now save this file as CustomAdminPage.module and place it in your /site/modules folder. After a refresh it will show your module in the modules manager of your site where you can install it: After installation you already have your first very own admin page! Congratulations! Was not too hard, was it? It's as simple as that! Now lets add some more custom HTML. And to show you another nice feature we will add this code to a separate method called executeDemo(). And because everything is so simple we will also add some javascript to this page public function ___executeDemo() { $out = ''; $out .= '<h1>H1 has some special css styling in the admin, thats why it seems to have no effect</h1>'; $out .= '<h2>H2 looks different ;)</h2>'; $out .= '<h3>...and so does H3</h3>'; $out .= '<button onclick="myFunction()">Click me</button>'; $out .= '<script>function myFunction() { alert("this is a demo javascript"); }</script>'; return $out; return ''; } Now thanks to ProcessWire-magic your page will already have its own URL: Just append /demo to your url and see what you get: And of course don't forget to click the button Ok, now that code looks a bit hacky, right? Inputfields and especially InputfieldMarkup for the win! We add another method with some advanced code. To use inputfields we need a form that holds all those inputfields and that makes it possible to handle user input lateron. See somas great tutorial about forms here for a quickstart and more details: public function ___executeAdvanced() { $out = '<h2>A more complex Example</h2>'; $form = wire()->modules->get('InputfieldForm'); $field = wire()->modules->get('InputfieldMarkup'); $field->label = 'Markup Test 1'; $field->value = '<h1>h1</h1><h2>h2</h2><h3>h3</h3><h4>h4</h4>'; $form->add($field); $out .= $form->render(); return $out; } Ok, it get's boring Let's do something more fun and add a chart in a second field and change the fields to 50% screen width (I'm sure you know that already from the GUI template editor)! public function ___executeAdvanced() { $out = '<h2>A more complex Example</h2>'; $form = wire()->modules->get('InputfieldForm'); $field = wire()->modules->get('InputfieldMarkup'); $field->label = 'Markup Test 1'; $field->value = '<h1>h1</h1><h2>h2</h2><h3>h3</h3><h4>h4</h4>'; $field->columnWidth = 50; $form->add($field); $field = wire()->modules->get('InputfieldMarkup'); $field->label = 'Chart Sample'; $field->value = '$chart'; //$field->notes = 'Example code taken from here: http://www.chartjs.org/docs/latest/getting-started/usage.html'; $field->columnWidth = 50; $form->add($field); $out .= $form->render(); return $out; } OK, we are almost there... we only need to add the chart library! To keep everything clean we will put the code for the chart in another method. We will make that method PRIVATE to add some security. Our new Method: private function renderChart() { // prepare chart code wire()->config->scripts->add('https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.1.3/Chart.min.js'); ob_start(); ?> <canvas id="myChart"></canvas> <script> var ctx = document.getElementById("myChart"); var myChart = new Chart(ctx, { type: 'bar', data: { labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"], datasets: [{ label: '# of Votes', data: [12, 19, 3, 5, 2, 3], backgroundColor: [ 'rgba(255, 99, 132, 0.2)', 'rgba(54, 162, 235, 0.2)', 'rgba(255, 206, 86, 0.2)', 'rgba(75, 192, 192, 0.2)', 'rgba(153, 102, 255, 0.2)', 'rgba(255, 159, 64, 0.2)' ], borderColor: [ 'rgba(255,99,132,1)', 'rgba(54, 162, 235, 1)', 'rgba(255, 206, 86, 1)', 'rgba(75, 192, 192, 1)', 'rgba(153, 102, 255, 1)', 'rgba(255, 159, 64, 1)' ], borderWidth: 1 }] }, options: { scales: { yAxes: [{ ticks: { beginAtZero:true } }] } } }); </script> <?php return ob_get_clean(); } Now we just need to call $this->renderChart() in the right place! Here is the complete Module: <?php class CustomAdminPage extends Process { public static function getModuleinfo() { return [ 'title' => 'Custom Admin Page Example', 'summary' => 'Minimalistic ProcessModule to show that nobody has to be afraid of building custom admin pages.', 'href' => 'https://processwire.com/talk/topic/17709-how-to-create-custom-admin-pages-aka-processmodules-yes-its-that-simple/', 'author' => 'Bernhard Baumrock, baumrock.com', 'version' => 1, // page that you want created to execute this module 'page' => [ 'name' => 'customadmin', // your page will be online at /youradmin/setup/customadmin/ 'parent' => 'setup', 'title' => 'Custom Admin Page Example' ], ]; } public function ___execute() { return 'This is the most simple Admin-Page you have ever seen :)'; } public function ___executeDemo() { $out = ''; $out .= '<h1>H1 has some special css styling in the admin, thats why it seems to have no effect</h1>'; $out .= '<h2>H2 looks different ;)</h2>'; $out .= '<h3>...and so does H3</h3>'; $out .= '<button onclick="myFunction()">Click me</button>'; $out .= '<script>function myFunction() { alert("this is a demo javascript"); }</script>'; return $out; return ''; } public function ___executeAdvanced() { $out = '<h2>A more complex Example</h2>'; $form = wire()->modules->get('InputfieldForm'); $field = wire()->modules->get('InputfieldMarkup'); $field->label = 'Markup Test 1'; $field->value = '<h1>h1</h1><h2>h2</h2><h3>h3</h3><h4>h4</h4>'; $field->columnWidth = 50; $form->add($field); $field = wire()->modules->get('InputfieldMarkup'); $field->label = 'Chart Sample'; $field->value = $this->renderChart(); $field->notes = 'Example code taken from here: http://www.chartjs.org/docs/latest/getting-started/usage.html'; $field->columnWidth = 50; $form->add($field); $out .= $form->render(); return $out; } private function renderChart() { // prepare chart code wire()->config->scripts->add('https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.1.3/Chart.min.js'); ob_start(); ?> <canvas id="myChart"></canvas> <script> var ctx = document.getElementById("myChart"); var myChart = new Chart(ctx, { type: 'bar', data: { labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"], datasets: [{ label: '# of Votes', data: [12, 19, 3, 5, 2, 3], backgroundColor: [ 'rgba(255, 99, 132, 0.2)', 'rgba(54, 162, 235, 0.2)', 'rgba(255, 206, 86, 0.2)', 'rgba(75, 192, 192, 0.2)', 'rgba(153, 102, 255, 0.2)', 'rgba(255, 159, 64, 0.2)' ], borderColor: [ 'rgba(255,99,132,1)', 'rgba(54, 162, 235, 1)', 'rgba(255, 206, 86, 1)', 'rgba(75, 192, 192, 1)', 'rgba(153, 102, 255, 1)', 'rgba(255, 159, 64, 1)' ], borderWidth: 1 }] }, options: { scales: { yAxes: [{ ticks: { beginAtZero:true } }] } } }); </script> <?php return ob_get_clean(); } } I hope you enjoyed reading this and it will open up many new possibilities for you! Updates: permissions: https://processwire.com/talk/topic/17709-how-to-create-custom-admin-pages-aka-processmodules-yes-its-that-simple/?do=findComment&comment=174746 tutorial on file uploads: https://processwire.com/talk/topic/17709-how-to-create-custom-admin-pages-aka-processmodules-yes-its-that-simple/?do=findComment&comment=185261 snippet how to use NavJSON: https://processwire.com/talk/topic/17709-how-to-create-custom-admin-pages-aka-processmodules-yes-its-that-simple/?do=findComment&comment=2164122 points
-
If I am not dumb, WireUpload() doesn't create the destination dir in the given path if it doesn't exist and here is the first problem, you should create the dir before uploading the file (are you sure your files is uploaded in $config->paths->assets . "files/useruploads/" ?) , second - as adrian pointed out - is the attachment path. Check below your corrected code, it should work: <?php namespace ProcessWire; $email = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL); $email .= $_REQUEST['email']; if (isset($_POST['submit']) and isset($_POST['email']) and isset($_POST['comments']) and isset($_FILES) ) { //image upload begin $upload_path = $config->paths->assets . "files/useruploads/"; // create the dir if it doesn't exist if(!is_dir($upload_path)) wireMkdir($upload_path); $user_image = new WireUpload('user_image'); // References the name of the field in the HTML form that uploads the photo $user_image->setMaxFiles(5); $user_image->setOverwrite(false); $user_image->setDestinationPath($upload_path); $user_image->setValidExtensions(array('jpg', 'jpeg', 'png', 'gif')); // execute upload and check for errors $files = $user_image->execute(); //image upload end $to = 'me@email.com'; $subject = 'Feedback from my site'; $message = 'Name: ' . $sanitizer->text($input->post->name) . "\r\n\r\n"; $message .='Email: ' . $sanitizer->email($input->post->email) . "\r\n\r\n"; $comments = $sanitizer->entities($sanitizer->textarea($input->post->comments)); $message .= 'Comments: ' . $comments; $success = $email; $success .= $message; $mail = wireMail(); $mail->to($to)->from('me@email.com'); $mail->subject($subject); $mail->body($message); $mail->attachment($upload_path . $files[0]); $mail->send(); } ?> <html> <head> <meta charset="utf-8" /> </head> <body> <form id="option3form" action="./email-with-attachment" method="post" enctype="multipart/form-data"> <label for="name">Name: </label> <input type="text" name="name" id="name"> <label for="email">Email: </label> <input type="email" name="email" id="email"><br /><br /> <label for="comments">Comments: </label> <textarea name="comments" id="comments"></textarea><br /><br /> <p>Click the "Choose File" button below to upload your image.</p> <input type="file" name="user_image" /> <input type="submit" name="submit" value="Submit"> </form> </body> </html>2 points
-
I don't think you are doing anything wrong other than having the path to the attachment incorrect. This is the code I use successfully for sending an attachment. I am using horst's WireSMTP module. $mailer = $mail->new(); $mailer->sendSingle(true)->to($to_address); $mailer->from($from_address); $mailer->attachment($page->files->last()->filename); foreach($page->files as $file) { $mailer->attachment($file->filename); } $mailer->subject("Email Subject")->body(strip_tags($message))->bodyHTML($message); $mailer->send(); This attaches all the files in the "files" field on the current page. You can remove that foreach loop and just attach the user's uploaded file. You just need to get the full path to the file on the server disk. Based on your code above, it should be at: $config->paths->assets . "files/useruploads/" So you just need to add the filename to the end of that. I think you should specify the full path to an image that is already on your server so you can first see for yourself that attachments are correctly sending. Then you can make it grab the user's uploaded file.2 points
-
Got it. Thanks - this community thus far has been quite pleasant and welcoming. Cheers2 points
-
I think you'll really enjoy PW. I came from Umbraco CMS, then Drupal 7, with Wordpress/Craft CMS in-between. PW is by a long way my favourite to use (I did like Craft though, but not the price tag per site for multiple users/granular permissions). Having complete control over the output is really important to me. In fact, a bunch of the stuff I've done easily with PW, I don't even know how to do in the other CMSs.2 points
-
Hi @ryanC - sorry for the silence on this one. I don't have much time to help with this today, but I wanted to get the ball rolling for you. I think you are misunderstanding PHP objects/variables/strings etc a bit here. You define $upload_path as a string and they try to use it like an object with a $userimage property, which just doesn't work. I would suggest stepping back and using: $mail->attachment('known/path/to/image.jpg'); That will help confirm that the attachment process is working. Then make sure that the path you are linking to the user uploaded image is the correct full path to that image.2 points
-
I've had no issues with the PW core and PHP 7.1. It should be noted that 7.2 does result in this warning though: https://github.com/processwire/processwire-issues/issues/408 - it's only a warning though, so not a deal breaker. There will be many modules that also fall victim to this, so I would recommend that module authors upgrade to 7.2 as soon as possible to get these dealt with.2 points
-
The other option is: http://modules.processwire.com/modules/dynamic-description-notes/2 points
-
hey @adrian its slower on laragon than on my live linux server but not that slow. its no factor for me since i can disable everything when i don't need it.2 points
-
I've tested PW2/3 with PHP 7/7.1 All issues I've had were to do with Namespaces of the Processwire objects (e.g. wire , NullPage)2 points
-
ProcessWire is already supports php 7. That's the php version I'm using.2 points
-
That would work, but there is an aos tweak to move the save btn next to the title. But perhaps prevnextlinks could be placed to the far right then, will think of it.2 points
-
Processwire's image handling is great for generating different sized images for the srcset attribute in HTML 5. It can make the initial page load a bit slow after an image is first uploaded, but it's fast after that.2 points
-
Yeah, you could pass null, but I do think it's just as much hassle, so went with the "hack". I know it's used in the PW core and l've seen it lots of other places and used it myself - it just feels dirty, but in this case, I don't think it will get out of hand and makes it much simpler to use.2 points
-
@Robin S - I've been playing a little more with this. I decided to do the check to see if the second parameter is an array or not. It still feels hacky, but I do like not having to add a title when I just want to adjust maxDepth/maxLength, so I think it's worth it. I also tried removing the space between the label and the dump output (which I just got your reply about right now ) and I think that works nicely. What do you think - does this look ready to go? BTW, I have also made both these changes to the Dumps panel.2 points
-
Thanks for your reply ryanC, that sounds good. I know exactly what you mean regarding the pre-cooked modules etc. It can get frustrating and time consuming which is why the philosophies of processwire appeal to me. Ok, cool i will make the jump and start by reading lots of posts and documentation to become familiar with things. Thanks again2 points
-
I can't disable that in my chrome console because I use it in my own css during development, maybe the pw styles should be compiled without the option of source map files enabled if it's the case that those files are not going to be included in the distribution2 points
-
yes, all the time.. the installation did not include the source map for less/css files.. It's not a big problem, but the constant notifications bother2 points
-
I'm hoping to release it in alpha early next year. It will come as a site profile which has a starter theme and everything.2 points
-
So I'm trying Uikit 3 again. I wanted to get to know this framework in order to better understand making an admin theme. Testing it on a simple HTML page, with a structure: test - uikit - build - dist - src - etc... - index.html I just git cloned it rather than NPM install because I wanted to use their build script. Then I created a custom folder and a file at /uikit/custom/styles.less with the following: @import "../src/less/uikit.theme.less"; // mixin to add new declaration .hook-card() { background-color: orange; color: white; } Running 'npm run watch' recompiles, I get the output at /uikit/dist/css/uikit.styles.css and results in: So all seems to work. What I don't understand is how to make a theme. I see a file at /uikit/src/less/theme/uikit.theme.less Basically I can't seem to put two and two together. I'm well familiar with preprocessors but this has me stuck. 1) Can anyone elaborate (further than the docs) on how to set this up? Am I supposed to modify the theme folder to create my theme? In which case, would be overwritten when I update. 2) If I use their build process, how do I include my own app.js file into their build process and have it output at /uikit/dist/js/uikit.app.min.js? Any advice would be awesome thanks.1 point
-
I guess what you are asking is how do we get more casual developers interested into ProcessWire? As in you said, you don't want to learn how to connect these frameworks up to ProcessWire. I don't think ProcessWire currently fits in a market where everything is module or theme. While it has the features to be. It just doesn't have the audience. I would say nearly everyone here is a developer that writes bespoke websites for their clients. I think trying to compete with WordPress in its versatility to just pick up, install a theme and a couple of modules and off you go. Could damage ProcessWire. For example a lot of WordPress websites get hacked due to the fact that modules/plugins installed aren't secure. I personally like where ProcessWire sits, it's really easy to pick up and learn, the API is by far the best of any other CMS available. However it takes the patience to learn. However not everything is handed to you. Go out and learn how to hook these frameworks into ProcessWire. I promise you, you won't regret it. And then why not release it as a profile? That's how the community and library gets bigger.1 point
-
Hello @Robin S In general, the simplest stack gulpfile.js + package.json is about 5kb in size, its not a big file, and it speeds up front-end frameworks. I like the new UIKIT Starter and I would like to be able to edit it quickly with these tools without learning how to properly connect them to the profile. Processwire is not only a framework for PHP developers, but there are many who are faced with the front end. Note that the new users would like to see what Processwire can do and without Profiles it will not know anything else. The new ones will not know how to add a profile to the Processwire installer, and not everyone will go to the Processwire forum to find out more. You mentioned the reduction of the core and I agree with you 100% to throw out the profile but you could add an installer that gets profiles from github like the October CMS that can install automatic templates. I do not know if it's possible in Processwire (I know the basics of PHP but no more to create a new Download System). And this profile above I created using ProcessExportProfile, which works great, I made it for new users who might have installed it sometime and discover it that in addition to Wordpress, Joomla and Drupal is also ProcessWire ( Except that they need to know how to add to the installer ). I would like more developers and regular users to notice Processwire. But maybe the change I wanted was not the best way. Thanks to Robin for your point of view.1 point
-
Thanks flydev! I pasted your code into my template, and I got the attachment in the email! I owe you a beer. I've been slowly reading the php documentation on file uploading, to try to understand the theory behind all this stuff, so I can better understand the tips you guys are giving me. Thanks again!1 point
-
I have to admit I like Umbraco as an ASP.Net CMS as it has a similar philosophy to Processwire where everything is customisable, and you can create templates with whatever fields you like out of the box. ASP.Net is both its strength and weakness though in that if you need an ASP.Net based solution, Umbraco is good, but most of the time a PHP based solution is fine. I think Processwire is easier for beginners without a lot of coding experience. I like Umbraco's permissions system better, and the separation between document types and templates is handy if you need multiple templates for the same data, but just creates extra work if you don't. I'd say Processwire's documentation is outstanding, and quite apart from the CMS itself is part of what sets it apart.1 point
-
1 point
-
Thanks SamC, i will have a look at your site now. It is impressive how much functionality is built into the core and i have only just scratched the surface.1 point
-
i just mentioned that because the quality of help also depends on how one posts his questions. in that case it would be nice to reference one topic to the other so that everybody is following in the right context. lecture off and good luck with your attachments1 point
-
I'm not sure of the likely hood for a default site profile including these. Minify CSS/JS is included in AIOM and ProCache - I don't think this will make it's way to the core. There is a UIKit Site Profile which is using - https://getuikit.com Am I miss understanding your question?1 point
-
...and please don't double post in different topics1 point
-
Hello @tpr If you can confirm the behavior written in the previous post, @Robin S helped me out at my similar problem to get it working. Running a slightly modificate code inside init.php instead of ready.php will solve the problem. Maybe its a solution you can also use if you can confirm this behavior. For the solution please click the link to my problem in the previous post. Best regards1 point
-
Currently (and have been for most of this year) developing a site on 7.1.5 - only issues have been with AIOM, but fixes/forks are available.1 point
-
1 point
-
lol was already on your website the moment i saw Unity, and I like the experiments you have, yes It takes time and money , I realized this while trying to take up 3D Modelling in Blender, I gave up due to other projects, but am opening to free up time for this, lovely personal website by the way.1 point
-
Thought id also post a link to this great blog post by Ryan, which includes the successor to the MarkupLoadGCal module: https://processwire.com/blog/posts/composer-google-calendars-and-processwire/ Hope this helps.1 point
-
Here are a few links to check out for PW calendars. I'm not recommending a solution here, just signposting. These are in the official PW module repository... https://github.com/ffub/MarkupiCalendar (iCalendar feeds anyone?) https://github.com/netcarver/PW-ProcessGcalEmbed (My old module) http://www.99lime.com/modules/recurme/ (Premium) These aren't (a.f.a.i.k.)... https://github.com/plauclair/Calendar https://github.com/ryancramerdesign/MarkupLoadGCal (Ryan's module) https://github.com/decadeofdefeat/church-website-processwire (Has a calendar implementation in it) https://github.com/lindquist/processwire-calendar https://github.com/UF-Asq-Fab-Lab/Scheduler Hope that helps!1 point