Vineet Sawant Posted March 30, 2015 Share Posted March 30, 2015 (edited) Hello, I've a requirement where I need to have a list of pages using same template available on a page (site settings page) through page field. Basically what I need is, whenever a new page of specified template has been created, it should be automatically added to that pages list, just like home page has children. For example, I've a template called article. Articles are posted under /blog/ page. I've a site settings page which has a page field called articles_list which I use to manage articles list on some other page. This way I can manually chose what articles I want to show and in which sorting order. There's no specific sorting logic to this. So what I need is, whenever a new article is posted, it should automatically be appended on that articles_list page field so the site moderator can manually change the sorting without having to add page himself and then select the sorting. I've this weird requirement cause the site moderator can't see which new article has been added to the blog, he's just allowed to set the sorting. I hope I've clarified the requirement. I think I can use admin custom pages but it for some reason never worked for me. Thank. P.S. Forgot to mention that to add post or any other related task, I'm not using front-end, it's all through PW's admin panel. Edited March 30, 2015 by Vineet Sawant Link to comment Share on other sites More sharing options...
LostKobrakai Posted March 30, 2015 Share Posted March 30, 2015 Have a look at this: https://processwire-recipes.com/recipes/extending-page-save-process/. With such a module you can check if the saved page is of your special template and if if has an id (already in the database). If so add it to your pagefield. Link to comment Share on other sites More sharing options...
mr-fan Posted March 30, 2015 Share Posted March 30, 2015 (edited) Edit: Get it wrong i thought you think about the user interaction....sorry for that You could even use a custom pagetree - should be possible to create a PageArray and run this with the original pagetree and AdminCustomTables example code from the imageoverview (CutomAdminPage Template): <?php // Imageoverview Custom Admin Page ?> <style type="text/css" media="screen"> /** * larget magnific popup */ .mfp-iframe-holder .mfp-content { max-width: 1200px!important; } </style> <script type="text/javascript"> $(document).ajaxComplete(function() { //add trigger class and modal setup $('.PageListActionEdit a').each(function(){ $(this).addClass("lb-edit").attr("href",$(this).attr('href')+"&modal=1"); }); $('.PageListActionNew a').each(function(){ $(this).addClass("lb-edit").attr("href",$(this).attr('href')+"&modal=1"); }); //setup lightbox $('.lb-edit').magnificPopup({ type: 'iframe', disableOn: 0 }); }); </script> <?php //get Magnific css and js $this->modules->get('JqueryMagnific'); //render PageListtree with setting the parent page $formImages = $this->modules->get('InputfieldForm'); // prep the form $wrapperImages = new InputfieldWrapper; // a wrapper $wrapperImages->attr('value', '<h2>Bilder</h2>'); $i = $this->modules->get('ProcessPageList'); // get the pagelist process $i->set('id', 1015); // setting the parent page $pageTreeImages = new InputfieldMarkup; // the placeholder $pageTreeImages->value = $i->execute(); // fill the InputfieldMarkup form field... $wrapperImages->add($pageTreeImages); // put inside the wrapper... $formImages->append($wrapperImages); // append the wrapper echo $formImages->render(); And as result i've a adminpage just with the imagetree and on click editing with modal view... or take a look at a example module from soma: https://processwire.com/talk/topic/1272-new-page-nav-in-admin/#entry11276 regards mr-fan Edited March 30, 2015 by mr-fan 1 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now