Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 11/05/2015 in all areas

  1. Here are some links to keep you busy amigo! In no particular order: grunt-gulp-something-else menu-builder making-pw-more-userfriendly fieldtype-matrix process-blog tutorial-approaches-to-categorising-site-content product-catalog-with-a-twist Basic_Website_Tutorial grouped-forum-posts-links-articles-tutorials-code-snippets writing-from-front-end-to-back-end integrating-a-member-visitor-login-form Creating Pages via API Tutorial: Approaches to categorising site content Create simple forms using API Creating Pages via API Developer centric form processor galleries-short-and-long Markup Simple Navigation multilevel-menu dropdown-menu responsive-vs-adaptive-pw-approach processwire-as-backend-for-android processwire-on-nginx what-filesfolders-should-be-added-to-gitignore-for-regular-development continuous-integration-of-field-and-template-changes tutorials: hello-worlds process-google-analytics
    5 points
  2. Helllllo! I am working on a simple module / pet project for a module that inserts custom classes into specific templates for forms that are generated via the api. I use bootstrap a bunch and am always messing with the defaults in processwire, now it should be a simple manner to tweak my settings in the admin area. As this seems to be something that I keep needing I thought that others might as well. Right now the functionality is pretty simple: Select the templates that you want to override the default styling on. Set your new defaults .... Proffit. What I would like is maybe some suggestions for options or functionality that I should try for. I have never really deep dived into modules so this is a bit new to me, but as I am looking for a new development job I would push myself for something cool. https://github.com/MuchDevelopment/FormStyler/tree/master
    3 points
  3. Update version 1.0.4 (Dev only for now) Note: Haven't had time to update README Changes Import Mode for file/copy-pasted CSV: Two options, 'append' and 'overwrite'. Default setting set in Field's Details tab. The setting can be overridden at page-edit level. Default setting is append (sorry guys, you will have to inform your clients of the changes. The prospect of data loss inherent in the overwrite mode outweighed the inconvenience of re-teaching your clients about the new default append mode). Append: In this mode, the module will look for the last available empty/blank row in the matrix. If it finds one, imported rows will be inserted from that point forward. Any subsequent rows (i.e. rows beneath that 'last blank row') will be overwritten. Any rows above the 'last blank row' will have their values preserved (untouched). When in append mode, the 'last blank row' will always be highlighted. The modules (jQuery) monitors any live changes to the table rows (typing and clear data) and the highlight will shift accordingly if the 'last blank row' changes. If there is no 'last blank row' and you attempt to save in this mode, you will get an PW error message and your older values will be preserved in the matrix. Used wisely, append can actually mimic an insert. Btw, for an empty matrix, append doesn't make much sense since data will only be inserted in the very last row of the matrix . Overwrite: What was the default behaviour; incoming values overwrite existing values. Ignore first row and/or column: Default set independently at Field setting (i.e. can ignore one but not the other if you wish). Default is ignore both first row and column. Both settings can be independently by-passed at page-edit level. In real world examples, first rows usually store column headers/labels and first columns usually store row headers/labels. Export checked rows: You can now export only the rows you want by checking them. If nothing is checked and you attempt to export you will get a JS error alert. The 'set range to export' setting became redundant and I removed it. Shift + Click enables the selection of a range of rows. The checkbox for toggling select all still works. Lots of code re-factoring Thanks to @adrian for suggesting all of the above features . Please test and let me know. I think I have given this module enough love for now. MenuBuilder has refused to talk to me until the situation improves. So, for now, there's a feature freeze on this one and let's see if I can get MenuBuilder to smile again .
    3 points
  4. Both ready.php and init.php are not loaded in 2.2.17 Upgrading is not possible at the moment due to several reasons. 1st) the site is hosted on a dedicated server and upgrading PHP might jeopardise the working of the other sites on the server. 2nd) in version 2.2.17 multi language was not integrated in the core yet, altough the client wanted a multi language site, so its build in manualy. I'm worried that upgrading to a newer version of PW, the manualy build multi-language functionality might stop to work. Thanks all for the suggestions and pointing in the right direction. I came up with a simple module that sets the template folder to /site/templates-dev/ for all superusers. class DevelopmentTemplates extends WireData implements Module { /** * getModuleInfo is a module required by all modules to tell ProcessWire about them * * @return array * */ public static function getModuleInfo() { return array( 'title' => 'Development Templates', 'version' => 001, 'summary' => 'Overrules the config templates folder for development purpouses', 'href' => 'http://www.processwire.com', 'singular' => true, 'autoload' => true, ); } /** * Initialize the module * */ public function init() { if (!$this->user->isSuperuser()) return; $this->addHookBefore('Page::render', $this, 'setDevTpl'); } public function setDevTpl($event) { $page = $event->object; if ($page->template == 'admin') return; $config = wire('config'); $config->urls->templates = 'site/templates-dev/'; $config->paths->templates = $config->paths->root . 'site/templates-dev/'; $config->debug = true; } } Note: only need this on older versions of PW, in my case 2.2.17. For newer PW versions use the following method as described on ProcessWire Recipes where you coudl use if($user->isSuperuser()) https://processwire-recipes.com/recipes/use-different-sets-of-template-files/
    3 points
  5. Looking a bit at the request and response headers of that site, the only thing i can think of that is causing this problem is Cloudflare, which seems to play a role. Is this somehow turned on for the problem domains? Try turning it off? Have a look here http://stackoverflow.com/questions/25927260/cloudflare-bug-random-302-redirections , these look a lot like your random 5 character folders.
    3 points
  6. I had this kind of issue with cached navigation (one for desktop, one for mobile = mmenu), and wanted to make sure the database cache is removed as soon i save one of the pages displayed in the navigation. I came up with a module that hooks in to page save. It removes the necessary cache items asfollow: - when pages with template settings_socialmedia or settings_textblocks are saved it removes the main.footer cache entry - when pages with template list_agenda or item_agenda are saved it removes the block.agenda cache entry - when any of the pages in $navigationPages are saved it removes both the man.navbar and main.mmenu cache entries <?php /** * ProcessWire Save Actions * * Actions to be run on page save * * @ 2015 Raymond Geerts * * ProcessWire 2.x * Copyright (C) 2014 by Ryan Cramer * Licensed under GNU/GPL v2, see LICENSE.TXT * * http://processwire.com * */ class SaveActions extends WireData implements Module { /** * Return information about this module (required) * */ public static function getModuleInfo() { return array( 'title' => 'Save Actions', 'summary' => 'Actions to be run on page save', 'version' => 1, 'autoload' => "template=admin", 'singular' => true, 'author' => 'Raymond Geerts', 'icon' => 'floppy-o' ); } public function init() { $this->pages->addHookAfter('save', $this, 'actionsAfterSave'); } public function actionsAfterSave($event) { $page = $event->arguments[0]; if ($page->template == 'settings_socialmedia' || $page->template == 'settings_textblocks' ) { $this->cache->delete("main.footer"); $this->message("Cleaned WireCache for front-end footer HTML"); } elseif ($page->template == 'list_agenda' || $page->template == 'item_agenda' ) { $this->cache->delete("block.agenda"); $this->message("Cleaned WireCache for front-end agenda block HTML"); } else { $homepage = $this->pages->get('/'); $navigationPages = $homepage->and($homepage->children); foreach($homepage->and($homepage->children) as $item) { if ($item->template->altFilename == "clickthrough" && $item->hasChildren() ) { $navigationPages->append($item->children); } } if ($navigationPages->has($page)) { $this->cache->delete("main.navbar"); $this->cache->delete("main.mmenu"); $this->message("Cleaned WireCache for front-end navbar HTML"); } } } } It saved some page-loading time when caching navigations. Because they are displayed on every page, its a smart thing to do. A trick to make the current page (and parents) have a selected / active class i did the following: in the head of the _main.php <script> var globalJS = <?php $globalJS = array(); $globalJS['parents'] = $page->parents()->remove($homepage)->append($page)->each('id'); echo json_encode($globalJS, JSON_FORCE_OBJECT); ?> </script> in the navigation i put the page ID in each <li> item like this: echo "<li id='navbar-pageID-{$item->id} role='presentation'>"; (and in mmenu as follow:) echo "<li id='mmenu-pageID-{$item->id}'>"; In my main.js file i have the following: (function() { // set navigation menu items active $.each(globalJS.parents, function(key, value){ $('#navbar-pageID-'+value).addClass('active'); $('#mmenu-pageID-'+value).addClass('current'); }); }());
    3 points
  7. I noticed that this site was featured on http://weekly.pw/. Thank you everyone who commented with your feedback, it's much appreciated. This made me very happy
    3 points
  8. It wasn't so hard in the end. I decided not to store the rank in the database, but just constructing it from the user points. I solved the problem of users with the same rank position in this way // I get the players pages and sort them by points $players = $users->find("sort=-user_points, sort=name"); // I explode the players into a scores array $scores = $players->explode("user_points"); // Using array_unique to remove duplicated scores $unique_scores = array_unique($scores); // With array_unique previous key are preserved so i need to create a new array with new keys $reindexed_scores = array_values($unique_scores); // I cycle through players foreach($players as $player) { // I get the key of the user pointe in the array $position = array_search($player->user_points, $reindexed_scores); echo $position; echo " - "; echo $player; echo " - "; echo $player->user_points; } Hope this could help someone else with the same need.
    2 points
  9. I'm assuming this is a Process module, since that's the only one that supports nav arrays. The arrays provided in your getModuleInfo (like the 'nav' array) are not called at runtime, instead they are stored in the DB. As a result, there's no reason to make those labels translatable–actually you should avoid it, otherwise the wrong language translation might end up stored in the DB. Instead, just make them regular strings like 'Enter Order' rather than __('Enter Order'). Then, somewhere else in your module, make them translatable. It can even be in a PHP comment. For instance, you could add this at the top of your module file: /* * __('Enter Order'); * __('Enter User'); * and so on... * */ These should be in your 'default' language. Make sure the phrases are identical to those in your 'nav' array. Doing this just ensures that the language parser knows they are translatable phrases. After making that change, do a Modules > Refresh, then go back and translate the file (Setup > Languages > language > your file), and save. Now it should work. If using AdminThemeReno, it won't work, unless you upgrade to the latest dev version. I just fixed that issue in AdminThemeReno yesterday actually. Since it looks like you are using Reno, you'll want to grab the latest dev branch.
    2 points
  10. Hi Raymond, The problem is that the config file is parsed by ProcessWire before the API is ready, so the user object is not yet accessible. I suppose you could create an autoload module and set/overwrite config values there, based on the user. Cheers
    2 points
  11. Ok, you did not mention that. But at least both sites seem to be working fine when i check them now. So this is a pretty strong indication that somehow Cloudlfare (or better, the way it's set up) is at the root of the problems and not some weird hack.
    2 points
  12. Okay, I have turned Cloudflare off and it seems okay - but I also tried that yesterday with no result. So, confused? You bet I am!
    2 points
  13. I'm not sure if you can access these items with the array notation, try $input->get('keyword') or $input->get->keyword. Edit: And just as I thought, only $pages and $page are available as local variables. All the other api variables need to be accessed as $this->input or wire('input').
    2 points
  14. Tom. identified you as spam, as will I. Your profile states you are from Saratoga, CA. yet you mention Alexa ranking of ProcessWire in India. Why India? I'm on to you from the get-go, as WE say in the U.S. Your Twitter username is brand new, only several days old with 3 tweets and 8 users. All of whom seem to be WordPress related. By the way, nobody from Saratoga California ends their comments with the salutation, "Cheers!" It's not rad enough!
    2 points
  15. 2 points
  16. 2 points
  17. I actually registered back in January but then proceeded to bounce around CMSs, then went back to wp because it's just so easy to find and activate a plugin. Now I have a multisite with ummm, 40+ plugins and a highly functional theme. I cringe on every update. I even have a couple I can't update because I had to tweak them. Lucky for me, there's a plugin to prevent other plugins from being updated accidently. Time for some sanity and some learning. I know html/css pretty well. Last year's versions at least. php or programming in general? Not so much. Took the UK Kent Univ programming aptitude test and didn't do too bad, considering I've never taken an algebra class. I've been blue collar all my life. Electric sign fabricator for 25+ years. Large projects that took weeks. Did many high profile jobs but towards the end, no matter how fancy it was, it was boring. Time for something new. Getting too old for all the climbing, stooping, lifting and breathing toxic fumes typical of a sign shop. Inks, paint, welding etc. Likewise, getting into another blue collar field is not much of an option at 50 so I've decided web dev as my new career. Jumping into a tech career at 50. Did I say sanity? Nevermind. Winter's coming on here and I've set this winter aside for learning php and a CMS thouroughly. Or as thouroughly as I can in one season. It was going to be wp but I just can't stand the UPGRADE TO PRO atmosphere and worry it might be contagious. (there are exceptions of course as I have come across some stand up guys and gals there) I've got a lead on building a site for a small nearby city and the thought of using wp brought feelings of panic and nausea. Depending on their time frame, I may have to use a responsive html/css/js site and upgrade them to a cms later. I don't have the job yet so I'm not going to stress about it. However, I still want to get into something a little more structured yet flexible and it really comes down to ss or pw. I think they're pretty similar but pw looks to have a less steep learning curve. So here I am. I am the type of person that likes to figure things out or find things on my own but I'm sure I'll have plenty of ignorant questions. Thanks for your patience in advance, John
    1 point
  18. Have you checked the copied site using http://isit.pw/? If you update content on your client's site, is it coming up on the copied site; or is the content "as it was" at the time it was copied? Are you able to access the control panel with your known credentials? Is there a chance that the new domain is "pointing" to your client's site? It depends. If the servers are behind a load balancer or caching server, then many websites would appear to use the same IP. It would all depend on the hosting provider's configuration and DNS configuration of the domains in question.
    1 point
  19. Beautiful work! I think I might have said this just recently to some of your other new features, but it is true - this has become one of my favourite field types. Now go spend some time on some of those commercial modules you have cooking
    1 point
  20. I was about to change it on cheatsheet. But now it's because it's only a set and default is ON. Hence there's two entries in cheatsheet and not (true|false). So a $parent->setTrackChanges(false); ... $parent->setTrackChanges(); would be sufficient.
    1 point
  21. Great - just committed a new version of BCE (master branch) with those changes - thanks for figuring this out!
    1 point
  22. I would suggest it to Ryan see what he thinks. Sorry, no this is core and not BCE.
    1 point
  23. Just tried a $parent->setTrackChanges(false); $parent->addStatus(Page::statusUnpublished); $parentEditable = $parent->editable(); $parent->removeStatus(Page::statusUnpublished); $parent->setTrackChanges(true); and it wouldn't track it. I think it's something we want to hide from the track change system. What if I'm listening to page changes in my module? Edit1: I noticed recently that there's really a lot of such changes going on in PW. Only opening a page editor does change the created_users_id for example. Huh? Edit2: well I guess it's because I'm tracking every change to page object, so I guess there's maybe some way around it (using page type, template etc, and fields). But still I think such back and forth changing to archive something, those should be hidden from track changing. What you think?
    1 point
  24. Thanks for spotting Soma - it seems to come from this code: // temporarily put the parent in an unpublished status so that we can check it from // the proper context: when page-publish permission exists, a page not not editable // if a user doesn't have page-publish permission to it, even though it may still // be editable if it was unpublished. $parent->addStatus(Page::statusUnpublished); $parentEditable = $parent->editable(); $parent->removeStatus(Page::statusUnpublished); This is part of a method called getAllowedTemplatesAdd that determines whether the user is allowed to add a template to this parent. It is a modified version of this method: https://github.com/ryancramerdesign/ProcessWire/blob/cffb682836517065d7dd7acf187545a4a80f1769/wire/modules/Process/ProcessPageAdd/ProcessPageAdd.module#L191 I am not sure how to avoid this check. Do you think it is a major concern? I guess it's not ideal that there is a recorded change to a page when saved, even though there are effectively no changes. Any thoughts?
    1 point
  25. Not sure what's about that, but I tried this module and now I get on every page save I see message "Session: Change: status". Took me a while to realize it's BatchChildEditor.
    1 point
  26. I've come back to this topic myself about 3 years after having a similar need in a different thread. This code, from Tom's activity log module and altered slightly, gets both an old and new version of the page when hooking before saveReady: $clone = clone($page); $this->pages->uncache($clone); $old = $this->pages->get($clone->id); // Now just echo both the fields you are interested in: echo $old->field_of_interest . " becomes " . $page->field_of_interest; exit; On save, that should give you access to the old and new versions of the page where you want to compare just one or a few fields and you know which ones you're interested in already. Seems to simple now when you see the use of clone()
    1 point
  27. Loving what is going on here. Excited to soon see the product
    1 point
  28. To be fair, i've already set this module to be deleted 2 times, but somehow it won't delete. Better to go for other options like Kongondo's matrix field or use the Profields. There's big change that there will be Data loss when using this module as it relies heavily upon Javascript.
    1 point
  29. Hey johnstephens, How large/complex is the Textpattern site? I moved a bunch of sites a few years back, and they were all pretty simple transfers. I didn't try to write any kind of importer, I was done with the transfers manually faster than I could write the importer.
    1 point
  30. Arguing with a bottle of rum is always tricky. It may have even lead you to think you turned of Cloudflare while in fact you didn't If things remain functioning without Cloudflare feel free to mark this one as solved
    1 point
  31. Huh? Why do you Bootstrap PW, when you're already in PW?
    1 point
  32. Thanks everyone. Been reading hard here.
    1 point
  33. Love the people on here - so warmly encouraging!
    1 point
  34. Or you could build a module like MigratorWordpress: https://github.com/NicoKnoll/MigratorWordpress that gets the Textpattern content and creates JSON that can be imported into PW. While it might be a little more work to build, it would be useful for other future users coming from TextPattern.
    1 point
  35. You could always use an bootstrap script, which does connect to the Textpattern database, reads the data by mysql queries and then use the processwire api to fill those data into the pages you need.
    1 point
  36. No you can't make those changes - $config is not available in ready.php Please just try the code exactly as I had it, except for the name of the log file. Is "tfdupdates" definitely the name of the log file that you are saving, eg: $log->save('tfdupdates', 'log file content');
    1 point
  37. Since this topic popped up I have been thinking on how to help PW grow from my possibilities. I am no whizz coder, but surely I can pull off some websites and maybe some other tricks, but in the end I'm rather a designer that deals with small to mid size business demands. I try to participate as much as I can supporting users, but I find that most of the times my experience is not enough, so maybe I can put my other "stuff I know how to do" to help. PW seems to already have an experienced audience, that are migrating from other software some more complex, some from the popular systems available, but I don't really think there's much material for people who handle front end technologies with average skills who want to transition into server side solutions to achieve a full stack developer status that let's them take on bigger projects and not just pure front end. I think Processwire is a killer weapon for that type of developer because of all the heavy lifting from Processwire without compromising flexibility, makes it really friendly who people who already know the basics of coding and probably has experience with javascript. So after explaining a bit where I stand, I had this ideas for tutorials series: - How to make a one page website with Processwire. - Portfolio from scratch with Processwire. (here goes my blog!) - How to make your comic book website with Processwire. I think this kind of "generic" type of tutorial, will attract people starting with frontend technologies and middle to advance users will get the grasp of how things work in Processwire and just dive into it. So, that's why I'm making all this noise about the live coding and stuff haha, I just think Processwire needs more media out there that shows solutions for practical problems that learning web developer's could be potentially searching for. Sorry if the conversation drifted away, just wanted to expose my goals. What do you guys think?
    1 point
  38. Thanks for pointing me to the Translator. That definitively answers my question. I like the idea of @Can to use _init.php for language strings. I'll try that out.
    1 point
  39. I know the topic regarding a forum solution has popped up a few times, and I understand that existing solutions are often better suited. However, I just love PW and wanted to have a go at creating a forum module, as I'm becoming more familiar with how PW works. My plan was never to create a forum like this one, but rather a forum that could utilise the power of PW to handle membership, permissions, which in turn would save a lot of time. Basically a functional forum that isn't bloated and doesn't get in the way of the front-end design. Nothing too fancy, but something that has the expected features. I also wanted it to use the same principle so that it can be used to add comments to other pages etc. At present, the forum has potential, but obviously one of the main issues is the amount of installed fields, but custom Fieldtypes are beyond me at the moment. I like the idea that everything is a page as it makes it easy to deal with, but I'm always open to criticism and suggestions. I'd love others to get involved with this as I can see it as a useful addition, but I understand that people don't always have the time. So maybe I will keep tinkering with it and keep the updates coming here, but if others are interested in joining in, we can take it from there. Again thanks for your comments and encouragement as it means a lot. Yeah, I've been watching Flarum since it was announced and it's looking great. I'd just prefer a PW alternative though, just to keep everything feeling the same.
    1 point
  40. What I usually do is adding extra fields to system language pages like language code, locale, etc on multilang sites. This way there is no ambiguity on such things.
    1 point
  41. John, welcome to ProcessWire, and to the forums. As said already, great intro. I find it fascinating that you've gone from one end of the spectrum to the other. You just don't see that often. That said, with your confidence (and seemingly good general knowledge regarding this end of the spectrum), you'll do just fine. And, of course, we'll all be willing to help you whenever you need it. So welcome, and enjoy the ride. (Hmm, so I'm busy thinking about this electric sign for PW - imagination running wild... )
    1 point
  42. Welcome John! Indeed great intro! As Adrian stated, here is full of really helpful folks if you show the right attitude. Get ready, you are about to experience blissful webdev, best luck on your new career!
    1 point
  43. Welcome to ProcessWire and the forums John! Loved your intro!
    1 point
  44. Welcome John, We're a pretty friendly bunch around here. As long as you're willing to learn, you'll get plenty of help! I am certain you'll find PW a huge relief after the pains of WP!
    1 point
  45. Can is mostly right. _x is one of the tags that indicates a translatable string, which you can then translate via PW admin. The _x means that it is a context sensitive string. Read all about it here http://processwire.com/api/multi-language-support/code-i18n/#context It should output the language code for the current user language. If you're doing multilang sites it's wise to study all of the docs linked above.
    1 point
  46. Hello again, I'm just a beginner with regex. I had found the code via Google. The "$1" part seemed a bit strange to me (in this case). It normally corresponds to the first "capturing group" (that you sometimes/always? put between parenthesis). Perhaps a slash was needed before en or se(?). "- Will also redirect any URL that starts with letters "en" on "se" in the default language, for example "/enigma" or "/second"." This seems normal as .* = .{0,} = match any char zero or more times, and there is no slash after en or se. You normally need a slash before (.*), in your case. You could use (en|se) also apparently or [a-z]{2} (Limits to 2 characters. With or without parenthesis, it depends on the case). You can test regex codes at https://regex101.com/, http://regexr.com/ or elsewhere. There is also, for instance, http://regex.learncodethehardway.org/book/. I don't remember if I finished reading everything. I'll probably have to start all over again (one day).
    1 point
  47. Has been discussed before, simplecart is a client side shopping cart and is there for not recommended ! It is easy to change the payment providers and change prices of simpleCart(js) items before checkout. This is a known security flaw that exists with ALL javascript shopping carts. Anything using client side scripting will end up being hacked. You will have to add the help of a server side system to verify the order's content from malicious manipulation and pass it to any payment processing party, or simply send it by email. This way of working should be avoided. Just google simplecart.js
    1 point
  48. Thanks, Hani. PHP 5.5 dropped JSON support due to the developer's aesotheric license. But those of us who are not yet at the front line are fine
    1 point
  49. Hani, ProcessWire will scale pretty infinitely in terms of pages, but not in terms of fields or templates. The same can be said of databases in general–you can have millions of rows in a table, but probably don't want millions of tables. I would say you've gone beyond what may be practical for long term use and maintenance of the site. At least, I have never tested ProcessWire with any more than 200 fields (and I thought that was an insane amount). I would be curious why so many fields are necessary? It might be good for us to get a list of all the fields, which may lead to some good suggestions on alternatives. But this is a situation where I think you might really benefit from making your own Fieldtype and Inputfield combinations. It is surprisingly simple to do, and can represent any DB table, no matter how many columns it needs. There is far less overhead in having a custom Fieldtype that represents a table with 100 columns, than there is in having 100 separate fields. Have a look at Adrian's new FieldtypePhone/InputfieldPhone module for a good example of how to represent a DB table with a Fieldtype. Some other options I can think of relate to ProFields, a pack of modules I've been working on to release soon (probably as commercially supported like FormBuilder and ProCache). It includes FieldtypeMultipler, FieldtypeTable, FieldtypeTextArray and FieldtypeTextareas, among others. These enable you to have a single field that can to represent any quantity of inputs. Though they all do it in a little bit different ways. FieldtypeMultiplier lets you take any other Fieldtype (that isn't already multi-value) and turn it into a multi-value field. FieldtypeTable is a multi-value compound type that lets you keep a user-defined combination of fields contained in a group… not quite as powerful as a repeater, but it's only 1 field and has far less overhead. FieldtypeTextArray lets you have a defined quantity of inputs for any text field… like say you needed a field to represent 3 email addresses, for instance. Lastly, FieldtypeTextareas lets you have 1 field that can represent any number of named textareas while having them all be searchable from the same field. For example, you could have a single field called "content" that contains separate inputs for body, sidebar, summary and about_the_author or something like that, but they only consume 1 field, accessed via $page->content->body, $page->content->sidebar, etc. All of these Fieldtypes/Inputfields are aimed at really reducing the overall quantity of fields necessary to represent lots of data. I developed this set because I had a site with lots of similar fields, and this group of modules helped me to reduce the quantity of fields by more than 70%. However, these aren't ready for production use, so it may be a little while before I have them ready. But if you'd be interested in helping to beta test them, your use case might be about perfect.
    1 point
  50. Hi and welcome not sure if this is what you looking for: http://processwire.com/talk/index.php/topic,171.0.html
    1 point
×
×
  • Create New...