Leaderboard
Popular Content
Showing content with the highest reputation on 11/27/2014 in all areas
-
I have been doing some research recently on a whole bunch of web design agencies around the UK to try and bring myself up to date with latest prices, practices and offerings from the competition. The results from my research show that at least 75 percent of the web design companies don't actually design any websites from scratch or barely design them at all. This percentage of 75 percent came from the sites they built that I could actually see were using templates or themes by various means by looking at their code or name of wordpress theme etc.., so the percentage of websites actually built from templates or themes could be much higher. This kind of shook me a little and made me realise how these agencies can offer such low prices. Something I have been struggling to do. One of the main things that stood out for me was that these web designers / agencies were calling their service 'Custom design'. That got me thinking what does it actually mean custom design? Then I noticed that a few of the agencies that were actually creating their designs from scratch often only named their service 'Bespoke design'. So I asked myself a few questions: What is the difference between custom and bespoke design and do clients really care? My experience has shown me that most clients don't seem to care any more if their website is built from a template/theme or not. Is it correct to call a customised template(adapted for the client) a 'custom design'? Where do you draw the line or difference between a custom and Bespoke design? In this fast changing world of web development I know we need to adapt or die and I now see that templates will have to play a much larger part in my work going forward if I am going to survive and compete with others as building and designing a bespoke design(from scratch) takes much longer than my current potential clients seem willing to pay.6 points
-
This is the way I use to integrate both worlds together. 1.- _header.php ( or whatever is called the file that contains your <body> tag ) <head> ... <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.2/angular.min.js"></script> <script>var app = angular.module('myApp', [])</script> </head> <body ng-app="myApp"> ... 2.- yourTemplate.php <script> app.controller('myCtrl', function ($scope) { $scope.myvar = []; $scope.myvar = <?=getChildren("template=yourtemplatename")?>; console.debug("my Object form php",$scope.myvar); }); </script> <!-- now $scope.myvar is accesible --> <div ng-controller="myCtrl"> </div> 3.- getChildren is a function that I include in _func.php function getChildren($pageId) { $pagina = wire('pages')->get($pageId); // fields to be avoided $avoid = array("FieldtypeFieldsetOpen", "FieldtypeFieldsetClose","FieldtypeFieldsetTabOpen","FieldtypeFieldsetTabClose"); // fields that must be returned $wanted = $fields; // selector $paginas = $pagina->find($selector); $arr = array(); foreach ($paginas as $child) { $array = array(); foreach($child->fields as $field) { $array['id'] = $child->id; // if we dont' want all fields back if ( !in_array($field->type, $avoid) && in_array($field->name, $wanted) && (count($wanted)>0) ) { $array[$field->name] = htmlspecialchars($child->get($field->name)); } // we want all fields back if ( !in_array($field->type, $avoid) && (count($wanted)==0) ) { $array[$field->name] = htmlspecialchars($child->get($field->name)); } } array_push($arr, $array); } echo json_encode($arr); }6 points
-
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).5 points
-
Here's one way to do it.. Create a folder 'tmp' in you /site/ directory. Copy your images in there. Careful if your images are huge in size! You might run out of memory... Run the following code in one of your template files...(this code could be further optimised..but you get the idea...) $p = $pages->get(1419);//page where we want to save our images //absolute path to a directory called 'tmp' within the site folder where we have our images $dir = $config->paths->site . 'tmp'; //if we found the directory (here we use Standard PHP Library (SPL)) if (is_dir($dir)) { $directory = new RecursiveDirectoryIterator($dir, FilesystemIterator::SKIP_DOTS); //iterate through each file in this directory foreach ($directory as $path ) { set_time_limit(30);//we try to avoid timing out //Remove and delete invalid file types $validImagesExts = array('jpg', 'png', 'gif', 'jpeg'); if($path->isFile() && !in_array($path->getExtension(), $validImagesExts)) { unlink($path);//we delete the invalid file continue; } //if valid image file we save it to the page if($path->isFile()) { $p->of(false);//output formatting off $p->images_field->add($dir . '/' . $path->getFilename()); $p->save(); } }//end foreach $p->of(true);//output formatting on }//end if (is_dir($dir))) else echo 'No Such Directory Found!';5 points
-
Thx guys. I went with Adrians idea. Once the form is filled a new page is created via the API (man this is so easy in PW, love this API !), a zip file is added for download, and the administrator gets an email to advise a new resource has been submitted. Works really nicely, stoked with result. Cheers for the advise. I was tempted to email the resources as attachments but I personally hate having massive attachments bogging down my email client. Also, depending on the email client it's often easier to extract a zip of ten files than have to extract the files from an email.4 points
-
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.3 points
-
Template files, by default, need to be in the templates directory, not a subdirectory. But that does not mean you cannot include files from other directories. I don't know what design differences you will make, but assuming that you have detected what device you are on (kiosk or other would be the best starting point), then just serve up the portion of the template that you need. You could either use php to include another page (which could be in any directory for your organisational purposes - there is no technical reason for it to be anywhere particular) or just divide the page up and serve up only a portion. For simplicity, I would probably go for the first. So, for the home page, for instance, you have a template called home.php The only code in this template would effectively say <?php // some detection stuff resulting in getting a $kiosk value - I have no idea what! if($kiosk){ include(./kiosk/home.inc); } else { include(./web/home.inc); All your templates would basically have the same code. The .inc files would then contain everything your normal template file would. Something like that.3 points
-
Hi i would like to share with you guys, a website i made thx to Processwire. Im super happy with processwire and this community. Ty for help everyone. here is the site: chemik-police.com2 points
-
<ot>Now that's unfair...I have given you 2 likes in the space of 30 minutes; one for 'being wrong' (which is rare in itself) and one for 'laughing' </ot>2 points
-
2 points
-
2 points
-
2 points
-
I have the previous model of the Dell monitor you described in your first post (Dell U2711). The viewing angel and colors are great. Even for amateur photography. I've never calibrated the display with a tool like the spyder but the printed results don't look different than the file on the monitor. I think a DELL monitor isn't a bad choice. Overall, most modern displays are great (having IPS, good colors) compared to the flat screens from five years ago. Buy one of those DELL 27" and try to get a hand on one of those spyder tools. You'll be fine and like all the pixels you can use:) You could also think about 4K, but the market is changing quickly here and the Windows support for such HiDPI displays isn't as great as on Mac (IMHO) My next monitor would be an Asus PB287Q but I'm holding my money for cheaper IPS 4K monitors with HDMI2.2 points
-
There's a option to set a PageArray as the root page https://github.com/somatonic/MarkupSimpleNavigation#build-a-menu-using-a-pagearray-instead-of-a-single-root-page So you could very well create a top level menu with a multiple page select using asm select for input so you could sort them. Or get the top level pages and then append or insert a page $items = $pages->get("/")->children(); $other_item = $pages->get(1234); if($other_item->id) $items->append(); echo $treeMenu->render(null, null, $items);2 points
-
Am I the only one who still prefers matte screens? I paid extra for one in my 2011 MacBook Pro and still have a Dell FP2407 (which is matte), but I am looking to upgrade my external to a 4K monitor to ease the strain on these aging eyes. That monitor has served me well, but it is now suffering from burn-in / ghosting. I haven't researched hard yet, but would love to know if anyone finds a decent quality 4K screen without the glass, or has some inside information on how to avoid the horrible reflections. I hear that Apple Retina displays have less reflection, but I still think it's annoying.2 points
-
In addition to @adrian: I would create a page and save all uploaded files to it. Then I would send an email to the user via WireMail and an SMTP extension of it! This way you or your client have control over the email account. (< regarding false spam detection) The rest depends on the client, if he would like to get all files right with the mail, I would send copies this to him. At least with the WireMailSMTP this is doable out of the box and works like a charm! (shameless, I know!) You can make this configurable for your client. e.g. if he has normal workdays he can tip a checkbox somewhere on his personal boss-settings page to get all files as attachments with the emails. If he want go for holiday he untip the box and only get notifications without attachments (to his handy!) Don't forget to offer this to him as a premium feature!2 points
-
Very nice site. One thing I noticed is that scrolling is pretty sloppy. You should consider watching this video and applying the techniques used there. I just opened up dev tools and did some "translateZ magic" and got huge performance wins from it.2 points
-
Introducing ProcessWire ProFields: Table – it lets you literally define your own Fieldtype! This is one of the most exciting ProFields and it's something very different than any other Fieldtypes. I think it is best described by this screencast (be sure your sound is on): Special thanks to Joss for his great voiceover on this screencast. Please view the video at 720p and full screen if possible. Read more about the Table Field Table is part of the ProcessWire ProFields package now available for purchase in the ProcessWire store.1 point
-
Template Cache and $page->render($options) If you ever use the $page->render() to render out partials (of another page using its template file) and use template cache for the pages you're going to render and the page where you render it, it will create a cachefile. So if you go to that previously rendered and cached page, it will render that partial. If the page is accessed before a cache is created, it will cache this one and render that in as the partial, so kinda turned around. Funny effect. And many mmms and oaaahhhs To get a better understanding what's happening read on. Simple example code from a list page to render partials of articles (likely) // from the list pages template $markup = ''; foreach($products as $key => $child) { $markup .= "<dl>"; $markup .= $child->render(array('isOverview' => true, 'class' => $class)); $markup .= "</dl>"; } echo $markup; And in the template of the article // in article template file if(isset($options['isOverview']) && $options['isOverview'] == true) { // render small partial $class = $options['class']; $markup = "<dd class='$class'> <h4>$page->title</h4> <p>$page->summary</p> <a href='$page->url'>details</a> </dd>"; } else { // render complete article $markup = "<div class='product-details'> <h1>$page->title</h1> $page->body </div>"; } // output echo $markup; So now the render call $markup .= $child->render( array('isOverview' => true, 'class' => $class) ); in the list template will cache the page it renders (the small view of it). Thus if you access the page directly it will serve the cached small view of it. Ups. Solutions This is without specifying a different template file in the first argument in the render(). The effect doesn't happen when you, let's say create a new template file (ie article-small.php) and use that to render the page. Since this new template file is not connected to the template in PW it also has no cache for that render. To show what I mean is the following with the first argument the file you want the view to render. $markup .= $child->render("product-small.php", array("isOverview" => true, "class" => $class)); Still following me? Ok there's also another method to not allow a cache file to be created. There's a default options set in the render() in PW. Bingo! allowCache is what we can also use. $markup .= $child->render("product-small.php", array( "allowCache" => false, "isOverview" => true, "class" => $class )); And everything's back to normal. Just wanted to write down a little thing, as I stumbled over this recently, to scatter some keywords about this here . I think this isn't really documented somewhere but I thought it was maybe mentioned by Ryan in a thread about when he added this feature: http://processwire.com/talk/topic/3145-multiple-views-for-templates/page-2?hl=%2Brender+%2Bcaller#entry32876. Edit: Zaaakkkk and it's in Google 9 minutes !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
-
It's all here: http://processwire.com/api/variables/config/ $config->urls->abc return http paths; $config->paths->abc return absolute ones1 point
-
This $dir = $config->paths->site . 'templates' . '/' . 'bxsliderpics'; Can be changed to this $dir = $config->paths->templates . 'bxsliderpics';1 point
-
I have bxSlider finally working. My mistake was in the path to the directory bxsliderpics that holds the pictures. It has to be like this: $dir = $config->paths->site . 'templates' . '/' . 'bxsliderpics'; Also I did not have the single quotes and double quotes right Martijns example does work: echo "<img src='{$config->urls->templates}bxsliderpics/{$file}'>"; Here is the complete code with bxSlider now working: <div class="block-group"> <div class="bxsliderbox block"> <div class="slideshow"> <ul class="bxslider"> <?php $dir = $config->paths->site . 'templates' . '/' . 'bxsliderpics'; if ($handle = opendir($dir)) { while (($file = readdir($handle)) !== false){ if (strpos($file, '.') === 0) continue; // <-- add this thanks to Martijn echo '<li>'; echo "<img src='{$config->urls->templates}bxsliderpics/{$file}'>"; echo '</li>'; } closedir($handle); } ?> </ul> </div> </div> </div> Thanks everybody for posting. I can now upload many pictures and have them show up in bxSlider without using the backend. Too many pictures will take a lot of time to show up in the browser and render the browser unstable when having them in a "page" with an image field. But this way no problem.1 point
-
ROFL. (some text to get around posting guidance legals and says something meaningful)1 point
-
Some enlightenment (damn difficult word) tea from Soma would also help!1 point
-
Pffffff ah, yes correct, wasn't this ever different? Hm guess not lol. I must have been dreaming or experienced something else way back in the early days. Maybe it's just not reading the f***** description as the label doesn't suggest so: "Vorschaubilder im Seiten-Editor anzeigen?"1 point
-
You are not talking about the options tab where you can choose between Thumbnails and FullsizeImages, ?? I think it is not of any help for pwired to wait for 160 fullsize images get loaded instead of 160 thumbnails.1 point
-
Maybe it's just me but I don't understand your question Page Field: What page field is this? Are you referring to an actual Field of the type Page? Instead of the number: What number is this? Is this an ID? A count? admin Page List: Are you talking about the Page Tree that in the admin that shows a list of your site's pages? Or are you talking about a list of pages selected in a Page Field that is visible when you editing a page using a template that has that Page Field? A screenshot would help1 point
-
1 point
-
I selected the companies through several sources such as search engines and yell.com and all web designers / agencies local to me from South west england to south wales including cardiff and other scattered areas of the UK. Some of my research also included US companies including a larger range around the Chicago area. There is a similar pattern. Yes, many of them were Wordpress themes which are much easier to work out if they are built from a theme or not. Many of those that use themes / templates are quite large companies and the description is most often custom design. They often purchase packages such as woothemes for wordpress with a variety of themes to choose from or of course use themes from themeforest It really seems to be common practice and just looking around at the prices there is no other way that they could charge such a low price than to use a theme or template as a base. This is the reality I am finding that I am coming up against. The thing is these themes / templates are quite impressive and very customisable so they don't always look the same so can in a sense can become more of a real custom theme. I have asked around recently to quite a few people and most reply me the same with that they don't mind that if it is based on a template as long as it works, looks good and does the job. I was thinking the same way and still do in a way but my perception of what custom means is starting to change slightly but the term Custom does seem to be often loosely or cleverly used and this is where confusion comes in and whereby the separating of the terms custom and bespoke seems to make sense and is already being applied by web designers and agencies even if in one way they seem to be the same thing. There is also a thin line sometimes between what is a totally original piece of work or a rearranged template or collected design elements from a framework. Thinking about it now, I suppose how many people buy a totally uniquely designed car? Maybe change the colour, leather seats, some changes in the interior etc...becomes customised. Custom BMW My friend purchased a custom camper. Pretty much the same as the others with a few modifications and furniture moved around to specifications. 'Custom Camper'. Looking up the terms bespoke and custom I found the following on one blog custom menswear and trends : Bespoke It means a suit that has “been spoken for”. Bespoke is when one tailor creates a suit from scratch for one person. This usually takes multiple fittings as the pattern is drafted directly on the person. This art arises from Savile Row (UK) and is the most traditional way a suit is made. Custom Made is a very forgiving term that can be used to describe anything that has been tweaked to fit you based on your measurements and style options. When this term is used, it can mean a variety of things or a combination of methods. The above seems to be the way that most agencies from what I have seen are using the terms. I found one website that offers customised websites(Powerful Custom Website) & Bespoke Websites with 2 different descriptions of what they are explained quite clearly. Links to the pages below: Custom Design Bespoke web design As he shows on his website, the designs can look quite different. I think he is using designmodo, which just looking has a black Friday 70% off sale I think that things are moving so fast that templates and themes are combining into all in one theme/template/frameworks. Many wordpress & bootstrap theme/templates come with many elements & components that can be moved and changed to make a more customised website. I think that the lines are getting increasingly blurred between what is custom, bespoke or just rearranging some elements / components and colours on a page to suit the clients specifications. just edited the links above as they were pointing to wrong page.1 point
-
1 point
-
Welcome to the 24H economy where everything must go faster and cheaper where everything becomes targets, assets and numbers expressed in money. Anyway there is always a new door you can open on the internet and step in with pw or something else, space is endless there.1 point
-
I just ran into some issues as well with several javascript errors like "setupLanguageTabs is not defined". Looks like I had an old "templates-admin" folder in my /site/ folder. Deleting this fixed my issues.1 point
-
@Soma got a few other tips from the code. Thank you.1 point
-
What a wonderful world of advice - this should be archived somewhere! Eventually I will get my personal site back up and then I must reprint some of these threads on there. Eventually......1 point
-
have a look to the examples of readdir especially the #2. And regarding the long page load in admin with many images, you may also use a InputfieldFile. This way you can use API but without waiting for 160 images to load there thumbnails.1 point
-
if ($handle = opendir($dir)) { while (($file = readdir($handle)) !== false) { if (strpos($file, '.') === 0) continue; // <-- add this echo '<li>'; echo '<img src="' . $dir . $file . '" />'; echo '</li>'; } ..... etc.... There's nothing wrong with the code, it's just how folders work.You could use strpos($file)as there's no need to include any files starting with a dot...1 point
-
This is a good source for a first step into "calibrating" a monitor, though obviously it has got nothing to do with real calibration yellowled was mentioning. But as an easy, pragmatical first step it might be helpful: http://www.lagom.nl/lcd-test/1 point
-
As for calibration – it probably won't satisfy the needs of a photographer, but I got myself a Spyder 4 Express a few months ago (got it on sale, too). I have a (rather crappy, cheap) monitor here which is for my (rarely used) Windows machine, but I also use it as an external display for my MacBook every now and again because the MBAs display only goes to 1440x900. Boy, did using that tiny thing improve the colors on the old Samsung display. And it's incredibly easy to use as well. I probably wouldn't have spent money on that if the Samsung didn't for some weird reasons have really bad colors ex works. (And I would never want to adjust a monitor without it ever again.) That being said, I'm with apeisa here. If you're getting it for yourself, fine. Nothing wrong with that. But if you mean to “simulate” how people view the sites we build, you're probably better off with a cheap, crappy display that's not adjusted very well …1 point
-
A lot of the glare factor is the room environment. My previous office was a basement which made it simple to control the light level and glare. We now have a new house. My office looks out on water with six windows/door glass panels. The afternoon sun hitting the water made it really tough to work. I had to get white roll up contrast control screens that you can see through but the glare is greatly controlled. It made a huge difference. I still like the matte displays as well.1 point
-
@Guy Verville, I played a lot with Shop-for-Processwire with PW 2.5.7 dev without any issues.1 point
-
1 point
-
Yep that is what it does and yes that's a bad name. Logo was just a name to explain the method the best I guess.1 point
-
I don´t know if this if off topic but here´s a request for tut plus. So they make a course on processwire. https://tutsplus.uservoice.com/forums/248750-suggest-a-tuts-course/suggestions/6769150-using-processwire-for-web-development1 point
-
API to the rescue foreach(array("basic-page","home") as $tn) { //list your required templates out in the array $t = $templates->get($tn); $t->editRoles = array(1043); // where number is the ID of the role you want to assign $t->save(); }1 point
-
I have done something similar, but rather than email the client the uploaded resources, the email just contains a link to the automatically created PW page with the uploaded resources. Be sure to make the page unavailable to guest users. When they view this page they see a list of available resources, each with their own download link, as well as a zip download button which zips all the files on-the-fly into one downloadable zip. This way, the files are always available on the server, you are not emailing huge files, and you are not relying on a 3rd party service. Hope that helps a little!1 point
-
yeah but a little api magic can cure that.. open up your tools or api playground and: $pp = $pages->get(1234); // page you're adding the children to the page table foreach($pp->children as $child) { $pp->page_table_field->add($child); }1 point
-
Creating a new "english" language and it is english already. No need for translation as core is already english. 1. You can set the url segment if you wish to be whatever on the home (root) page name if LanguagePageNames is installed. Usually it's a good approach to have the default language have no segment. But that's up to you. 2. I don't understand what you're saying really. Default german -> has language files, secondary english -> doesn't need language files. 3. You can have both. But again I don't understand what you're saying or what the problem is you have there.1 point
-
1 point
-
that reminds me of a game on the good old amiga 500: F/A-18 Interceptor...i started from a aircraft carrier and i flew with maximum speed through the golden gate bridge...1 point