-
Posts
1,070 -
Joined
-
Last visited
-
Days Won
16
Everything posted by dotnetic
-
The big catch is, that no HTML is generated but structured data and you only have to define your elements once and can reuse them as often as you like in one field, without modifying the template or adding new fields to ProcessWire. You can move things around and render the different elements like an image for example, however you want it. Output it as a picture element, put some divs around it, etc. Or render a heading of level two as a heading level 3 instead. This is not possible if you only have HTML.
-
This is awesome. Have to test it in production. Thank you
- 37 replies
-
- 2
-
- image
- lazy loading
-
(and 2 more)
Tagged with:
-
Using Processwire to generate Digital Reports
dotnetic replied to Adam CS's topic in Getting Started
I think I can also lead you in the right direction. I think it's possible, if I understood you right. You can get all fields of a template and render them in a module, if you want to. And so you can with multiple templates. Do you want to do the output on the frontend or in the admin? Maybe I find the time in the next 2 days to give a more detailed answer. What do you mean with that? What you mean with modules? ProcessWire modules or just a modular approach? -
Using Processwire to generate Digital Reports
dotnetic replied to Adam CS's topic in Getting Started
You can achieve what you want with ProFields: Table. It is excactly what I did for a customer portal: You can add as many items as you want, and define the type of each field of a row. For example the field "Eigenschaft" is a FieldtypePage, which pulls it options from a list, that my customer can manage himself. Additionally one requirement was, that when one item was already selected, then it should not be selectable in the other rows. I wrote a blog post how to do this: https://dotnetic.de/blog/disable-options-in-select-elements-that-are-already-selected-in-another-select-element/ -
Shut up and take my money. I also thought a long time about making a fieldtype with editor.js, because it is just awesome to store contents as structured data. Prosemirror is an alternative, which works similar and is used in Statamic for its Bard field (which is also awesome). Is there any release date yet?
-
Thanks @horst for this tutorial, which is very good for new users. I also updated the link in the README of the german language pack: https://github.com/jmartsch/pw-lang-de/blob/master/README.md
- 16 replies
-
- 1
-
- tutorial
- default language
-
(and 4 more)
Tagged with:
-
You won't regret it!
-
Till which step did you get? Is the setup completed? Did the error occur within the setup?
-
Your are welcome. I don't think that this should be in the module repository, as it is for a very special case. And If users or search engines guess your preview variable, they are able to see/index your content, which is not yet to be meant to be read, hence the unpublished status.
-
The first selectors would not return unpublished pages. You have to use $pages->find('your-selector, include=unpublished') or include=all instead. The $pages->get() method already includes hidden and unpublished results, as you are explictly requesting pages. Regarding your problem: You want to hook the ProcessPageView::pageNotFound method and modify the output. I made a little proof-of-work module for you. It is a combination of the hooks for pageNotFound and Page::viewable. Maybe there could be a better and easier solution. Install the attached module to test it out. previewOption.module.php
-
If you iterate through the results of pages and use the page object in that iteration (for example if you want to get the value of a field), then the whole page would be loaded into memory, which is very slow if you have many pages. This could also lead to out of memory errors. I experienced this, before I found @bernhards solution RockFinder2 which is really great. There are some discussions about the performance here in the forums.
-
Use Process Wire CMS on one page not entire website?
dotnetic replied to shogun's topic in Getting Started
There is not only the possibility to use ProcessWire in a subdirectory and for one page only. You can also use ProcessWire content in other pages, that are not being served by ProcessWire. This process is called bootstrapping and others here already wrote about this. You can find more information in "Including and bootstrapping ProcessWire" -
Did that. New README with updated instructions is live
-
@bernhard Yes, I was just about to write about it ? I have reconsidered my statement, reviewed the procedure, and revoke the statement that it is bad practive. In my project there were some problems with languages at that time, but I can no longer reproduce them. I see no problems with the procedure described by Horst.
-
@horst's tutorial should be a sticky post in the forum.
-
What you mean by connects with the internet? Do you require some external resources for example webfonts, a Js or other library from a CDN, etc. in your template?
-
German language pack (de_DE) with formal salutation
dotnetic replied to dotnetic's topic in ProcessWire Language Packs
Done -
German language pack (de_DE) with formal salutation
dotnetic replied to dotnetic's topic in ProcessWire Language Packs
@gebeer @bernhard Here you go ? https://github.com/jmartsch/pw-lang-de/releases/tag/3.0.148 -
German language pack (de_DE) with formal salutation
dotnetic replied to dotnetic's topic in ProcessWire Language Packs
Hello @gebeer, yes, I still maintain it, but had little time in the past. The last version was for PW stable 3.0.128. Right now PW stable is at version 3.0.148. I try to have a look at it in the next days and update it, if applicable. -
There is also a config setting for the adminRootPageID, but I would not recommend to change it, as a config comment states: "Values in this section are not meant to be changed". And some modules even use this setting, to find a subpage, for example PageLister Pro, which then would not work as expected anymore: $admin = $this->wire('pages')->get($this->wire('config')->adminRootPageID); $parent = $admin->child('name=page, include=all');