Leaderboard
Popular Content
Showing content with the highest reputation on 12/08/2013 in all areas
-
Depends on the client a bit. Certainly with my music it is often a case of "look it works, you are selling more biscuits - here is the bill" I could tell them exactly how my harmonic fifth on the cello adds that sense of pathos that just gives the brand that edge more authority, but you would be amazed how often clients glaze over and pay the bill just to shut me up. I have that effect on people - very useful.3 points
-
It's not a bug, it's how list elements work. Now the browser tries to make something of it. list elements need an <ul> or for numbered <ol> echo '<ul>'; foreach($page->children as $child){ echo '<li class="A">'; echo '<ul>'; foreach($child->children as $book){ echo '<li class="B">'; echo '</li>'; } echo '</ul>'; echo '</li>'; } echo '</ul>';3 points
-
When a client asks for "a website" with "easy management", explaining that ProcessWire is "an awesome framework for building just about anything" feels plain wrong and is unlikely to yield desired results. On the other hand, when client (or fellow developer) does mention the need for "an application", "framework" or "software platform", it's good to be able to match those needs too. Personally I really like the fact that ProcessWire has the ability to be both and would like to avoid emphasizing either *too much* over the other. If I needed a CMS, there would be a huge amount of other options available, and if I simply wanted to build an application I could (for an example) turn to Zend Framework and get the job done.. and so on. What ProcessWire brings into this equation is a well-balanced combination of features from both worlds. Each part supports the other, eventually making it more than the sum of it's parts. I especially love how easy and fast built-in admin makes mocking up data structures -- in fact it's such a smooth experience that the times I've built mock data manually for HTML wireframes etc. have been almost nonexistent lately. I find it faster to make fully functional features using ProcessWire than writing dummy directly with editor. And that, in my opinion, is why it's so damn good. Not that I really needed to explain it to anyone here, but my point is mostly that I don't see ProcessWire simply as a CMF or CMS or application framework or whatever. It's all of these combined.. and that's a good thing. I hope we don't get stuck discussing which one it is when that question can't (and shouldn't) have one single correct answer2 points
-
Thats why I always walk with 3 shoes, incase I loose one while walking.2 points
-
Yes there's wireCopy() wireCopy($sourcepath, $destinationpath, $recursive=true);2 points
-
Greetings Everyone, When I started this topic a year ago, I proposed that ProcessWire be presented more like a framework than a CMS. Over the past year, as I have developed further with ProcessWire, my opinion has strengthened. This recent post by Ryan re-ignited the idea for me: (http://processwire.com/talk/topic/5066-creating-commercial-licensed-modules/?p=49389). It seems that a lot of the discussions around "comparisons" continue to be ProcessWire vs WordPress or vs Drupal or vs Joomla. After working with ProcessWire more, I feel even more strongly that the discussion should shift instead to be more like ProcessWire vs Laravel or vs Yii or vs CakePHP. As Ryan indicates in the above quote, ProcessWire is not comparable to WordPress in what and how you build with it. I have had numerous situations in recent months where I propose using ProcessWire for a project and explain that it is a CMF, emphasizing the framework part. In my own work, I have already shifted my presentation, describing ProcessWire as a framework. Still, clients start from the perspective that ProcessWire is equivalent to WordPress (and other regular CMSs). A shift in the discussion might help explain what the system is for, and adjust expectations for new users. It might help us in communicating with clients. And it might attract more attention for ProcessWire from the community of people looking for PHP frameworks but who tend to avoid "CMSs." Thanks, Matthew2 points
-
I have the same conflict right now for my current project. HTML5 boilerplate suggest just sticking to sans-serif, not specifying a font at all. The vision behind it is simple but clever. (maybe I go this route) Not assigning a font and let the system decide what font renders best. It's logical because the people who build the operating system did lot of font research.2 points
-
It's a bit late to suggest this, but I'd like to seriously question if we really need Arimo. What's it's greatest benefit here? Is it more usable, readable etc. when compared to "web-safe" alternatives or is it purely a visual thing? Personally I can't see anything being so great about it, not even that visual part, but what I can see is a pile of issues. I prefer my fonts to load fast and be readable, that's all, and at the moment I feel that neither of those has improved (quite the opposite really) in this new admin theme. To summarize this, it just seems questionable to me if Arimo is really worth it. I can't see any real benefits, but then again, I'm not the typography guru here either (Note: having to rely on a very slow mobile connection for a while has definitely affected my opinion, as you can see from the attached screenshot. That's not even funny anymore and I've been seeing it a lot lately. Not saying that it's a typical situation, but it's not unheard of either.)2 points
-
Its a nice little bit of real life: "Hey, information? I lost my socks." "They are behind the sofa" "Thanks." With data, there should always be the equivalent of "behind the sofa" somewhere.2 points
-
If the problem happens when using the admin panel on mobile (and actually almost 1Mb of custom fonts looks too much to load for me too...) why not simply use media queries to disable custom fonts on mobile? With Sass: $mobile: 320px; // or tablet screen sizes too @media screen and (max-width: $mobile) { font-family: "Helvetica, Arial, sans-serif"; }; // Then Arimo for other resolutions1 point
-
!!! thank you so much !!! didn't knew that it was an html thing...1 point
-
Martijn, I actually prefer that to the helvetica/arial stack1 point
-
Thanks - looks like it was a module I had running which slides through images. I've uninstalled it and although not very pretty now at least avast lets it through again. Needs converting to PW any how!1 point
-
1 point
-
I see ProcessWire as a system that you build things on top of, and that's the purpose of it. You don't download ProcessWire to start publishing content in 5 minutes (even if you can), but rather to build a site or application. So ProcessWire is much more of a tool to accomplish some end means, rather than the end means itself. ProcessWire and WordPress are completely different animals in this area (opposites really), and I think it helps to explain why you can't assume that WordPress and ProcessWire would be considered in the same light via the GPL. I think the GPL is flexible enough to handle both. That's not to say we might not switch to MIT in the future, just to avoid even having to talk about it. But I prefer to stick with GPL at this time. When it comes to my own commercial modules, I still consider them open source for the users that have them, and any fees paid are for access to and support of the product. The 1-year timeline applies only to support. You can continue using the products as long as you'd like.1 point
-
i don't think there is a way to change things to accommodate your complaint; each element has is dependencies, you'll get used to it... have you looked at information architecture and database design? i always plan out on paper the structure of the site before making fields, templates etc.. oh and another pointer - make sure your data and admin structure is really stable before you write any front-end markup1 point
-
There are a couple of ways to accomplish this from creating your own inputfield to using templates. This is how I would do this. You create a template called 'donations' (/donations/) and a template called 'donation' (/donations/donation). You create a called 'donations'. You add the donations fieldtype to the user template - be sure to enable "Show system templates" in the filter option above the templates in the admin. Now you can create a donation through the API: // Create a new donation page $donation = new Page(); $donation->parent = $pages->get("/donations/"); $donation->title = "Some random title"; $donation->amount = 10; // Or any number $donation->save(); // Assuming the right user is logged in $user->donations->add($donation); $user->save(); And it is saved in the Page fieldtype with the users. As a reference see the excellent cheatsheet by Soma and Ryan. You sure need some code for a user to login, to process the donation itself, bit this gives a basic example of how to save through the API. Note: this is all written in the browser so it might generate some error.1 point
-
Part of the goal with rich text editors (and LMLs even more) is to place limitations upon the input in order to maintain quality and consistency. ProcessWire's TinyMCE and CKEditor come configured to focus purely on portable and semantic markup. Once you start introducing non-semantic things in the markup like inline styles, colors, arbitrary font sizes, etc., then your content is no longer semantic or portable. It becomes essentially anchored to your current site design (if you are even that lucky with the client). You'd likely have to go back and make edits to all those fields the next time the site is redesigned. An even bigger problem is that when you give clients the tools to do these kinds of things, they start to get creative and think of it as an art project. But they blame you 1-2 years later when their site no longer looks professional. CMS control of style in text output ensures degradation of consistency and quality of output over time. For these reasons, you usually want to keep your content management tools (and especially rich text editors) focused purely on semantics of content, and as far from style as possible. This is one reason why I think front-end inline editors are a bad practice, as they keep the focus off the semantics of the content and on the subjective aspects of how it fits the area. Let all the style aspects be handled the site designers, in your front-end CSS stylesheets that accompany the site's design. If you still want to inject style, Hanna code is not a bad way to go because it does at least introduce some separation of concerns. It still leaves the content semantic, even if the underlying Hanna code isn't. If the site is for your own use and you are okay with the compromises, then both TinyMCE and CKEditor can be configured to let you do nearly anything you want. I'm not an expert on how to configure them that way, but if you look at the demos at either site, they have "all options enabled" configurations you can see and these configuration options can be duplicated in PW. Lastly, a plain textarea field (no rich text editor) on it's own also works well for just regular HTML input. This is what I use when I do need something that lets me copy and paste HTML directly, though it's something I'd only do on a site where I'm the only admin/editor (at least for that particular field).1 point
-
Dear Ryan, Please accept my appreciation on the system that you have created. Processwire is amazing. We were planning to redesign and make our Film Magazine more attractive and easy to manage, especially as it was run by a very short staff. We had been lagging behind in deadlines with each issue. We started the process about 5 months ago, when I started searching for the most suitable system to trust the work to. I have been a wordpress developer for sometime, but I did not want to take that path, frankly very annoyed with the huge amount of mostly defunct and dead plugins and other things that makes it tedious to run a website for a developer ( those are just my thoughts ). The process was gradual, and I was tremendously impressed by the conciseness of the entire Processwire system and the support forums, suffice it to say that, I did not have to ask any questions in the forums to work things out, the answers were all there. This is the first forum post that I am writing and this is after the job has been completed. I invite the community and especially Ryan to please have a look at the Magazine, its available here: PROJECTORHEAD Although it is still a work in progress, but we feel glad to release the magazine with the new issue. The magazine has been in existence for more than 2 years and this is the ninth issue. The blog section on the website is still running wordpress. I would love to hear feedback about the website, both in terms of content and design, and ideas about making it more reader friendly. We present this magazine to the community. Thank you. Suraj Prasad Web-Architect PROJECTORHEAD1 point
-
No the syntax is right, just the logic is wrong and will never be both "false" it's a double or false trap. Just use PW way if (!$page->is("id=1001|1003")){ echo "block"; }1 point
-
Killed me. Dead. Perhaps you could also list the first 20, then "load more" via ajax on request. Also... Welcome Seb!1 point
-
I have just pushed a new version of the module that supports "Load" rather than "Redirect" so the url that is entered which includes the 4 digit page ID will stay in the browser address bar. Not sure if this will suit your needs or not, but it was an easy addition so I thought I'd add it anyways.1 point
-
Hi! I'm no php expert but I thought I should share my way of redirecting URLs from my old site setup. I'm going to use Drupal urls in this example, but should work for any url. I can't guarantee this is the best way of doing it, so please feel free to correct me if you have feedback regarding security, speed or similar. Step 1: Make sure that each page in PW has some kind of connection to its previous URL so it can recognize when a redirect needs to be done. I'm going to use the node id:s and taxonomy id:s that my pages had when they were located in Drupal. I've made sure to save them all into each processwire page in a field called "drupal_id". Maybe you could just save the old URL in a field when migrating and use that, as an alternative. Step 2: Open head.inc and add this to the very top: $thisurl = $sanitizer->url("http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"); // Check if the URL reminds you of the old url scheme if (preg_match("/com\/\?q=/", $thisurl)){ // if it looks like a node url if (preg_match("/\?q=node\/[0-9]*/", $thisurl, $nodeslug)){ $oldnid = preg_replace("/\?q=node\//", "", $nodeslug[0]); if ($match = $pages->get("drupal_id={$oldnid}")){ $session->redirect($match->httpUrl); } else { $session->redirect($config->urls->root); } // If it's a taxonomy url } elseif (preg_match("/\?q=taxonomy\/term\/[0-9]*/", $thisurl, $taxonomyslug)) { $oldtid = preg_replace("/\?q=taxonomy\/term\//", "", $taxonomyslug[0]); if ($match = $pages->get("drupal_id={$oldtid}")){ $session->redirect($match->httpUrl); } else { $session->redirect($config->urls->root); } } else { $session->redirect($config->urls->root); } } Regex is used to find URL schemes and extract drupal nids and tids from the url. These are then looked up using the api, only to return the new url. Each time the url redirect fails, it might be suitable presenting a warning to the user. I've added something like $session->message("This URL seems to have changed. Please use the search if you didn't find what you were looking for") on the line before redirect (not part of the code example above, for simplicity's sake). Hope this can be useful for someone else, too. And again, feel free to leave feedback! I'm here to learn, too1 point
-
Hello Everyone, Thanks Soma! My reason for asking is because, except for a handful of actions, I have been able to replicate everything I was doing with CodeIgniter/Laravel here in ProcessWire. Actually, on the Laravel forums there are two related discussions about this. If you haven't seen them already, go here: http://forums.larave...id=21881#p21881 http://forums.larave...?pid=4627#p4627 There is also this: https://twitter.com/...018610362232832 I find this significant for a couple of reasons. First, because there have always been three branches of Web development for me: 1. Pure and Naked PHP 2. Fully-Baked CMS 3. PHP Framework I'm being a bit colorful, but I think you all know what I mean by "pure and naked" and "fully-baked." Of course, there are CMSs built with frameworks, but I had never found one that maintained the total freedom of the framework while also providing the crucial "engine" of a CMS without making too many assumptions. I know a few that come close. ProcessWire is the only one I have found (and I have tested a very long list of CMSs and framework-based CMSs). The "fully-baked" CMSs are not worth comparing really. If people in the Laravel community are recognizing that ProcessWire does the framework-based stuff really well, and also gives you those CMS functions every project needs, it's a big story. Thanks, Matthew1 point