RockFinder2 is the successor to RockFinder v1 and while the changes might not look that big on first sight they are quite huge behind the scenes. In RockFinder1 I used some kind of custom query builder because I didn't know of PW's built in one (see later). RockFinder2 will exist besides RockFinder1 because I have several projects relying on RockFinder1, but for any future projects you should definitely use RockFinder2.
Admin helper modules are those that provide helpful tools, UI enhancements or optimizations to the admin panel (excluding Fieldtype or Inputfield modules).
Close to stable, but users are advised to be cautious and test thoroughly.*
|Date Added||April 23, 2020|
This module's files should be placed in /site/modules/RockFinder2/
How to install or uninstall modules
ProcessWire module, successor of RockFinder
Sorry for this readme! It is really not more then notes to myself. I hope I can provide a proper readme one day :)
$f = new RockFinder2(); $f->find('template=admin'); $f->addColumns(['title']); db($f);
It is really easy to create custom column types that can retrieve any data from the PW database. See this commit for two simple examples: https://github.com/BernhardBaumrock/RockFinder2/commit/54476a24c78ae4d3b6d00f8adfb2c8cd9d764b9d
If the fieldtype is of broader interest please consider making a PR. If you are the only one needing it add the type via hook.
Adding a custom column type is as simple as this:
$f = new RockFinder2(); $f->find('template=basic-page, include=all'); $f->addColumns(['title', 'options']); $f->query->select("opt.value AS `options.value`"); $f->query->leftjoin("fieldtype_options AS opt ON opt.option_id = _field_options.data"); db($f->getData()->data);
Dumping the query object will be really helpful on such tasks!
You can also replace the field's value instead of adding it to the result:
$f = new RockFinder2(); $f->find('template=basic-page, include=all'); $f->addColumns(['title', 'options']); $select = $f->query->select; unset($select); $f->query->set('select', $select); $f->query->select("opt.value AS `options`"); $f->query->leftjoin("fieldtype_options AS opt ON opt.option_id = _field_options.data"); db($f->query); db($f->getData()->data);
- Admin Helpers
- Core Modules
- Development Tools
- Field Types
- Input Fields
- Language Modules
- Language Packs
- Markup Generation
- Premium Modules
- Process Modules
- Proof of Concept
- Site Profiles
- Social, Feeds, Services
- Text Formatters
- Other Modules
- Users and Access
*Use modules at your own risk. There are no guarantees or warranties. It is recommended that you backup your site and database before installing new modules.