-
Posts
7,484 -
Joined
-
Last visited
-
Days Won
147
Everything posted by kongondo
-
I can tell from your screen grab that the audio media 2212 is unpublished (the crossed eye icon). Unpublished media cannot be added to a Media Manager field, hence why insert media button doesn't do anything. In the upcoming version of MM, you will get a meaningful message/error if you try to add unpublished media to an MM field. Oops, my bad, sorry. Image media would have returned a Pagefiles but audio media should return a Pagefile. So, no need for inner foreach. $media = $pages->find('template=media-manager-audio, include=all, limit=10'); // $media is a PageArray foreach ($media as $m) { // media_manager_image is a Pagefiles but media_manager_audio is a Pagefile // so, no need to loop echo $m->media_manager_audio->url;// url to your audio media } Just a reminder that the above code is for Direct Access. Use it only if you want to access your media directly from your Media Library without having to add them to any page (i.e., to any MM field). In this case, you do not need the MM media field in your prekenarchief template. Alternatively, to interact with a MM field, use the code in the documentation.
-
Thanks for the purchase ?. Is media a Media Manager field? If it is not, you need to first create and add a Media Manager field to your prekenarchief template. You will then need to add the audio files you want to that field. There will be a link in the Media Manager inputfield to your Media Library. You can then use the code above. This is the most common scenario/usage of Media Manager. You upload media to your Media Manager Library first. You then pick and choose the ones you want to add to a certain page. Finally, you access them using Media Manager API. Alternatively, you can directly access the media in the Media Library from within your template file without first having to add them to a Media Manager field, e.g.: /* @note: the Media Manager template for audio media is 'media-manager-audio' the field with the audio media is 'media_manager_audio' in this case, we use include=all OR check_access = 0 since media pages are access-controlled admin pages */ $media = $pages->find('template=media-manager-audio, include=all, limit=10'); // $media is a PageArray foreach ($media as $m) { // media_manager_image is a Pagefiles so we need to loop through it but.. // media_manager_audio (also document and video) is a Pagefile. No need to loop // example for image media (template = media-manager-image) //foreach ($m->media_manager_image as $image) echo $image->url; // example for audio/document/video media echo $m->media_manager_audio->url; } This is not a common usage, but choose what fits your workflow best.
-
Yes. However, in the current version, this only works from the inputfield/fieldtype side of things, i.e. when adding media (in media manager library) to a media manager field on a page. When accessing the media library directly, one sees all the 4 media types. However, on the dev version that I'm still working on (it has taken a while I know, but I'd rather get it right than hurry it through since it is a major release), one can control the 'global' visibility of media types as well as at the inputfield/fieldtype level. I'm not sure when the dev version will be ready though. I thought it would have been ready by now but that didn't happen, so, no more ETAs I'm afraid.
-
Aah, we've got it nailed down at last! The issue, as per the error message and a bit of Googling, is an ImageMagick bug/issue. There are several solutions out there. ImageMagick is a very good library. Before giving up on it, ask your hoster (if you don't have access yourself) to resolve the issue given that there are several solutions out there. Some resolutions simply involve recompiling the library. Here are a few examples of the 'bug': https://stackoverflow.com/questions/9586048/imagemagick-no-decode-delegate https://www.imagemagick.org/discourse-server/viewtopic.php?t=12366 https://stackoverflow.com/questions/37594157/imagemagick-no-decode-delegate-for-this-image-format-error-constitute-c-re http://www.imagemagick.org/discourse-server/viewtopic.php?t=32287
-
Welcome to the forums @OxfordSUOliver If you have access to your files, paste the following temporarily into one of your template files and then visit a page that uses that template: $u = $users->get('sup'); // or whatever your supersuser name is $u->of(false); $u->pass = 'your-new-strong-secret-password'; $u->save(); Remember to delete the above from your template file once done. If you don't know the name of the supersuser, you can check this in your DB tables. See the pages table. Scroll down to user with ID 41 and check the string under the column name. Alternatively, temporarily again, in a template file, do the following: $u = $users->get(41); echo $u->name;// this is the name you want for logging in Note the original ProcessWire Superuser ID is normally 41, unless for some reason your colleague changed it, which would be highly unlikely, although they could have deleted that user having set up an alternative Superuser ?.
-
Thanks for the purchase. Sorry to hear that. The empty file upload result error is only a generic message for when the server returns an error or malformed JSON in response to the ajax upload. We need to get to the exact message returned. In Chrome dev tools (or similar), could you please check the ajax response and let me know the exact error returned? Also let me know the names of the images you are uploading and your server environment, thanks.
-
There's really not much difference to updating a single site. We are talking one wire folder after all. Of course, in the case of a multi-site, any bugs would affect multiple sites. OK, here we go: Backup all your remote sites databases. Get the files as well if doing #2. If possible, replicate your site locally, i.e. replicate your remote server environment locally (PHP version, etc) for testing purposes using the data from #1 If #1 was possible, test the upgrade locally. Look out for any clashes with third-party modules. You might have to clear your caches (PW, browser, etc) and compiled files several times for some changes to take effect. If everything's good and/or resolvable, proceed. Perform the upgrade on the remote server. Choose a time when you know things are a bit quite, if possible. You don't have much control here if the site is always busy. However, if you have shell access to your server, using curl or wget, grab the ProcessWire file and save it directly to your server in some temporary folder. Alternatively, ftp to the temporary folder. The advantage of uploading to a temporary folder is to avoid potential ftp transfer issues. Once you have the wire folder upload complete, rename your existing wire folder, e.g. old-wire and copy over the new wire. Normally this should take a few seconds in a server environment. Test your sites. If everything works, great. If not, determine if it can be quickly resolved and meanwhile put your sites on a maintenance mode (see various approaches in the forums) or in worst case scenario, rename the new (the one you copied over) wire to new-wire and revert old-wire back to wire. You'll then have to decide whether to delete new-wire or try the upgrade again if you know what needs to be resolved. Hope this makes sense.
-
I have never gotten round to adding custom ignore ones. ?
- 242 replies
-
- visual studio code
- vsc
-
(and 2 more)
Tagged with:
-
Moderator Note Following @Jonathan Lahijani's request, the WordPress vs. ProcessWire videos have moved to their own topic here.
-
Bug or expected behaviour? Template & page same name?
kongondo replied to simonsays's topic in General Support
There is no connection between the pages table and the fieldgroups and templates tables. You can name your page identically to a template and there shouldn't be any conflict. However, fieldgroups and templates are twins. Creating a template creates a fieldgroup with the same name. Maybe you already had a template called nav, hence the conflict. Alternatively, you may have had a fieldgroup called nav that was not deleted when a similarly named template was deleted? -
OK, I now get what you are saying. However, I don't want to introduce confusion regarding terms. Custom items are not ProcessWire pages. Also, the include children feature you currently see in the backend is for influencing what happens in the frontend. It's not about including children in the backend. Here again, I don't want users to get confused. There is no default menu in MenuBuilder ?. I get your point though. I'll think about making it possible to select a ProcessWire page and have all its children added to the menu, hierarchically, according to their position in the ProcessWire tree. Please add this as a feature request in the module's project page. As for customising links of ProcessWire pages that are part of a menu, I don't think that's a good idea so I will not be heading in that direction.
-
You are right. The 'Include Children Feature' only works for natural menu items, menu items that are ProcessWire pages. Your BMW (as per my example), are not ProcessWire pages but custom menu items. There is no way to tell what their children are since they are external items. Where would you be getting the 1000 items from? From my understanding, these 1000 items are not ProcessWire pages but external links. Maybe this is the bit I am not understanding. I have a feeling that your 1000 items are also actual pages in ProcessWire (part of the ProcessWire tree) and you want to include only their parent and have the children automatically added. If that's the case, that is not how MenuBuilder works. We currently don't support such a feature.
-
@bud, You can already do all the things you've mentioned. You can add 1 or 2 or 3 or 1000 or whatever number menu items in one go. You can delete them before OR after adding them to the menu. You can reorder items after adding them to the menu (drag and drop). You can nest items after adding them to the menu (drag and drop) You can rename menu item and also change its link (custom items) See this example... Maybe you mean copy and paste custom links rather than entering them one by one? I think with a little JavaScript magic, that can be done.. If I'm still not getting you, you'll have to make a screengrab/video to explain what you are after, I'm afraid.
-
I'm still not sure I follow. Custom menu items are ones you create yourself and are external to your ProcessWire site. E.g. www.google.com, etc. I'm also not sure whether you are talking about the backend or frontend of Menu Builder. There's tons out there. Please Google 'accordion menu' OR (CSS only accordion menu). Once you've found what you like, let us know here and we can help you implement it.
-
Module Module: RuntimeMarkup Fieldtype & Inputfield
kongondo replied to kongondo's topic in Modules/Plugins
OK. I'll have a look. Could you please file it as a request on GitHub? It will help remind me, thanks. -
Hi @bud, Welcome to the forums There is no auto-collapse option. You would have to code that yourself, e.g. using JavaScript. Maybe using the getMenuItems() method is best in this case. I don't understand this question. Please elaborate and/or illustrate I don't understand this question either.
-
Maybe includes some private repos afraid MS might snoop around their code...?
-
Module Module: RuntimeMarkup Fieldtype & Inputfield
kongondo replied to kongondo's topic in Modules/Plugins
Works fine for me here with the dev version, but should also work with the master version (IIRC - sorry, it's been a while since I touched this). Tested in PW 3.0.85. Here's my copy pasted PHP code: // both of these work /*namespace Processwire; return wireRenderFile('runtime-markup-wirerender-test'); */ return ProcessWire\wireRenderFile('runtime-markup-wirerender-test'); The above allows you to have your code inside PHP files. This is the pasted PHP option. It is supported in both front- and back-end. It also allows you to use PHP files, but indirectly. It is not to be confused by the other (currently dev) option of directly rendering PHP files (i.e., just stating name of the PHP file and its path. Are you getting any errors? Tracy? In the template file I echo the field's value like so: echo $page->runtime_markup; -
Is this question directed to me? Welcome to the forums.
-
@MarcoPLY, Moderator Note I would have thought you've been around long enough to know that module related questions need to be posted in their respective support forums, if such do exist ?. I've moved your post to Media Library's support forum.
-
I hope this doesn't happen... if($context == "GitHub" && $owner == "Microsoft") { str_replace("Chromium","Edge", $electron); } Lately, I've been loving Electron...?. I think Atom will be surplus to requirements though. No need for in-house competition with VS Code.
-
https://www.theverge.com/2018/6/3/17422752/microsoft-github-acquisition-rumors What's your take people? My first reaction was literally Nooooooo! Mind, I haven't looked at the details yet, but I feel like it doesn't matter what GitHub's reasons were; this should have been a no, no! I've always considered GitHub as the face of open source. With MS taking over, I feel something sacrosanct has been 'defiled' irreversibly. Anyway, just my subjective 2p. ps: I love and use MS products ?
-
The ID of trash is 7, not 49. Depending on your need, you could do: $untrashedPages = $pages->find("template=some-template, status<" . Page::statusTrash); //$untrashedPages = $pages->find("template=some-template, has_parent!=7"); //$untrashedPages = $pages->find("template=some-template, has_parent!=" . $config->trashPageID); FYI, statusTrash = 8192
-
Private module used in private repos for multiple sites?
kongondo replied to chcs's topic in General Support
A couple of thoughts. How many private sites do you need to auto-update? If only a couple, is automation worth the effort? With automation, there's the potential of 'break one, break them all'. If there's a problem with your code, it will break all you n sites and you might not even know it How many times will you be updating the module, say, per month? Are all your sites on one server or on different servers? Are they running the same versions of L(W)AMP? If you still want to pursue automation, other options you could pursue besides what has already been said. Custom feed with lazy or normal cron. Create an autoload module to periodically check for updates to your module. If updates found, fire code to update the module Mother ship + ProcessWire multi-instance: Have only one of your sites to check for updates OR do it manually since you are the one updating the custom module so you will know if there is an update. If there is an update, in a loop, bootstrap into the other sites using PW multi-instance and update the respective modules. This will only work if the sites are on the same server. Updating a module in PW is not complicated; download a zip file, unzip it, backup the old files, copy over the unzipped files. Done. You can use the $files API for this. Expounding on the mother ship idea, you could create a simple Process module with a button to click to execute the multi-instancing. I am not sure if you have access to $modules API when multi-instancing. If not, all you need is to call some code in the instanced sites to run the update. Written in a hurry, hope it makes sense. -
Module Module: RuntimeMarkup Fieldtype & Inputfield
kongondo replied to kongondo's topic in Modules/Plugins
Yes you can get the value. See the examples in the first page, first post of this topic. However, you cannot use a selector to query the value. Yes, you cannot use a selector to query it, but you can access the value.